Bi-Radio

調べたことをφ(..)メモメモ

☆radiko.jp(ラジコ)をブラウザを使わないで再生してみる

ブラウザを使わずにラジコを再生するには、RTMPDumpで受信しMPlayerで再生するのが一般的な方法らしい・・・がっ、RTMPDumpにURLを渡して簡単に受信できる仕組みではなく煩雑な手順が必要となることがわかった。

要約すると・・・
・myplayer-release.swfからKeyとなる画像をswfextract.exeを使って取り出す。
radiko.jp/v2/api/auth1にアクセスしAUTHTOKEN・KeyLength・KeyOffsetを取得する。
・Keyとなる画像の先頭アドレスから+KeyOffsetしてKeyLength分のバイナリデータを取り出しそれをBase64エンコードしPartialKeyとする。
・AUTHTOKEN・PartialKeyをヘッダーに付加しradiko.jp/v2/api/auth2にアクセスする。
(auth1・auth2アクセス時に他にもヘッダーに付加する情報があるが固定値なので割愛)
以上でエラーが出なければ認証成功!
radiko.jp/v2/station/stream/局id.xmlにアクセスするとRTMPストリーミングのアドレスを取得できる。局idはTBSラジオならTBS、文化放送ならQRR・・・
・RTMPDumpにAUTHTOKENを付加してストリーミングを受信しパイプでMPlayerに渡せば再生できるようになる。
Command Prompt

・参考サイト
rtmpdumpでradikoにアクセスする手順 - ザリガニが見ていた...。

と・・・ここまで書いておいてなんだが、この方法は古いようで(^_^;
最新(2018/09/12現在)ではRTMP(Real Time Messaging Protocol)配信では無くHLS(HTTP Live Streaming)配信になりRTMPDumpは不要になりました。※読み上げ版RTMP配信のままである。認証方式もKeyとなる画像が不要になりました。

続く・・・