radikoを録音する

linux上でradiko.jpのストリーム放送を録音する(エリア外である

関西のものも)

webを検索してやり方を調べる。すでにいろんな人がやってる。

単にproxyを関西にあるサーバ(さくらインターネット)にしただけでは、1935 (flash playerのストリーミング)ポートを通さないので聞けな(が、番組表が見られる)

1) rtmpdump

http://rtmpdump.mplayerhq.hu/download/

からrtmpdump-2.2-tar.bz2をとってきてmake posixする。

openssl-develの0.9.8以降が必要(それ以前だとSHA256_DIGEST-LENGTHがないといわれmakeできない)なので、CentOS 4ではできない。CentOS 5.4の入っているマシン(argon)で実施

2) 関東のラジオを録音してみる

rtmpdumpでflashのパラメータの指定が必要なのと、radiko側のセキュリティ(?)強化のためrtmp:ではなくてrtmpe:というプロトコル指定が必要。web上の情報は古くなってしまったものなどがあり、ただ真似したのでわかるまで時間がかかった。

TBSの録音

[kenhrd@argon radiko]$ /usr/local/bin/rtmpdump -f LNX 10,0,45,2 -vr rtmpe://radiko.smartstream.ne.jp/TBS/_defInst_/simul-stream -o TBS`date +%Y%m%d%H%M`.flv -B 60

RTMPDump v2.2

(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL

Connecting ...

ERROR: rtmp server sent error

Starting Live Stream

For duration: 60.000 sec

Metadata:

audiodatarate 48.00

34.142 kB / 5.55 sec

-B nn で録音時間 (秒)を指定する

3) 関西のラジオを録音

さくらインターネットレンタルサーバ(ruby)でポートフォワードして、関西のラジオを録音できる。

rubysshd_config

AllowTcpForwarding yes

にしておく必要がある。

ポートフォワード

ssh ruby -L 61935:219.103.32.110:1935

を実行する(IPアドレスradiko.smartstream.ne.jpのもの)

そしてローカルマシン(argon)で

[kenhrd@argon radiko]$ /usr/local/bin/rtmpdump -f LNX 10,0,45,2 -vr rtmpe://localhost/MBS/_defInst_/simul-stream --port 61935 -o MBS`date +%Y%m%d%H%M`.flv -B 60

RTMPDump v2.2

(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL

Connecting ...

ERROR: rtmp server sent error (れれ、何気にエラーが出てる?)

Starting Live Stream

For duration: 120.000 sec

Metadata:

audiodatarate 48.00

64.586 kB / 10.54 sec

これで毎日放送(1179)が録音された

4) 各局のIDは下記の通り (radiko.jpでリンク先をみるとわかる)

* TBSラジオ- #TBS

* 文化放送 -- #QRR

* 日本放送 -- #LFR

* ラジオNIKKEI -- #NSB

* INTER FM -- #INT

* TOKYO FM -- #FMT

* J-wave -- #FMJ

* ABC (1008kHz) --- #ABC

* MBS (1179kHz) --- #MBS

* OBC ラジオ大阪 (1314) -- #OBC

* FM Cocolo (76.5) -- #CCL

* FM802 (80.2) ---- #802

* FM Osaka -------- #FMO