|
ひさびさに自作のインターネットラジオでShoutCastに接続しようとしたらつながらない・・・
あれ? っと思ってパソコンのブラウザからShoutCastを開こうとしても「Not Found」になってしまう。
色々ググってみたら、ShoutCastは買収されてRadionomyに吸収されたようだ。手順が全然違うので、自作のインターネットラジオで鳴らなくなったわけだ。
んで、接続するべくスケッチ(ファームウェア)を修正するのだが、手順がググってみても出てこない。
しょうがないからWireSharkでパケットモニタリングして手順(プロトコル)を調べる。
まず、「streaming.radionomy.com」にHTTP(80番ポート)で接続する。最近のArduino-IDEはDNS名前解決も搭載しているので、IPアドレスを指定する必要がない。っというより接続するたびに別のIPアドレスにつながる。たぶんアクセス数が多いので、たくさんサーバーを用意してラウンドロビンで接続しているんだろう。IPアドレスではなく「ホスト名+ドメイン名」でDNSで名前解決するべきだ。
無事接続出来たら、下記のテキストをRadionomyのサーバーに送る。(1行目の局情報は例)
GET /Japanjpopjrockanime HTTP/1.1
Icy-MetaData: 1 Connection: Close User-Agent: WinampMPEG/2.7 Host: streaming.radionomy.com Cache-Control: no-cache 一番最後の行は空リターンを送る(CR/LF)
そうするとRadionomyサーバーから以下の情報が送られてくる
Accept-Ranges: none
Content-Type: audio/mpeg icy-br:128 ice-audio-info: bitrate=128;samplerate=44100;channels=2 icy-br:128 icy-description:Best songs from jpop jrock drama anime arashi kinki kids hey say jump news kanjani8 kat-tun l-arc-en-ciel one ok rock naruto bleach and many more!! icy-genre:Japan icy-name:Japanjpopjrockanime icy-pub:1 icy-url:http://japanjpopjrockanime.playtheradio.com Server: Icecast 2.3.3-kh8 Cache-Control: no-cache Pragma: no-cache Expires: Mon, 26 Jul 1997 05:00:00 GMT icy-metaint:16000 やはり最後の行の空リターンのあと、mp3データがどばどばっと流れてくる。その情報をmp3デコーダーIC(例:VS1053b等)に送ればインターネットラジオが視聴できる。
もうちょっと整理出来たらホームページ等にフィードバックします。
|

- >
- Yahoo!サービス
- >
- Yahoo!ブログ
- >
- 練習用







