mp3 を作る為には、音楽 CD から mp3 へ。 の所で書いていますな。ふみふみ。8hz-mp3 はもはや時代遅れなので gogo バージョンに書き直しています。ご参考にしてくだされ。
さて、今回は mp3 データを配信してしまおぅ。と、言う特集です。サーバを立てて放送局にしてしまいましょう;-)。
と、言う事で、早速インストールしましょう。packages からインストールします。icecast-1.3.7.tgz と shout-0.8.0.tgz を pkg_add すれば完了です。それにしても最近は、packages を利用してばっかだなぁ・・。自分で make しているのは XEmacs だけた・・(^^;;
と、言う事で準備が整ったらいよいよ設定をしていきましょう。基本的には /usr/local/etc/icecast に各種設定ファイルがインストールされます。さ、環境を作りましょう。
----------------
# cd /usr/local/etc/icecast/conf
# cp icecast.conf.dist icecast.conf
# mule icecast.conf
# mkdir /var/log/icecast
----------------
まぁデェフォルトでも問題はないのですが、気がつく所はいじってげましょう。私は以下の部分を変更しました。
----------------
streamurl http://nora.running-dog.net
encoder_password aaa
admin_password aaa
oper_password aaa
server_name nora.running-dog.net
logfile ../../../../../var/log/icecast/icecast.log
accessfile ../../../../../var/log/icecast/access.log
usagefile ../../../../../var/log/icecast/usage.log
staticdir /usr/local/etc/icecast/static
templatedir /usr/local/etc/icecast/templates
logdir /usr/local/etc/icecast/logs
stats_log ../../../../../var/log/icecast/stats.log
----------------
と、言った感じでしょうか。サーバ名とか、URL は変更するのは当たり前として、困ったのがログの吐き出し先です。なんと、icecast はお行儀が悪い事に相対パス上にログを吐き出してしまいます。なので、相対パス的にログの吐き出し口を指定しました。実際には /var/log/icecast と、言うディレクトリを掘って、その中に吐き出す様にしました。
さ、これで、設定は終わりました。すかさず起動してみましょう。
----------------
# /usr/local/sbin/icecast -c /usr/local/etc/icecast/conf/icecast.conf
[08/Nov/2000:23:56:39] No configfile found, using defaults.
Icecast Version 1.3.7 Initializing...
Icecast comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of Icecast under the terms of the
GNU General Public License.
For more information about these matters, see the file named COPYING.
Starting thread engine...
[08/Nov/2000:23:56:39] Icecast Version 1.3.7 Starting..
[08/Nov/2000:23:56:39] Starting Admin Console Thread...
-> [08/Nov/2000:23:56:39] Starting main connection handler...
-> [08/Nov/2000:23:56:39] Listening on port 8000...
-> [08/Nov/2000:23:56:39] Listening on port 8001...
-> [08/Nov/2000:23:56:39] Using 'nora.running-dog.net' as servername...
-> [08/Nov/2000:23:56:39] Server limits: 900 clients, 900 clients per source,
10 sources, 5 admins
-> [08/Nov/2000:23:56:39] WWW Admin interface accessible at
http://nora.running-dog.net:8000/admin
-> [08/Nov/2000:23:56:39] Starting Calender Thread...
-> [08/Nov/2000:23:56:39] Starting UDP handler thread...
-> [08/Nov/2000:23:56:39] Starting relay connector thread...
-> [08/Nov/2000:23:56:39] [Bandwidth: 0.000000MB/s] [Sources: 0]
[Clients: 0] [Admins: 1] [Uptime: 0 seconds]
----------------
なんか、無事に動いたみたいですね。ふみふみ。いがっだなっす。続いて、icecast に mp3 データを垂れ流す shout の設定をしましょう。
----------------
# cd /usr/local/etc/icecast
# cp shout.conf.dist shout.conf
# mule shout.conf
----------------
まぁ、これも server_name であるとか、url、などを変更して上げましょう。一度覗いてみてください;-)。でもって起動ですが・・。こっちゃのプログラムも結構汚いです。あれれ・・。きっと、ports を作る時に失敗したのでしょうな・・。/usr/local/share/icecast なんてのを要求してきます。本当は、/usr/local/etc/icecast が正しいのにね・・。
と、言う事で、あんまり汚いので、自分でコンパイルするぞ。って言う人は頑張ってください。configure なので楽に make 出来るかと思いますけど・・。そうで無い方は以下の様に環境を整えて上げましょう。
----------------
# cd /usr/local/share
# ln -s /usr/local/etc/icecast
# cd /usr/local/etc/icecast
# ln -s /var/log/icecast log
----------------
これで起動する為の環境が整いました。最後にストリーミングする mp3 データのリストを作ってあげましょう。
----------------
# ls -1 /mp3/* > /usr/local/etc/icecast/shout.playlist
# cat /usr/local/etc/icecast/shout.playlist
/mp3/01.mp3
/mp3/02.mp3
/mp3/03.mp3
/mp3/04.mp3
/mp3/05.mp3
----------------
このリストは絶対パスで書かれていないと、shout が MP3 ファイルを見つけることが出来ません。後、shout.playlist は、shout.conf 内に設定があります。他の名にしたい場合はここを変更しましょう。ただし・・。これも相対パスとなっているので注意が必要です。まったくぅぅ・・。ぶつぶつ・・。
と、言う事で気分をかえてっ!!さて実行してみましょう。
----------------
# /usr/local/bin/shout >localhost -P aaa
----------------
"-P" は パスワードを指定します。icecast.conf 内で書いた admin_password を記述します。メッセージが何も出力されなければ無事に動いた事になります。良かったですねぇぇ。で、icecast の方には、以下の様なログが出力されます。
----------------
-> -> [09/Nov/2000:00:14:07] Accepted encoder on mountpoint /default
from nora.runninf-dog.net. 1 sources connected
-> [09/Nov/2000:00:16:05] [Bandwidth: 0.016667MB/s] [Sources: 1]
[Clients: 0] [Admins: 1] [Uptime: 2 minutes]
----------------
さ、これでサーバが起動しました。良かったなっす。続いてクライアントの利用方法ですが、Windows であれは、Winamp、UNIX であれば、xmms などでアクセスすれば良いです。CTRL-L で URL 参照の窓を出して、そこで、
http://192.168.1.7:8000/
として接続すればむひひひ。多分拾えたと思います。すごいですねぇぇ。URL 指定出来る mp3 プレーヤーを使えばなかなかぐーですね。
注意する点としては、IPv6 に対応していない。と、言う点でしょうか。icecast を起動しているローカルなマシンで xmms から
http://localhost:8000/
として接続したら・・。なんと、X が落ちてしまいました(g_g)。IPv6 Ready の環境では、localhost を resolv すると、::1 ですね・・。あれれ・・。簡単に落ちました。IPv6 で中継するなら、ftp://ftp.kame.net/pub/kame/misc/ から、icecast-114-v6-19990618a.diff.gz を持ってくるしか手がなさそうです。後、xmms は IPv6 に対応していない様なので、同じ所にある mpg123-059r-v6-20000713b.diff.gz を持ってくるのが懸命みたいです。
と、言う事ですが、私は別に mp3 データのストリーミングを勧めているわけでは有りません・・。著作権はくれぐれも・・。と、例のごとくローバシンを・・;-)。