ページ

2014年3月24日月曜日

【Linux】写真のEXIF情報を編集する.

私の愛機 E-PM1 は電池を充電する際,電池を取り外さなければならない.

そして,電池を取り外すと機体内部の日時情報がリセットされてしまうので
充電するたびに日時を設定することになる.

少し面倒だが,ネットに接続できないため致し方ない.




しかし,前回充電した際,日時設定で一ヶ月間違えてしまい(時刻は合ってる),
昨日と今日撮った写真の撮影日時が2月23日・2月24日になってしまった.

ファイル名が P223****.jpg,P224****.jpg になってしまうのは
for 文で mv を回せば十分だが,問題はEXIF情報.



しかし,そこはLinuxの本領発揮.EXIF情報をコマンドラインから編集するツールもちゃんとあった.

その名も exiftool

まんまですね.笑


CLIで操作できるならもうこっちのものだ.for 文を使って一気に編集する.

for i in P323*.jpg P324*.jpg
do
    date=$(exiftool -CreateDate ${i} | cut -f 24-25 -d " " |
           sed -e s/2014:02/2014:03/g)
    exiftool -CreateDate="${date}" ${i} 
    exiftool -ModyfiDate="${date}" ${i}
    exiftool -DateTimeOriginal="${date}" ${i}
done

変数 i に該当する画像を全て読み込み,変数 date に EXIF情報 の撮影日時を
一ヶ月先に進めた情報を代入する.

そして exiftool の編集機能を用いて

Create Date
Modify Date
Date/Time Original

の情報を更新する.

デフォルトで上の3つのEXIF情報は同じ日時が保存されていたので全て変更したが,
実際には Date/Time Original のみを編集すれば撮影日時は更新されるようだ.

2014年3月23日日曜日

NHKのラジオ講座を cron と vlc を用いて自動で録音する

基本的に下のサイトを参考にしました.

ShellScript - NHKネットラジオをVLCで録音するスクリプト - Qiita


しかし,シェルを直接実行すると録音できるのに,cron で回すと失敗する.
調べてみると,下の人とまったく同じ症状のようだ.

NHKラジオ英会話を録音するまでの軌跡 Part3 - Jupitris on Laboratory



一時間ぐらい悩み,英語のサイトも色々と調べてみるも解決しない.

そこでふと・・・,「バックグラウンドで実行したらどうなる?」と思いつき早速試してみると



あっさり成功!



では以下,ソースコードです.

まずは実行するシェル.( ${HOME}/bin/english.sh )
#!  /bin/bash

#   録音時間:15分+30秒
TIME=$(( 15 * 60 + 30 ))

#   ディレクトリ,およびファイル名指定
DIR=${HOME}/English
FILE=${DIR}/$(date +%Y-%m%d-%H%M).mp3

#   ディレクトリが存在しなければ作成
if [ ! -e ${DIR} ];then
    mkdir -p ${DIR}
fi

#   ストリーミング先
STREAM="mms://a57.l12993246056.c129932.g.lm.akamaistre
am.net/D/57/129932/v0001/reflector:46056"

#   エンコードの設定
SOUT="#transcode{acodec=mp3}:std{access=file,mux=raw,dst=${FILE}}"

#   録音実行
/usr/bin/cvlc ${STREAM} :sout=${SOUT} --run-time ${TIME} vlc://quit

exit 0


そして,肝心の crontab -e は以下のようにセットする.
15 9 * * 3-5 ${HOME}/bin/english.sh &

なお,実行時間は「実践ビジネス英語」に合わせている.


さらに,これらを Raspberry Pi に実装して,Dropbox-Uploader も使えば
常に最新版がスマホで聞けるようになる.

素晴らしいの一言ですね.

2014年3月17日月曜日

掛け算の順序についての私の意見

掛け算の順序問題と言えば,大抵の人にはわかっていただけると思うが,
小学生のテストの文章題において,

(かけられる数)X(かける数)=(答え)

と正しく(?)立式できていなければ,バツを付ける.という奴だ.



もう少し詳しく言うと例えば,

「1個30円のみかんを5個買った時,その代金はいくらになるか?」

という問題に対して,30 X 5 = 150 は正しいが,5 X 30 = 150 は間違い.
とする日本の教育方針は如何なるものか.という奴だ.



以前から,私なりの意見を持っていたのでこの場を借りて書かせてもらう.
はじめに断っておくと,私は

掛け算の順序はとても大切だ

というスタンスで書くので,すでに気分が悪くなった方はご退出していただいても構わないし,
ふざけるなっ!と思う方はコメント欄に書いてもらって構わない.

ただ願わくは,私がそう思う根拠を読んでからにしていただきたい.
その上で批判されるのであれば私としてもこの記事を書く意義があるというものだ.
(むしろ反対意見こそコメントに残して欲しい)



ちなみに,私は小学生時代「掛け算の順序は大切だ」と習ったし,
それに対して何の疑いを持つことなく今に至っている.ということも併記しておこう.

また,「上司に言われたことを正しくできる人間が求められている」などという
就職活動まで含める謎の主張をするつもりは毛頭ないことも宣言しておく.

では,ここからが私の意見だ.





【理由1】教育上仕方ない

よくtwitterなどで見かけるのはバツが付けられている,ある一問の画像だと思う.

しかし自分の小学生時代の記憶を呼び起こして欲しい.きっとその問題の上や下には

「ボールが3つ入った袋が全部で7個あります.全部でボールはいくつでしょうか.」

とか

「3つの長椅子があります.ひとつの長椅子に4人が座るとき,合計で何人座れるでしょうか.」

のような問題が並んでいたはずだ.


これらの問題に対して,掛け算に順番はありません.どちらでも正しいです.
と小学生に教えてしまうとどうなるだろう.

「なんだ.掛け算て簡単じゃん.出てくる数字をただ順番に掛ければ良いだけだ.」

と安易に考えてしまう生徒が少なからず出てしまうだろう.
そして,もっと複雑な文章問題になったとき,上のような考え方を
していた生徒は間違いなくつまづくだろう.

それこそ教育上の問題があるというものだ.



だからと言って,少なくとも習いたての初期段階では,
小学校のテストはこの程度の問題が並ぶことになるのは仕方がない.

さらに日本には掛け算九九という素晴らしいものがあるため,
これらの計算を間違える生徒はほとんどいない.


するとどうなるか.


教える立場の先生としては,生徒が本当に文章題を理解して,掛け算をしているのか,
ただ機械的に出てくる数字を掛け算しているのか
なんて判断することはできない.

恐らく日本の教育が現在の形になったのもこういう背景からだと推察される.



もっとも,これはテストにひと工夫加えるとか,教え方を変えるとかすれば
どうにかできるかもしれない問題なので,ある程度の説得力はあるかもしれないが,
これだけの理由で掛け算の順序は絶対だ!と主張するのは乱暴だと思う.

だから,私が本当に主張したいのは次の理由2の方だ.





【理由2】数学や物理において慣例は大切

突然だが問題だ.直線:y = ax + b の傾きとy切片はいくつでしょう.


さて,どうだろう.多くの人は傾きはaで,y切片はbだと思ったのではないだろうか.

しかし,それは間違いである.

いや,間違いというのは言い過ぎだが,正しいとは限らないというのが本当だ.

なぜなら私は一言も「xが変数だ」とは言っていないからだ.

だから,aが変数で,xが傾き,bがy切片かもしれないし,
もっと捻くれた考え方をすれば,bが変数で,傾きは1,axがy切片かもしれない.



もちろんこれが屁理屈に近いことは十分わかっているが,
掛け算に順序は無いという主張はこれに似ていると私は思う.

つまり,xが変数,aが傾き,bがy切片というのが数学の慣例であり,
掛け算の順序にこだわるのも数学の慣例だ.というのが私の主張だ.

順序を逆にしようが,aを変数にしようが正しいことは正しいが,
決まり事を作っておいた方がわかりやすい.

言うなれば読者と筆者の間の暗黙の了解だ.



もし,直線:y = xa + b という表現が出てきたら,
私は変数と傾きがどちらか分からなくなる.

xが傾きにしろ,aが傾きにしろ,慣例にそぐわない形をしているので,
何か特別な意図があるのだろうか.と疑いながら読み進めるだろう.

読み進めた上で,敢えてxaと書いていた理由がわかれば
「なるほど」と思うだろうが,全くその必要性を感じなければ
「なぜわざわざxaと書いたんだ.」としばらく疑問を持ってしまうし,
もしかするとその理由を探すためにもう一度読みなおす可能性すらある.

逆に,自分が書く立場のとき,敢えて順序にこだわってxaと
書きたいと思っても,「普通はaxと書く」という慣例が存在しなければ,
自分が順序にこだわっていることを読者に伝えるのは一苦労だ.

それぐらい慣例というのは大事だ.

と私は思う.


そして小学生の算数において,この数学の慣例を教育できるのは
掛け算の順序問題が唯一なのではないだろうか.


もちろん,そういう枠にハマった考え方しかできないから云々・・・.
という反論が理解できないこともないが,

恐らく,世の中の99.9%の凡人は枠にハマった考え方をしたままの方が
上手くやっていけることが多いと思うし,残りの枠にとらわれない0.1%の天才は,
どうせこんな教育の枠にさえ囚われないだろう.

(とは言いつつも,私はエジソンは1+1が・・・という話が大嫌いである)

だから,さしあたっては小学生に掛け算の順序は大切だと教える日本の教育に
問題はないだろう.



これが私の主張だ.


まあ,一番の問題は,

多くのの小学校教師がここまで深く考えて教育しているわけではないだろう

ということなのかもしれないが・・・.

2014年3月15日土曜日

Xperia acro HDが壊れた・・・.

つい昨日のこと.

工場見学の集合場所に向かうためGoogle Mapを使っていたら突然画面の上から下に向かってを白と黒の横ストライプが流れだした.

10秒ほどすると元に戻ったが,30分ほどするとまた発生.

これはまずいと思い慌てて,LINEのバックアップや,おサイフケータイのスナップショットを撮りDropboxに保存した.

それ以降も横ストライプの頻度が上がり,その時間も徐々に長くなっていき,最終的にはうんともすんとも言わなくなった.(文鎮化)


外出先ということもあり昨夜は諦めて寝てしまったが,朝起きてみたら治っていた!

などということはもちろんなく,今日は外部との通信が完全に閉ざされた状態で8時間ほどかけて名古屋から帰宅.

途中,モバイルSuicaで買い物を試みたが,残念ながら失敗.
(モバイルSuicaは電源が入っていなくても使えるので完全な故障と確認.)

購入したのが昨年の2月なので,1年と1ヶ月ちょっと.



ソ◯ータイマーは優秀だな.おい!



さて困った.スマホが無いと初めての地に赴くのは不可能な体になっているので来週の工場見学までに新しい機種を手に入れなければならない.

しかし,しばらく携帯を購入するつもりがなかったため最近の各社の動向を全く把握していない.



とりま,状況把握からしようと思う.

【現状】

Evo 3D(au)
・一昨年の5月下旬に契約.
・メインの電話として使用中.
・学割なので基本料金は無料.
・現在Wifiのみで運用中.

Xperia acro HD(docomo):故障中
・昨年の2月に契約.
・主に通信とおサイフケータイで使用.
・こちらも学割なので基本料金は無料.
・MVNOで運用中.



さて,次にどのような選択肢があるのか?


まず,acro HDは見捨てる.というのが考えられる.
どうせ学割で基本料無料なので,寝かせても痛くも痒くもない.
しかし,通信手段が無くなってしまうし,おサイフケータイの残高も
どうにかしなくてはならないので,中古で新しい機種を手に入れることになる.

では,中古でどんな機種を買うか?
いま最もほしい機種はNexus5なのだが,それではおサイフケータイ問題が未解決になってしまう.

では,おサイフケータイが使えて,かつMVNOも使える機種で手頃なものを手に入れるか?

答えはノーだ.中古機種に払う金が勿体ない.

そんな金があったらデジカメのレンズでも買う.

従ってこの選択肢は消える.



そこで次に考えられる方法が,壊れたacro HDを修理に出すこと.
この方法ならば,おサイフケータイの残高をどうするかという問題も発生しない.
しかし,修理代が一体いくらになるのか検討が付かない.

仮に1万円を超えるようなことがあれば,もはや解約手数料を超えているので,
いっそのことMNPしてしまうという選択肢が浮上する.


そして多分一万円なんて軽く超えるので,MNP >> 修理という式が成り立つ.


ではどこにMNPするか?

auでおサイフケータイ機能が付いているものにすれば
おサイフケータイの問題は解消するが,今度はMVNOが使えない.

だったらいっそ,e-mobileにMNPしてNexus5を手に入れるか?

本当は6月にauからMNPして,arco HD(おサイフ専用)+ Nexus5という構想だったが,
さっさとNexus5を手に入れ,6月になったらauからdocomoにMNPして
その時におサイフケータイが使えるものを選択する.

三ヶ月間おサイフケータイを使うことを諦めれば,後から残高を引き継げば良い.

修理に出すよりはずっと効果的な方法のような気がする.





正直,acro HDはスペック的に限界を感じていたし,修理してもまた壊れる可能性がある.(タイマーの優秀さはよく知っている)

しかし,e-mobileに乗り換えるとなると,先日契約したばかりのIIJmioを解約することになる.

また三ヶ月もの空白の期間をまたいでモバイルSuicaやEdy,nanacoの情報を引き継げるのかがかなり不安だ.


それにしても,就活で忙しい時期にこんなことを考えなければならないなんた本当にやってられない.

ソ◯ーにエントリーしていなくて本当に良かった.



とりあえずは明日ドコモショップに行って相談することにする.


【追記】

翌日,ドコモショップに行って見てもらい事情を詳しく話すと,なんと無料で修理してくれるとのこと!

しかも代替機には色違いのacro HDをくれました.


神対応ですね.

すばらっ!

(多分,一万円とか修理代取るとMNPで他社に逃げられるからこういう対応なんだろうなぁ)

2014年3月6日木曜日

KenkoのクローズアップNo.3を購入.

先日,飲み会の最中にレンズキャップを無くしてしまい,かなりショックだったので
ストラップ付きのレンズキャップを購入した.






最近のAmazonでは激安商品は抱き合わせ商法になっているので,
以前から興味があったレンズ用のフィルターを合わせて買ってみることにした.

NDフィルターとC-PLフィルターで迷ったが,クローズアップできる
代物もあることがわかり,今回はそれを購入することにした.






初のレンズフィルターだったため,取り付ける向きが分からず
2,3分悪戦苦闘してようやく取り付けに成功.

(単純にネジのように充てがって回転させるだけだった)






さっそくその効果を確かめてみた.




フィルター無し




フィルター有り


おわかりいただけただろうか?

そう.あまり変わらないのである.

心なしか,ダンボーくんに近づくことに成功した!


このブログ的には商品のレビューを書くことも少なくないので,
微々たるものかもしれないが少しでも近接できるのは素直に嬉しい.


初めてレンズフィルターに手を出したが,安価でそれなりに効果もあるので,
少し気分を変えたいときなどに付けると良いのかもしれない.
NDフィルターやC-PLフィルターも揃えようと思う.




余談だが,3日前に購入したときは2,015円だったのに
いま見たら1,810円になっている.

以前から時々こういうケースがあるのだが,偶然なのか.
それともシステム的に誰かが購入すると価格の見直しが
されるようになっているのだろうか・・・.

前者だとなんか悔しいので後者であって欲しい.

2014年3月1日土曜日

YouTubeで動画をリピート再生させる方法

YouTubeで音楽を聴くようなことはあまりないのですが,

先日公開されたZ会のCMが気に入ったので作業用BGMにしています.



やり方は非常に簡単で,URLを少し弄るだけ.

youtube.com → youtuberepeat.com

【変更前】

【変更後】

URLを変更してEnterを押せばリピート用の別ページに飛ばされ,即リピート再生が開始される.


それにしても,新海誠監督に佐倉綾音とやなぎなぎとか俺得なCMです.