Python3-Tkinter radiko player

pythonボタンでradiko playerを作成してみました。

pythonボタンメニューのプログラムは基本共通なのでラジコスクリプト(関連アプリケーション)とアイコン画像を用意するだけで簡単に作成することができます。

確認はRaspberryPi3とOrangePi3のubuntuコンテナにインストール、確認しています。メインはubuntu-X(vnc)で使用する予定です。

インストール

python環境(python3.5以降, python3-tkなど)はあるものとします。
ubuntuコンテナからはpulseaudioをインストールして再生します。
再生プレーヤーは mpv mplayer ffplay を試してみます。

# apt install pulseaudio
# apt install mpv mplayer swftools libxml2-utils rtmpdump ffmpeg

ラジコスクリプト

当サイトではほとんど再生オンリーなので以前から使用しているスクリプトをそのまま使っています。
radiko.sh (chmod 755)

ラジコスクリプトの再生プレーヤーは168行目前後のコメントを付け替えて切り替えます。
ファイルは~/binに置いています。
各スクリプトは実行権限を付けておきます。(chmod 755)


インストールなど準備が済んだらコマンドラインから実行できることを確認します。
スクリプトメニューは関東圏を記載していますが地域に応じた放送局IDを指定します。
最軽量のプレーヤーはffplayですが安定性、音質などから最良と思われるmpvにしました。
キャッシュ設定にもよりますが以前はmplayerのほうが再生開始は早かったのですが現在はmpvが早くなっています。大体2秒位で開始します。

pythonラジコ

radiko.py (chmod 755)
2重起動を抑止及び停止。使用する可能性のあるプレーヤーを記載
~/bin/killall.sh (chmod 755)

#!/bin/sh
killall -q mpv
killall -q mplayer
killall -q ffplay


アイコンは~/.icons/radioに置いています。


ボタンカラーは# Button colorの以下2行のコメントを外すことで変更可


再生中の放送局はON AIRボタンで確認
Exitボタンはメニューを終了
subprocess.run(“killall.sh”)のコメントを外せば再生を停止して終了
Pi1B,Zeroはpythonの起動、radiko.shに時間がかかると思います。
Pi2以降であればほぼ問題ないでしょう。

次回はサイマルラジオプレーヤーを作成してみたいと思います。