Raspberry Pi なら結構簡単に radiko を録音できるようになるけど、pcDuino の場合、ちょっと余計な手順を踏まなければならないので、覚書として熟々と。
ちなみにうちの pcDuino には、32GB の SD カードに pcduino_ubuntu_mmc_20130531 のイメージを書き込んだものを使用している。
rec_radiko.sh のインストール
Raspberry Pi なら次の手順で実行していけば、rec_radiko.sh で radiko を録音できるようになるけど、pcDuino では swftools がないのでビルドする必要がある。
参考: http://shinyamatsuyama.blogspot.jp/2013/06/raspberrypiradiko.html
$ sudo apt-get install rtmpdump swftools libxml2-utils ffmpeg $ cd ~/bin $ wget https://gist.github.com/raw/3956266/0dc83895770e26a7c37104d896a150c8bb1dffbb/rec_radiko.sh $ chmod +x rec_radiko.sh
rec_radiko.sh の編集
/bin/bash にする必要があったり、ファイル名にコロンが使われていると samba で共有したときにファイル名がちゃんと表示されなかったりするので、少々編集する必要あり。
ffmpeg の代わりに avconv を使うついでに metadata を指定したり、44.1kHz、64kbps で記録するように変更した。
#!/bin/bash : date=`date '+%Y%m%d-%H%M'` : avconv -y -i "/tmp/${channel}_${date}" -acodec libmp3lame -ar 44100 -ab 64k \ -metadata album="Radiko" -metadata genre="ラジオ" \ "${outdir}/${date}_${channel}.mp3"
swftools のビルド・インストール
pcDuino で swftools をビルドして、インストールする手順はこんな感じ。
参考: http://d.hatena.ne.jp/toolkit/20090813/p1
swftools: http://www.swftools.org/
$ sudo apt-get install libfreetype6-dev libgif-dev libjpeg62-dev libt1-5 zlib1g-dev libavifile-0.7-dev libart-2.0-dev $ wget http://www.swftools.org/swftools-0.9.2.tar.gz $ tar zxf swftools-0.9.2 $ cd swftools-0.9.2 $ ./configure $ make $ sudo make install
make install のときに実はエラーが出てくるので、swfs/Makefile を編集して、rm コマンドの行で -o 以降を削除しなければならなかった。
libmp3lame のインストール
いざ録音してみると libmp3lame がないと言われるので、これもインストール。
参考: http://d.hatena.ne.jp/rougeref/20130610/1370859123
$ sudo apt-get install libavcodec-extra-53
rec_radiko.sh で録音
お手本通り、TBS ラジオを 1 分間、録音してみてファイルができれば OK かな。
$ rec_radiko.sh TBS 1 ~/
とりあえず局の一覧はこんな感じらしい。(関東だけ?)
TBS:TBSラジオ QRR:文化放送 LFR:ニッポン放送 1242 NSB:ラジオNIKKEI INT:INTER FM FMT:TOKYO FM FMJ:J-WAVE JORF:ラジオ日本 1422 BAYFM78:bayfm78 NACK5:NACK5 YFM:FMヨコハマ
cron で予約録音
cron の設定方法は適当にググっていただきたい。
$ crontab -e
毎週土曜深夜24:30(日曜の00:30)のモーニング女学院から120分。
毎週日曜深夜24:30(月曜の00:30)のベリーズステーション1422から50分。
録音したファイルを ~/Music にひとまず突っ込んでおく。
30 0 * * 0 /home/ubuntu/bin/rec_radiko.sh JORF 120 /home/ubuntu/Music 30 0 * * 1 /home/ubuntu/bin/rec_radiko.sh JORF 50 /home/ubuntu/Music
minidlna のインストール
録音したファイルを DLNA で共有したいので minidlna をインストールする。
$ sudo apt-get install minidlna
/etc/minidlna.conf の該当箇所をこんな感じで編集。
media_dir=A,/home/ubuntu/Music : friendly_name=pcDuino
これで予約録音した radiko を他の PC や、よく活用している iMito MX1 から再生できるようになった次第。
あと、情報によると、minidlna.conf を編集した後は、/var/lib/minidlna/files.db を削除してから restart したほうがいいんだとか。