Loftal Insider's Blog

Loftalの中の人のブログらしいです。

Raspberry Pi (Raspbian Jessie)でRadiko録音

ラジオ好きな自分にとって今や欠かせないアイテムとなっているRaspberry Pi。Radiko録音用サーバとしてバリバリ稼働中です。いつもありがとう。

そんなRaspberry Piですが、調子が悪くなったため新しいmicroSDにOSを入れ直すことにしました。すぐに終わるかと思いきや、思ったより時間を取られてしまったのでメモがてら色々書いておきます。

環境

  • 本体: Raspberry Pi Model B+
  • OS: Raspbian Jessie (2016年4月現在最新ver)

(本体は1です。今や3まで出ているというのに……。でもRadiko録音程度なら1で十分かと。)

必要なものをインストール

まず初めにRadiko録音に必要なツールをインストールします。

以下を参考にコマンドを実行してみました。
qiita.com

sudo apt-get install rtmpdump swftools libxml2-utils ffmpeg

……が、これが動きません!
どうやら原因はffmpegDebian Jessieではapt-getでffmpegをインストールできないみたいです。(以前はそんなことなかったはずですが。)

とりあえず他のものだけインストールしておきます。

sudo apt-get install rtmpdump
sudo apt-get install swftools
sudo apt-get install libxml2-utils

特に意味はないですが一つずつ。丁寧に。ゆっくりと。子猫を撫でるように。

次に、以下を参考にffmpegのインストールを試みました。
d.hatena.ne.jp
……が、いつまで経っても終わりません。途中から画面も動かなくなりやむなく断念。別の方法を探すことにしました。(Rapberry Pi 1では非力過ぎたのでしょうか?)

しかし「Raspberry Pi Radiko録音」等で検索してもffmpegを利用したものばかり。「Raspberry PiでRadiko録音」の需要はあまりないんでしょうかね。。

最終的に、以下に辿り着きました。
superuser.com
3つの方法が書かれていますが、一番お手軽そうなavconvをインストールすることに。要はffmpegDebian公式にサポートされていないので同じようなことができる別のソフトavconvを入れてみよう、ということです。

sudo apt-get install libav-tools

一瞬で終了!!!今までの苦労は何だったんだ、というくらいあっけなく完了しました。

ということでこれで無事Radiko録音に必要なソフトがインストールできました。(まぁ実際録音だけならffmpegもavconvも必要ないんですけどね。mp3等へ変換するためのソフトなので。)

Radiko録音スクリプト

後は多くの方々が公開しているスクリプトに多大なる敬意を払いつつ拝借するだけです。一点だけ「ffmpeg」の部分を「avconv」に変える必要があるので注意してください。

自分用に少しカスタマイズしたスクリプトですが、一応載せておきます。
簡易Radiko録音スクリプト · GitHub
カスタマイズポイントは以下の通り。

  • ffmpegをavconvに変更
  • 連続録音対応(1:00-3:00, 3:00-4:00のように連続して番組を録音しようとするとうまくいかなかったので、これで大丈夫なはず。)

使い方は、以下のような感じです。

./rec_radiko.sh TBS 60 dirname prefix

実行すると、TBSラジオを120分録音して /dirname に prefix_YYYYMMDD.mp3 が保存されます。(予めmkdir dirnameで適当なディレクトリを作成しておいてください。)

以下のようにcronに登録しておけば毎週決まった時間に自動録音することができます。

0 1 * * 2 /home/pi/rec_radiko.sh TBS 120 radio 深夜の馬鹿力
0 1 * * 3 /home/pi/rec_radiko.sh TBS 120 radio 爆笑問題カーボーイ
0 1 * * 4 /home/pi/rec_radiko.sh TBS 120 radio 不毛な議論
0 1 * * 5 /home/pi/rec_radiko.sh TBS 120 radio メガネびいき
0 1 * * 6 /home/pi/rec_radiko.sh TBS 120 radio バナナムーン
0 1 * * 0 /home/pi/rec_radiko.sh TBS 120 radio コント太郎

連続した番組録音も可能です。

0 3 * * 0 /home/pi/rec_radiko.sh TBS 60 radio 東京ポッド許可局
0 4 * * 0 /home/pi/rec_radiko.sh TBS 60 radio デブッタンテ

それでは、快適なラジオLifeを楽しみましょう!