ほぼデフォルトの設定でapacheをストリーミングサーバにしてみる
いろいろ漁ってみたのだが、結局目的に叶う機能はapacheに最初から備わっていた。
目的とは…
リンクを実行したらダウンロードと同時進行でデータが再生されるようにする。
これだけ。
これだけで十分。
で、これぐらいの機能は外部のモジュールやソフトを使わなくてもapache単体で、
htmlちょちょいと書いて可能なのであった。
した準備
調べてみると、ストリーミング放送するためのソフトというのは(apacheのモジュール
含め)たくさんある。
参考までに…
- mp3_mod (apache組み込み。が、1.3系じゃないと駄目。2.0系には未対応)
- perl_mod + Apache_mp3.mod (apache組み込みモジュール。多少見栄えがよくなる
らしい。perlは書けないから嫌い)
- icecast (peercast以前のスタティックなストリーミング専用のソフト。情報多し)
- Ample (2004/08現在、testingではdebianパッケージも出ている)
- GNUMP3d (調べもしなかったが、一番お手軽そう。でもこれくらいなら手書きした
方がよい?)
公開までの道のり
ここをみると
たんにユーザにダウンロードさせる手間を省くだけのストリーミングなら、
.m3uというファイルに直接.mp3の場所を指定してやれば、それで完成らしい。
一応手順らしきもの
- httpd.conf 中に"TypesConfig conf/mime.types"と書かれているか確認
- /usr/local/apache2/conf/mime.types に content-type として audio/x-mpegurlが返されるように設定されているか確認する(2.05ではデフォルトで大丈夫。なければ書けばよい)
- http://www.hogehoge.org/test.mp3という 1行からなるファイルを作って、たとえば test.m3uという名前で保存する。
- test.m3uにリンクを張る
要するに、.html => .m3u => .mp3 という流れ作ってしまえばよい。
それだけだ。