〜2011年10月上旬〜
結局UbuntuのFirefoxでの文字化けが解消しなかったので先週解約した。
J:COMでもうお腹いっぱいってのもあるけど。
ナショナル・トレジャーも吹替えやってたし。
まあon demandな点はよかったんだけどねえ。
あとPS3がもうちょっと早ければ。
1500通ほど。若干少なめ。
telnetはさすがにコマンドラインだけで済まないので面倒。要はヘッダが表示されればいいわけで、
% curl -sI t.co/mRJEGu6T HTTP/1.1 301 Moved Permanently Date: Sun, 02 Oct 2011 13:58:42 GMT Server: hi Location: http://bit.ly/pPJzZq Cache-Control: private,max-age=300 Expires: Sun, 02 Oct 2011 14:03:42 GMT Connection: close Content-Type: text/html; charset=UTF-8
みたいな感じでok。ただ、この場合のようにさらにbitlyだったりするので-Lもつけるといい。
% curl -sIL t.co/mRJEGu6T HTTP/1.1 301 Moved Permanently Date: Sun, 02 Oct 2011 13:51:42 GMT Server: hi Location: http://bit.ly/pPJzZq Cache-Control: private,max-age=300 Expires: Sun, 02 Oct 2011 13:56:42 GMT Connection: close Content-Type: text/html; charset=UTF-8 HTTP/1.1 301 Moved Server: nginx Date: Sun, 02 Oct 2011 13:51:44 GMT Content-Type: text/html; charset=utf-8 Connection: keep-alive Set-Cookie: _bit=4e886c70-00289-07cfd-331cf10a;domain=.bit.ly;expires=Fri Mar 30 13:51:44 2012;path=/; HttpOnly Cache-control: private; max-age=90 Location: http://support.microsoft.com/kb/2564553 MIME-Version: 1.0 Content-Length: 131 HTTP/1.1 200 OK Cache-Control: private Content-Length: 125139 Content-Type: text/html; charset=utf-8 Server: Microsoft-IIS/7.5 Set-Cookie: .ASPXANONYMOUS=WVivRJy3zAEkAAAAMDc3ZDcwYjctMWFmYS00OTEzLWE3ZmItYmY3MmY1MmU0ZWMx3vR2Kztmc7Y6MbX41zMkxbV9Z4o1; expires=Sun, 11-Dec-2011 00:31:48 GMT; path=/; HttpOnly X-AspNet-Version: 2.0.50727 X-Powered-By: ASP.NET ServerName: T02 PICS-Label: (pics-1.1 "http://www.icra.org/pics/vocabularyv03/" l r (n 0 s 0 v 0 l 0 oa 0 ob 0 oc 0 od 0 oe 0 of 0 og 0 oh 0 c 0) "http://www.rsac.org/ratingsv01.html" l r (n 0 s 0 v 0 l 0)) Date: Sun, 02 Oct 2011 13:51:47 GMT
最後まで追い続ける。まあ、最後の1個余計ではあるが。最終的には
% curl -sLI t.co/mRJEGu6T | grep Location: | tail -1 Location: http://support.microsoft.com/kb/2564553
でいいんじゃないかと。
znzさんに教えてもらった。予約録音もできるようになったねえ。
% timeout 30m mplayer -playlist http://mfile.akamai.com/129931/live/reflector:46032.asx \ -vo null -ao pcm:waveheader:fast:file=NHK1.wav
これで30分間録音できる。最初始まるまでちょっと時間がかかるので1分前ぐらいに設定したほうがよさそうだ。
あとはwavをファイルにしないでmp3へ変換する方法を考えよう。
killしなくてもqをmplayerへ入力できればいいよなってことで、
% (sleep 60; echo -n q) | mplayer ...
で試してみたら、あっさりうまくいった。これで満足。
>()なんてのがあったよなと思い出した。bashでもzshでもいける。
というわけでまとめると
% (sleep 60;echo -n q) | \ mplayer -playlist http://mfile.akamai.com/129931/live/reflector:46032.asx \ -vo null -ao pcm:waveheader:fast:file=>(ffmpeg -y -i - NHK-R1.mp3)
となる。これで1分後にmplayerはきれいに終了しNHK-R1.mp3ができあがる。
GNU coreutils sleepならmとかhで分時指定可能。
playlistのURLは実はWMP用。
NHK第1 http://mfile.akamai.com/129931/live/reflector:46032.asx NHK第2 http://mfile.akamai.com/129932/live/reflector:46056.asx NHK-FM http://mfile.akamai.com/129933/live/reflector:46051.asx
これは変わるかもしれない。
http://www3.nhk.or.jp/netradio/player/wmp_r1.html http://www3.nhk.or.jp/netradio/player/wmp_r2.html http://www3.nhk.or.jp/netradio/player/wmp_fm.html
のソースから抜き出した。
なんとなくわかった。再生位置が刻々と表示されるが、これがどうにもでかい。
A:612701.2 (170:11:41.2) of 1844674428928.0 (512409556:18:33.6) 0.1% 13%
あまり気にしてなかったが、なんだ170時間て。
なんの数字だかわからないけど、1時間って指定してもこれじゃ意味がない。
ためしに170:13:00とかやってみたらちゃんと-endposが効いた。
しかしこれいくつになるのかわからないから、指定のしようがない。
ffmpegみたいにdurationなら相対だから気にする必要がないんだけどねえ。
やっぱqを渡すしかないか。
先日>()で解決した件だけど、ふつうなら標準出力に出してパイプにするよね(fifoでもいいが)。
ところがmplayerはなぜかいろんな情報を標準エラー出力だけじゃなく標準出力にも出している。
そのため単純に
% ... -ao pcm:waveheader:fast:file=/dev/stdout | ffmpeg -y -i - NHK-R1.mp3
とすると余計なものが混ざってしまい失敗してしまう。
マニュアルを見ると-quietがあるがこれでも残る。
どうしたもんかと思ったら、-really-quietなんてのもあった。これか。
というわけで、
% ... -really-quiet -ao pcm:waveheader:fast:file=/dev/stdout | ffmpeg -y -i - NHK-R1.mp3
でいけた。あと毎回
mplayer: could not connect to socket mplayer: No such file or directory Failed to open LIRC support. You will not be able to use your remote control.
とエラーがでてうざいので~/.mplayer/configにnolirc=yesを追加した。
これで完全に黙らせることに成功した。
crontabに登録するときは黙ってもらったほうがいい。
USB HDDは便利だけど外しちゃうと何が入ってたかわかんないので、いちいちつながないといけない。
というわけでファイル名だけでも一覧があるいいわけだけど、
findしてとっとくのもなんだしlocatedbしてみた。
まず準備としてはmlocateグループに自分を加えておく。なんか最後にmlocateへchgrpするらしいので必要。
% locatedb -U /media/863abe17-48a6-43eb-b392-64f3a04695db -o 863abe17-48a6-43eb-b392-64f3a04695db
のような感じでデータベースを作れば、
% locate -d 863abe17-48a6-43eb-b392-64f3a04695db foo
で検索できる。
まあ、でもfindしといてgrepで十分だよな。
browser.urlbar.trimURLs(http://を隠す)とbrowser.urlbar.formatting.enabled(グレーアウト)をfalseに。
あれってAutoCopyとか使ってるとちゃんとhttp://の部分までコピペできないし、
まったくもって余計なお世話的設定。
なぜかshared=noが効かなかったわけなんだけど、やっと直った。
これによりdiigoからdeliciousへの保存も復活した。
diigoのバックアップとしてしか使ってないので、
まあ現状のdelicious程度であまり不満はない。