MP3ストリーミング
-自宅で始めるストリーミング・サーバ-
Okinawa FreeBSD Users Group
みぞぶちまさや
miz@ofug.net
(page 1)
1. MP3ストリーミングを始めるきっかけ
背景:
- エアチェックしたラジオドラマをPCに取り込み、MP3に変換して保存している。出張で沖縄を離れることが多く、その間ラジオを聞くことができない。
- 毎日放送がある。すぐにたまっていく。
やりたいこと:
- 出張先や旅行先で気になるドラマの続きが聞きたい。
- PCが置いてある部屋と別の部屋で聞きたい。
(page 2)
2. PCでエアチェックする利点(1)
- 大容量HDDを使って長時間録画
- ラジオドラマ1話15分 週5回放送
- 16bit Streo 22.05KHzで およそ15MB
- CD-R(700MB)でおよそ9週分
- 20GBのHDD(1万円)で28週分(約半年)
- NTPサーバを使って正確な時刻合せ
- 5分前にNTPサーバに問合せて時刻合せ
- ラジオのタイマーもずれが発生することを考えて5分前開始、5分後終了
(page 3)
3. PCでエアチェックする利点(2)
- デジタル化されたデータの利便性
- MP3にエンコード -> 無圧縮時の1/5のサイズ
- MP3のまま CD-Rに保存 -> PCで聴く
- WAVEへ変換して CD-Rに焼く -> CD Player
- リモートからFTPしてもっていける
(page 4)
4. 録音システム概要
PC: ノートPC(ThinkPad600E)
OS: Kondara MNU/Linux 1.2(FTP版)
HDD: 12.0GB+3.2GB
Sound: Roland UA-30(USB-Audio)
ラジオ: Panasonic SCH-750(ミニコンポ)
その他: VHSビデオ
- 録音作業は cron で無人作業。
- PCでの録音の他にバックアップとしてビデオでも録音する。
音質は3倍モードでも十分。
(page 5)
5. ストリーミングの形式
- 常にデータを流しつづけているタイプ
- テレビやラジオのようにタイムテーブルにそってコンテンツが流れている
ドラマなので途中からでなくいつも最初から聴きたい。
オンデマンド・サーバをつくる。
(page 6)
6. どうやって聴く?(1)
- 家庭内LANでは最適。
- ローカルディスクのファイルとして扱えるのでとても簡単
どんなMP3 PlayerでもOK(好みのツールを使える)。
ルータの設定が面倒。あるいはしないほうが良い。
- MP3のストリーミングに対応したクライアントに対し、
データを送るサーバ。それ自体はMP3デコード機能はない。
- 別のshoutというプログラムがicecastに対しMP3データを渡す。
Linux/FreeBSD : XMMS, mpg123, FreeAMP Xaudio
Windows : Sonique, K-Joful, WinAMP
Macintosh : MacAMP, SoundJam
(page 7)
7. どうやって聴く?(2)
apacheのVirtualHost機能を使う。
運用条件が(たぶん)厳しい。
- 自分で自由に設定できるDNSサーバがある。
- 自分で自由に設定できるWWWサーバ(apache)がある。
(もちろんroot権限を持つマシンがある)
(page 8)
8.ストリーミングでの注意点
帯域:
- ほとんどのMP3エンコーダは エンコード時のビットレートが112-128Kbps。
- アナログ回線やISDNでは64Kbps以下
- そのまま流すと音が細切れになる
Access Control:
=> 第3者からのアクセスを拒否するための仕組み。
(page 9)
9.icecastを使ってみる(1)
できたこと:
- WWW簡易サポート:
- ある特定のディレクトリをWWWブラウザ, MP3プレイヤーに
ディレクトリ・リストとして見せる。
- staticdir: /home/miz/MP3 とicecast.confで指定すると
w3m http://mp3.big-east.org:8000/file/ で/home/miz/MP3が見える。
w3m http://mp3.big-east.org:8000/file/morning/ も可
でも http://mp3.big-east.org:8000/file/morning/hoge.mp3 は
http://mp3.big-east.org:8000/file/hoge.mp3とリンクされている。
(page 10)
10.icecastを使ってみる(2)
できなかったこと:
/usr/local/etc/icecast/conf/{guest,mount,user}.act
ライブのためのものか?
メモ:
/etc/hosts.allow:
icecast-client: 192.168.1.0/255.255.255.0 : allow
(page 11)
11.apache + mod_mp3
できたこと:
mp3.big-east.org:8800という名前でWWWブラウザへ見せる。
.htaccessを使ったAccess Control
mpg123からの接続 -u user:password
できなかったこと:
xmmsからの接続: 認証エラー
(page 12)
12. まとめ
- 帯域問題は時間が解決する?(ADSLとかCATVとか)
- icecastのAccessControl(もちょっと調査が必要)
icecastのWWW簡易サポート(いまいち)
参考資料:
$Id: oia-lectures-45.mgp,v 1.2 2001/09/03 13:03:33 miz Exp $
(page 13)