2022年1月3日月曜日

raspberry pi 4 で radiko を録音してローカル RSS でスマホに Podcast として同期する

JUNK 爆笑問題カーボーイ の Podcast 配信サービスが終わったので、代替手段のメモ。
raspberry pi 4 で、radiko (タイムフリー、2022/01/03 現在無償) を録音して、ローカル RSS でスマホに配信するようにしました。

1. radiko を録音するために rec_radiko_ts をインストール

rec_radiko_ts に必要なパッケージをインストール

# apt install curl ffmpeg libxml2

rec_radiko_ts を git clone

$ git clone https://github.com/uru2/rec_radiko_ts
$ cd rec_radiko_ts
$ sudo cp rec_radiko_ts.sh /usr/local/bin/
$ sudo chmod 755 /usr/local/bin/rec_radiko_ts.sh

2. rec_radiko_ts.sh の動作確認

2021/12/29 01:00-03:00 の放送をタイムフリーで録音する場合の例。
radiko プレミアムに入っている場合は、-m "mail address" -p "password" オプションを追加すると良い。
-s オプションで放送局 ID を指定。うちは福岡なので、RKB です。
放送局 ID は、下記サイトを参照。
https://www.norikistudio.com/station-id-list

$ /usr/local/bin/rec_radiko_ts.sh -s RKB -f 202112290100 -d 120 -o 20211229-JUNK_bakusho.m4a

3. HTTP サーバは、lighttpd をインストール

HTTP サーバは何でもいいんですが、とりあえず、lighttpd を選択。

# apt install lighttpd

4. RSS の設定

RSS は、下記サイトから、makepodcast.rb を使わせてもらいました。
指定ディレクトリ内のmp3ファイルから必要最低限のPodcast用RSSを生成する
lighttpd の document root である /var/www/html/radiko/ に保存。
あと、ruby をインストール。

# apt install ruby

5. 自動ダウンロード設定、RSS フィード更新 (cron)

JUNK 爆笑問題カーボーイ は、毎週火曜日 25:00-27:00 (水曜日 1:00-3:00) の放送なので、
毎週水曜日の 4:00 に録音。5:00 に RSS フィードを更新するように cron を設定。
ちなみに、raspberry pi 4 の IP は、192.168.10.100 固定になってます。
将来的には、古いファイルを自動で消すようにするかな。

# crontab -e
(下記を追加)
00 04 * * 3 /usr/local/bin/rec_radiko_ts.sh -s RKB -f "`date +\%Y\%m\%d`0100" -d 120 -o "/var/www/html/radiko/`date +\%Y\%m\%d`-JUNK_bakusho.m4a"
30 05 * * 3 (cd /var/www/html/radiko/ ; ./makepodcast.rb JUNK_bakusho http://192.168.10.100/radiko/ ./ >| ./JUNK_bakusho.rss)

6. スマホの Podcast アプリに RSS を登録する。

スマホの Podcast アプリに RSS を登録すれば、あとは自動で同期できます (アプリの方は適当に設定してください)。

http://192.168.10.100/radiko/JUNK_bakusho.rss

■ 注意

録音したデータをインターネットで配信とかしたら著作権法違反になるので、個人利用の範囲で楽しみましょう。

● raspberry pi 4, radiko, 録音, タイムフリー, RSS, Podcast, ポッドキャスト, ローカル

0 件のコメント: