26 November 2006

LinuxでWindowsMediaのストリーミングを聞く (mplayer編) & ラジオ局リンク

Fedora Core 5で Windows Media Audio ストリーミング放送を受信する。

mplayer のインストール

[root@localhost ~]# yum install mplayer*

MIMEタイプの登録
asx エントリがあることを確認。無ければ追加。

/etc/mime.types
〜 (略) 〜 video/mp4v-es video/mpeg mpeg mpg mpe video/parityfec video/pointer video/quicktime qt mov video/vnd.fvt video/vnd.motorola.video video/vnd.motorola.videop video/vnd.mpegurl mxu video/vnd.mts video/vnd.nokia.interleaved-multimedia video/vnd.vivo video/x-ms-asf asf asx video/x-ms-wm wm video/x-ms-wmv wmv video/x-ms-wmx wmx video/x-ms-wvx wvx video/x-msvideo avi video/x-sgi-movie movie


再生
(たとえば、スイスのRadio32を受信する場合)

[root@localhost ~]# mplayer -playlist http://asx.skypro.tv/asx/radio/radio32-128.asx -softvol -af volume=-5:0 〜 (中略) 〜 Cache size set to 320 KBytes Cache fill: 15.00% (49152 bytes) ASF file format detected. ========================================================================== Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders AUDIO: 48000 Hz, 2 ch, s16le, 128.0 kbit/8.33% (ratio: 16002->192000) Selected audio codec: [ffwmav2] afm: ffmpeg (DivX audio v2 (FFmpeg)) ========================================================================== alsa-init: using device default alsa: 48000 Hz/2 channels/4 bpf/65536 bytes buffer/Signed 16 bit Little Endian AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample) Video: no video Starting playback... A: 126.2 (02:06.1) of 0.0 (unknown) 1.4% 44%

起動後の調整は(一応メモ程度に)
テンキーの「/」と「*」キーまたはキーボードの「9」と「0」キーでボリューム調整
「p」キーまたは「スペース」キーで一旦停止
「m」キーでミュート
「q」キーまたは「ESC」キーでプログラム終了

コンソールではなく、GUIが好みの場合は gmplayer という選択肢もある

root グループ以外のユーザで実行する場合、alsa関連でエラーが出ることもある

Cache fill: 17.50% (57344 bytes) ASF file format detected. Clip info: name: CR CITY ========================================================================== Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders AUDIO: 48000 Hz, 2 ch, s16le, 128.0 kbit/8.33% (ratio: 16002->192000) Selected audio codec: [ffwmav2] afm: ffmpeg (DivX audio v2 (FFmpeg)) ========================================================================== alsa-init: using device default alsa-lib: pcm_dmix.c:851:(snd_pcm_dmix_open) unable to create IPC shm instance alsa-init: playback open error: Permission denied Could not open/initialize audio device -> no sound. Audio: no sound Video: no video Exiting... (End of file)

解決方法は、sudo のリストにrootで実行できる権限を与える行を追加して

/etc/sudoers
root ALL=(ALL) ALL 「ユーザ名」 ALL =(root)/usr/bin/mplayer

sudo に続けてmplayer の実行コマンドを入力する

[root@localhost ~]# sudo mplayer -playlist http://asx.skypro.tv/asx/radio/radio32-128.asx

参考リンク

【OpenTechPress】 Linuxオーディオプレイヤーを求めて

WindowsMedia.com メディアガイド

wwiTV (チャンネルリスト)

ラジオ局リンク (個人的覚え書き)

bash スクリプトで

#!/bin/bash sudo gmplayer -playlist $1

と作っておくと、FireFoxでasfリンクをクリックしたときに出るダイアログで、このスクリプトに送ってやれば再生できる。

/etc/sudoers
root ALL=(ALL) ALL 「ユーザ名」 ALL =(root)NOPASSWD:/usr/bin/mplayer,/usr/bin/gmplayer

と、「パスワードを確認しない」設定を追加しないと、うごかない…