Raspberry Piでラジオを鳴らすのこと
Raspberry Piにスピーカーをつけてラジオを鳴らす方法についてのメモ。
おおまかな仕掛けとしては、
Radikoのswfプレイヤーからストリーミングデータをぶっこ抜いて
メディアプレイヤーで再生する方式の模様。
(だから、いつまで使えるかわからんね)
音声を再生するアプリの導入*1
sudo apt-get install mplayer
ストリーミング関係のアプリの導入
sudo apt-get install rtmpdump swftools libxml2-utils
音声出力先の設定
デフォルトではイヤホンジャックかHDMIか自動判定となっている。
HDMIなり、イヤホンジャックなりどちらか固定としたい場合は
rasp-configから設定可能。
設定メニューの[Advance Options] -> [Audio]と追っていき、
[Auto], [Force 3.5mm ('Headphone') jack], [Force HDMI]から選択する。
sudo rasp-config
音量の設定
画面からできるけど、コマンドでやる場合。
下記でコマンドで現在の値を知る。
sudo amixir -M Simple mixer control 'PCM',0 Capabilities: pvolume pvolume-joined pswitch pswitch-joined Playback channels: Mono Limits: Playback -10239 - 400 Mono: Playback 400 [100%] [4.00dB] [on]
下記、コマンドで設定する。
sudo amixir sset PCM 100%
radikoを再生するスクリプトの取得
スクリプトをここから取得
play_nhk-radio.sh · GitHub
play_radiko.sh スクリプトの修正
radiko側の状態が変わっているのだろうが、
再生で使用するplay_radiko.shはそのままだと動かない。
以下の箇所を修正する。
行 | 修正前 | 修正後 |
---|---|---|
28 | playerurl=http://radiko.jp/player/swf/player_3.0.0.01.swf | playerurl=http://radiko.jp/apps/js/flash/myplayer-release.swf |
53 | swfextract -b 14 $playerfile -o $keyfile | swfextract -b 12 $playerfile -o $keyfile |
70 | --header="X-Radiko-App: pc_1" \ | --header="X-Radiko-App: pc_ts" \ |
71 | --header="X-Radiko-App-Version: 2.0.1" \ | --header="X-Radiko-App-Version: 4.0.1" \ |
108 | --header="X-Radiko-App: pc_1" \ | --header="X-Radiko-App: pc_ts" \ |
109 | --header="X-Radiko-App-Version: 2.0.1" \ | --header="X-Radiko-App-Version: 4.0.1" \ |
111 | --header="X-Radiko-Authtoken: ${authtoken}" \ | --header="X-Radiko-AuthToken: ${authtoken}" \ |
112 | --header="X-Radiko-Partialkey: ${partialkey}" \ | --header="X-Radiko-PartialKey: ${partialkey}" \ |
再生する
例えばTBSを再生する場合は以下のようにする。
play_radiko.sh TBS
参考文献:
http://radiko.jp/
http://www.nakatayuki.com/archives/1039468785.html
https://gist.github.com/ihsoy-s/5292735#file-play_radiko-sh-L28
https://qiita.com/komacchi/items/2db61b16c1c81967705f