ラジオの録音は rec_radiko.sh を使用し、グーグルドライブに保存していました。しかし2020年12月頃より、Flashの関係で録音ができなくなりました。
そこで、新たに登場したスクリプトを使い、ラジオの録音サーバーを構築、sambaでPCに共有してみます。
#スクリプトについて
- 1. radish
- オンタイムで録音ができるスクリプトです。
らじるらじる、ラジコ、ListenRadio、JCBAインターネットサイマルラジオ、渋谷のラジオに対応しています。 - 2. rec_radiko_ts
- 番組終了後、ラジコのタイムフリーの音声ファイルを落とすことができるスクリプトです。
放送中にずっと、録音させなくて良いので便利です。
※ どちらのスクリプトもラジコのエリアフリーに対応しているようです。
1. radish
導入準備
radish を動かすのに必要なものを入れます。
$ sudo apt-get install curl
$ sudo apt-get install libxml2
$ sudo apt-get install jq
$ sudo apt-get install ffmpeg
スクリプトのダウンロード
Githubより radish をダウンロードします。
$ git clone https://github.com/uru2/radish.git
この時点では、/home/pi/radish にスクリプト(radi.sh)が入っています。
それで、後々やりやすくするために、radi.sh を /home/pi の直下に移動をします。
この操作は、VNCなどを使い、画面で行うのがやりやすいかと思います。
次に、実行の権限を与えます。
$ chmod 755 radi.sh
録音テストと定期実行(cron)設定
録音の試しに・・・
$ /home/pi/radi.sh -t radiko -s TBS -d 1 -o /home/pi/test.m4a
ラジコでTBSのラジオを1分間録音できたはずです。
$ ls で、test.m4a があるかを確認します。
次に定期的に番組のを録音をするために、cronの設定をします。
$ sudo crontab -e
コメントアウトされた文がたくさん出てきます。
一番下の行に、録音したい番組を入力します。
# 入力のしかた
(分)(時間)(日)(月)(曜日) /home/pi/radi.sh -t (録音対象サイト) -s (録音したい局ID) -d (録音時間) -o (保存先パス/ファイル名)_$(date "+\%Y-\%m-\%d").m4a
以下に例を記します。
# 毎週月曜日、朝5:00から、らじるらじるでNHK-FMの番組を50分間録音する
00 05 * * 1 /home/pi/radi.sh -t nhk -s JOAK-FM -d 50 -o /mnt/hdd1/radio/OngaknoIzmi_$(date "+\%Y-\%m-\%d").m4a
次に、cronを使い録音したファイルを、外付けのHDDに保存します。
sambaの設定をご覧ください。
補足
-
(日)(月)など、使わない部分は * とします。
-
曜日は、月曜日を1として、日曜日を7(0も可)となっています。
-
録音したい放送局のIDは、$ ./radi.sh -l で一覧を見ることができます。
なお、渋谷のラジオはIDの指定が不要のようです。 -
録音対象サイトとコードは以下の通りです。
サイト名 | コード |
---|---|
らじるらじる | nhk |
ラジコ | radiko |
ListenRadio | lisradi |
サイマルラジオ | jcba |
渋谷のラジオ | shiburadi |
#2. rec_radiko_ts
導入準備
rec_radiko_ts を動かすのに必要なものを入れます。
なお、radish を導入した方はインストールの必要ありません。
$ sudo apt-get install curl
$ sudo apt-get install libxml2
$ sudo apt-get install ffmpeg
スクリプトのダウンロード
Githubより rec_radiko_ts をダウンロードします。
radish同様、rec_radiko_ts.sh のファイルを /home/pi の直下に移動します。
$ git clone https://github.com/uru2/rec_radiko_ts.git
そして、実行の権限を与えます。
$ chmod 755 rec_radiko_ts.sh
ダウンロードテストと定期実行(cron)設定
試しに・・・
$ /home/pi/rec_radiko_ts.sh -s QRR -f (昨日の年月日)0700 -t (昨日の年月日)0800 -o /home/pi/Nanakyu.m4a
※ 昨日の年月日は、20210101 といった具合です。
これでラジコから、昨日の朝に放送した番組が、ダウンロードできたはずです。
$ ls で、Nanakyu.m4a があるかを確認します。
定期的に番組をタイムフリーからダウンロードするために、cronの設定をします。
$ sudo crontab -e
radish も導入された方は、その下に rec_radiko_ts の入力をします。
# 入力のしかた
(分)(時間)(日)(月)(曜日) /home/pi/rec_radiko_ts.sh -s (録音対象サイト) -f `date +\%Y\%m\%d`(番組開始時間) -t `date +\%Y\%m\%d`(番組終了時間) -o (保存先パス/ファイル名)_$(date "+\%Y-\%m-\%d").m4a
★ この場合の(分)(時間)は、番組終了時間以降に設定する必要があります。
例えば、12:30に番組が終了する→12:31以降にcronで実行可能
では、実際の入力例です。
# 毎週日曜日、ラジコで10:00~11:55放送のTBSのラジオを、12:00にダウンロードしたい。
00 12 * * 7 /home/pi/rec_radiko_ts.sh -s TBS -f `date +\%Y\%m\%d`1000 -t `date +\%Y\%m\%d`1155 -o /mnt/hdd1/recorded/radio/Nichiten_$(date "+\%Y-\%m-\%d").m4a
sambaの設定
録音できたファイルを外付けHDDに保存します。
そして、sambaでMacやWindowsからアクセスできるようにします。
詳しくは、以下の記事をご参考ください。
ohbashunsuke様執筆の、Macとラズパイ間でファイル転送したいのでラズパイをファイルサーバー化する
HyunwookPark様執筆の、Raspberry Piの共有フォルダにWindowsから接続(samba install)
参考サイト
【2020年12月改訂】Raspberry PiでRadikoの自動録音サーバーを作る
【入門】cron(クロン)設定・書き方の基本
おわりに
以前のように、グーグルドライブへ自動保存はできなくなったが、タイムフリーからのダウンロードが可能になったのは便利です。録画サーバーも並行運用している身としては、処理が重くなりにくくするのに役立つと思います。
これらのスクリプトを製作してくださった、uru2様には深く感謝いたします。