インターネット・ラジオ 5. ライブ配信の方法

5月27日2009年

ライブのストリーミングこそ、ネットラジオの面白さ。
ライブ配信の場合、たとえば何かのイベントをリアルタイムでラジオ中継する場合は、オン・デマンドの時のようにただファイルをアップロードすればいいというわけにはいかない。
また、ストリーミングによるネットラジオの醍醐味は、個人のパソコンにサーバをインストールして、個人レベルのストリーミング・ラジオ局を作ってしまうこともでき、数えきれないほどの怪しいラジオ・データがネットの世界を飛び交っていたりするあたりなのだが、これはまた別の話。

さて、とにかくストリーミングにはそれなりのソフトが必要になる。ストリーミング・サーバに送る音声データをパソコンに取り込んで、それをストリーミングができる形式に変換して、それをサーバに送り込む機能を持ったソフト(エンコーダ)である。
ストリーミング用のエンコーダは、一般的に使われるソフトではないので難しそうな気がするかもしれない。しかし使い方をマスターしてしまえば、どうってことないのは、どんなソフトも同じこと。
というわけで、エンコーダの使い方を説明する。

エンコーダに使うソフトは、送信に使用するパソコンのシステムの種類や、サーバの種類などによって異なる。
Windowsで使うのならedcast、GNU/Linuxならdarkiceなどが代表的だ。
Windowsのedcastは、WinAmpというMP3プレーヤ、ストリーミング・サーバのSHOUTcastと連携して、パソコン1台でMP3のストリーミングすることもできる。パソコン1台のネットラジオは地下放送的な面白さと可能性があるが、地下放送の面白さについてはまた別の機会に。ここでは「表」についてのみ説明することにしたい。
GNU/LinuxにもさまざまなSHOUTcast/IceCast用エンコーダがあるが、IceCastに付属するIceSは現在はogg専用になっているのでちょっと使いにくい。個人的にはdarkiceというエンコーダが手軽でいいと思っているが、これはテキストファイルで設定しなければならないので、慣れない人には難しく感じるかもしれない。liveiceというエンコーダは、MP3プレーヤのXMMSの出力をマイク入力とミックスする機能(Windowsのedcastのような機能)を持っていて、設定ファイルもメニューから選択して生成することができる。
MacOSXについてはよくわからないのだが、darkiceやliveiceが使えるのではないかと思う。

さて、そういうわけでいろいろなソフトがある。そして設定のしかたも複雑といえば複雑に見える。いろんな機能があるので、これらの機能をどう使うか、文章で説明をするのはなかなか大変なので、そのへん、質問がある人はMediRに来てください。
で、ポイントだけを説明しよう。

エンコーダの設定のポイントは、次の5つだ。

  • サーバのドメイン名
  • サーバのポート番号
  • 接続用のユーザ名、パスワード
  • ストリームのマウントポイント
  • 入力装置

サーバのドメイン名は、ストリーミングのデータを送るサーバを指定する。次のポート番号もデータ送信に必要で、サーバの種類によって番号は異なる。
接続用のユーザ名、パスワードは、そのサーバにデータを送信する権利があるユーザかどうかを判別するために必要。
ここまでの情報は、利用するストリーミング・サーバの管理者に接続用データを教えてくれと言えば教えてくれるはず。

マウントポイントは、ストリーミングのURLの中で、自分のストリームの位置を表す。これは決まっていることもあれば、ある程度自由に設定できる場合もある。わからなければ、管理者に問い合わせればいい。

入力装置は、ユーザが使用するエンコーダが、どこから音声を入力するかを指定する。
たとえばマイクから取り込むのか、MP3ファイルをサウンドの入力に使うのか、あるいはミキサー、ライン入力…
いろいろな入力が選べるようになっているはずなので、実際にどこのデータをストリーミングの入力データにするのかを指定する。

以上のデータは、どのエンコーダでも必ず設定しなければならない。これ以外にも、さまざまな設定項目がある。たとえばサンプリングレートだとか、ビットレートだとかといった部分にはとりあえず手をつけず、初期設定のままにしておけばいいはずだ。うまくつながらなければ、そのときに設定内容を見直せばいい。

接続のテストは、送信に使っているパソコンで受信してみる、という方法でもいいが、別のパソコンにしといたほうが確実。
特に入力装置をパソコンの音声出力に指定したりすると、同じパソコンで送受信すると、送信したデータが受信されて音が出ると同時にその音が入力されて…というように延々と繰り替えされてわけがわからなくなる。

オマケとして、GNU/LinuxのdarkiceでIceCast2サーバに接続する場合の設定内容を付け加えておく。

[general]
duration        = 0        # 0はエンドレス。送信時間を限定する場合は適当な数値(秒数)を指定
bufferSecs      = 5         # バッファにためておく秒数
reconnect       = yes       # 接続が切れた場合に自動で再接続する時はyes、再接続しない場合はno
[input]
device          = /dev/dsp  # サウンドカードのOSS DSPから入力
sampleRate      = 22050     # サンプルレート。トーク番組なら11025で十分。
bitsPerSample   = 16        # サンプル精度。8でもいい。
channel         = 2         # ステレオなら2、モノラルなら1
[icecast2-0]
bitrateMode     = cbr       # abr(平均)、cbr(固定)、vbr(可変)からどれかひとつ。何でもいい。
format          = mp3    # データの形式。mp3が無難。
bitrate         = 96        # ビットレート。トーク番組なら32とか、モノラルのトークなら16ぐらいでもOK。数値が大きいほど音質はよくなるが、送信するデータも増える。
server          = DOMAIN.NAME # ストリーミングサーバのホスト名
port            = 8000      # 接続するポート番号。IceCast2だと、たいてい8000
password        = パスワード # 接続用パスワード。SHOUTcastやIceCastではユーザ名は不要。
mountPoint      = マウントポイント  # 接続用URLの一部になる
name            = live trial # ストリーム名。ラジオに表示される
description     = This is live trial # ストリームの説明。
url             = http://medir.jp/ # ストリームの情報があるWebのURL
genre           = radio    # 番組の分類
public          = yes      # 公開番組ならyes。yesにすると、ラジオのクライアント(WinAmpなど)の一覧に表示される。

新しいコメントの投稿

  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 使用できるHTMLタグ: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • 行と段落は自動的に折り返されます。
  • You may embed videos from the following providers ustream, ustreamlive, youtube. Just add the video URL to your textarea in the place where you would like the video to appear, i.e. http://www.youtube.com/watch?v=pw0jmvdh.
  • Images can be added to this post.
  • You may use [inline:xx] tags to display uploaded files or images inline.

書式オプションに関するより詳しい情報...