Raspberry pi SimulRadio(サイマルラジオ)

前回までサイマルラジオCSRA(ListenRadio)とJCBAの動作を確認したので一つのプログラムに纏めてみたいと思います。

基本は同じプログラムなのでボタンの数は増えますがON AIRの部分を少し変更することでいけると思います。

ON AIR(再生中の放送局表示)はエリアを切り替えること、局数も多いことから必須と考えています。

SimulRadio

ON AIR
前回messageboxには正常に表示するのですがmessageboxから抜ける際Typeerrorが出ていました。どうやらmessagebox.askyesnoが関係しているようです。(loopしている?)
messagebox.showinfoで表示することでエラーを回避することができました。

mpvはurlを実行しています。
JCBAはJCB+3文字をCSRA(ListenRadio)はjp/3+4文字を取り出しています。
改行コード、CSRA(ListenRadio)は3文字(jp/)を削除してそれぞれIDを抽出します。
その値をre.searchでJCBAはファイル(JCB),CSRAはファイル(ListenRadio)を読んでmessageboxに出力しています。

$ ps ax | grep mpv
 1639 ?  Sl  0:01 mpv http://musicbird-hls.leanstream.co/musicbird/JCB001.stream/playlist.m3u8?args=web_03
$ ps ax | grep -oP 'JCB.{0,3}' | grep -v {
JCB001

$ ps ax | grep mpv
 1706 ?  Sl  0:01 mpv http://mtist.as.smartstream.ne.jp/30031/livestream/playlist.m3u8
$ ps ax | grep -oP 'jp/3.{0,4}' | grep -v {
jp/30031


検索は最初にJCBAを実行しています。結果が空のときはCSRA(ListenRadio)で検索し直します。
それも空のとき(CSRA(直)やNHKなど)はurlを取得します。


再生開始はCSRA(直)mms://が早いですね。
http(https)はubuntuコンテナで10秒前後かかっています。
RaspberryPi3はもう少し早い
現在のウィンドウは10局表示しています。20局位までにしておくと選局しやすいかな


Area Editボタンは表示中のエリアファイルを編集します。
ID EditボタンはIDファイルJCB(JCBA)ファイル、ListenRadio(CSRA)ファイルを編集します。
選択はmessagebox.askyesnoで簡易に済ませています。
エディタは使いやすいものに変更するといいでしょう。


radiko再生中
killall.shは共通で使っているのでSimul RadioからRadikoまた逆もOKです。
stopボタンはradikoも停止します。


favorite(お気に入り)ボタンは自由に使えます。
エリアリストの中から気に入った局をコピーして再登録します。
mpvは動画を再生できるのでyoutubeのurlをラジオリスト同様に登録しておけば気に入ってる動画を再生することもできます。依存で入ったyoutube-dlは削除して最新のyoutube-dlをインストールする必要があります。

see https://rg3.github.io/youtube-dl/download.html

$ sudo apt remove youtube-dl
$ sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
$ sudo chmod a+rx /usr/local/bin/youtube-dl
youtube-dlは定期的にアップデート
$ sudo youtube-dl -U


再生開始はキャッシュを取得するため多少時間がかかることがあります。

simul.py Station List

内容は無保証です。間違いなどがあれば勝手にバンバンしてください。
リストは220局くらいあると思います。
参考 simul.py

Station List
CSRA
JCBA
NHK

ID List
ListenRadio
JCB


ディレクトリ、ファイルの構成はこんな感じ
pythonプログラムなどは~/bin


ubuntuコンテナで作成したpythonファイル、リストをRaspberriPi3にコピー
音量、音質はラジオ局によって違います。
音量はかなり低めの局もあれば高すぎる局もあります。Suzuka Voice FMはバリバリレッドゾーンに入っていますね。当サイトの環境では歪んでいます。(場所柄難聴ラジオかな?)
時間外などはmusicbirdやj-wave配信の共通番組を流しているところも多いようです。