「らじるらじる」でNHKラジオを聴く
日本のインターネットラジオ局として、NHKの「らじるらじる」があります。
これを、ラズパイZeroでも聞くことが可能です。ラズパイ Zeroで音を出せ
るようになりましたので、NHKの「らじるらじる」のソフトをインストール
して、NHKラジオ(NHK第1、NHK第2、NHKFM(東京))を聴いたり録音でき
るようにしてみます。
最初に、使用するソフトをインストールします。
pi@corona:~ $ sudo apt-get install rtmpdump mplayer swftools libxml2-utils libav-tools
関連するファイルは、/home/pi/radioにおきますので、/home/pi/radio
を環境変数のPathに追加します。
pi@corona:~ $ mkdir radio
pi@corona:~ $ nano .bashrc
nanoエディタで、.bashrcファイルの最後に、次のような1行を入れます。
export PATH=$PATH:~/radio
次のようにsourceコマンドで、.bashrcの変更を反映します。
pi@corona:~ $ source .bashrc
次にGitHubからスクリプトを入手します。
再生用スクリプト rajiru.sh
https://gist.github.com/oyakodon/88dc89df6483d99278de
記録用スクリプト rec_nhk.sh
https://gist.github.com/matchy2/f03205246e1a12b3b027
スクリプトは、次のように/home/pi/radioにダウンロードします。
pi@corona:~ $ cd radio
pi@corona:~/radio $ wget https://gist.githubusercontent.com/oyakodon/88dc89df6483d99278de/raw/74ad2543687d4be3ffb63b60d8de36a94b97572a/rajiru.sh
pi@corona:~/radio $ wget https://gist.githubusercontent.com/matchy2/f03205246e1a12b3b027/raw/7b0924148e0ea8c501e638fa36effef96e3c7208/rec_nhk.sh
スクリプトの修正として、rec_nhk.shのffmpegをavconvに置き換えます。
これは、Raspbianにffmpegを導入するのが非常に煩雑なためです。
pi@corona:~/radio $ nano rec_nhk.sh
より、最後から3行目の左端のffmpegをavconvに変えて保存します。
次に、スクリプトに実行権を付与します。
pi@corona:~/radio $ chmod +x rajiru.sh
pi@corona:~/radio $ chmod +x rec_nhk.sh
インターネットラジオを聴取する場合は、SSH接続またはVNC接続のDesktop
のLXterminalより、次のコマンドを実行します。
rajiru.sh -p 局名と入力する(NHK1、NHK2、NHKFM)
例:pi@corona:~ $ rajiru.sh -p NHK2
例:pi@corona:~ $ rajiru.sh -p FM
録音する場合は、次のコマンドを実行します。
rec_nhk.sh 局名 録音時間(分単位) 保存先フォルダ
例:pi@corona:~ $ rec_nhk.sh FM 10 /home/pi/radio
上の例では、NHKFMを10分間録音して/home/pi/radioに保存します。時間を
0分にすると、スクリプトを停止させるまで録音を続けます。最初のテストは、
1分で行ってみます。
なお、再生しても、最初の15秒〜20秒程は、バッファリングのため音は出ません。
また、録音時は音は出ず、録音が終わったらタイムスタンプの入ったファイル名
のmp3のファイルができます。
「Radio Center」でNHKラジオを聴く
先ほどのrajiru.shやrec_nhk.shを、ラズパイZeroのDesktopで使用できる
GUIのPythonプログラム「Radio Center」を作成してみました。
このファイル名はradio.pyで、下記のようにコロナ社のサポートページから
ダウンロードできます。
最初に、wgetを使って/home/piにダウンロードします。
pi@corona:~ $ wget http://www.coronasha.co.jp/static/00901/radio.py
VNC接続でDesktopのLXterminalより、次のコマンドを実行します。
pi@corona:~ $ python radio.py
このコマンドより、次のようなGUIが表示されます。

ここでは、「選局」ボタンで放送を選択します。また、「再生/録音」ボタンで
再生か録音かを選びます。時間(分)は0分〜1000分まで指定が可能です。
ただし、0分にすると録音できません。ほぼ1分で1MB程度のファイルになるので
100分記録すると100MBとなります。保存先は録音したファイルを保存する場所
を選びます。初期設定の保存先は、/home/pi/radioとなっています。再生や
録音については、「開始」を押すと再生/録音が開始され、「終了」を押すと
時間指定にかかわらず終了します。保存されるファイル名は、局名.日付.録音
開始時間.mp3で、選局できるのはNHK1/NHK2/NHKFMの3局です。終了させる
場合は、「終了」ボタンを押してから、右上のXを押しGUIを終了させます。