BRadiko と Audio Hijack Pro で radiko の自動録音

radiko が聴けるようになって以来、Audio Hijack Pro と Prism という Firefox の特定のサイトを単体アプリケーション化する add-on を使い、ラジオの自動録音を行っていた。Mac での環境だ。
先日 Firefox 4.0 にバージョンアップしたのだが、この結果 Prism が動作しなくなってしまい、自動録音が出来なくなった。Prism は 4.0 に対応する予定はないらしい。仕方なく、Firefox を以前のバージョンに戻した。
Mac ではブラウザで聴く以外に BRadiko というアプリケーションがあるのだが、単体では動作するのに Audio Hijack の Input Application として設定すると Audio Hijack に音声が入らない。これでは使えないと思っていたのだが、どこかで 32bit mode で起動すると上手くいくという記述を見つけ試してみるといけるではないか。BRadiko のページには "OS X 10.5はFlashのため32bitで動作" という記述があるが、うちの OS は 10.6 だし。ちなみに 32bit mode で起動するには、アプリケーションの情報ウィンドウで、"32ビットモードで開く" にチェックを付ける。
BRadiko で自動録音を行う場合、起動時の選局や BRadiko の終了に AppleScript を使うようになっている。これが今回良い方向に働いた。というのは、現在海外から radiko を視聴しており、その実現には interlinkVPN サービスを利用している。しかし、常に VPN 接続をしたくはないので、録音の前後に VPN の接続と切断のための AppleScript を走らせていたのだが、スケジュールの設定も一々別に行わなければならないので非常に煩わしかった。しかし BRadiko の使用に当たり、録音の開始時と終了時に AppleScript が動くタイミングがあるので、ここに VPN の接続/切断を組み込めるのだ。
8行目以降が予め用意されている選局のコードで、その前に VPN を接続して 15秒待つというコードを追加している。

tell application "System Events"
	tell current location of network preferences
		set VPNservice to service "VPN (PPTP)" -- name of the VPN service
		if exists VPNservice then connect VPNservice
	end tell
end tell
delay 15
tell application "BRadiko"
	activate
end tell
delay 2
tell application "BRadiko"
	activate
	set radioStation to "INT"
end tell

-- 	"TBS","QRR","LFR","NSB","INT","FMT","FMJ"

こちらは用意されている訳ではないが、BRadiko を終了するためのコードと、やはり 2秒待って VPN を切断するコードだ。

tell application "BRadiko"
	quit
end tell
delay 2
tell application "System Events"
	tell current location of network preferences
		set VPNservice to service "VPN (PPTP)" -- name of the VPN service
		disconnect VPNservice
	end tell
end tell

 
折角なので Audio Hijack の設定例も解説しておく。

Application に BRadiko を選択。以前参考にさせてもらったこの記事には option を押しながら Select して 「Flash Player (Radiko Internet plug-in)」を選択するとなっている。以前試したときは確かにこれが選択できたのだが、今回これが表示されなかった。しかし結果的には問題なかった。
Open URL/File/AppleScript には上で更新した選局用の AppleScript を選択する。
 

録音のスケジュールを指定。日本との時差があるので時間がわかりにくい上、Summer Time の切り替え時には時間を変更する必要がある。
When timer finishes で やはり上の終了用の AppleScript を指定。これを指定するのだから、Action で Quit Source は意味がないか。
 

ここは、録音ファイルの格納先とファイル名の指定。When recording finishes で Add To iTunes Library (as Bookmarkable) を指定すると iTunes に登録される。
 

ここでは ID3 Tag の内容が指定できる。自分はこのような感じで指定している。
これでようやく Firefox のバージョンアップが可能になる。
 
追記: Mac OS X Lion では、BRadiko と Audio Hijack Pro もそれぞれ単独では動作するが、BRadiko を音声ソースとして、Audio Hijack Pro で取り込めないようだ。恐らく Audio Hijack Pro 側の対応を待つ必要がある。
http://d.hatena.ne.jp/tono-p/20110722