2012年5月12日 星期六

mplayer 聽 FM 廣播(於三頻電視棒)

由於使用三頻電視棒的關係,
所以想聽 FM 廣播也是沒問題;
不過目前使用過 mplayer 可正常播放外,
其他的目前還失敗中…

尚未特別操作 mplayer 的功能,
所以用起來會有點麻煩。

麻煩之處在於音效擷取設定,
因為是參考 Volar HX 的說明文件,
寫著使用廣播使用 mplayer 及音效得使用 arecord 作擷取,
所以得先查詢過音效卡的位置才可聽到聲音。

查詢指令:
lancer@lancer-desktop:~$ cat /proc/asound/cards

 0 [Intel              ]: HDA-Intel - HDA Intel
                             HDA Intel at 0xd8800000 irq 48
 1 [AUDIO        ]: USB-Audio - USB  AUDIO
                             USB  AUDIO at usb-0000:00:1d.0-1.2.1.3, full speed
 2 [A8270          ]: AVerTV Volar HX - A827
                             AVerMedia AVerTV Volar HX/AX/MAX A827

在我的列表中有 3 個音效裝置,
第 1 個是筆電內建的 Intel 音效輸出裝置,
第 2 個是我買的外接式 USB 喇叭,
第 3 個才是 Aver Volar HX - A827 電視棒。

那麼要如何使用 arecord 讓電視棒擷取音效呢?
只要在終端機中輸入以下指令就能進行擷取作業:
lancer@lancer-desktop:~$ arecord -D hw:2,0 -r 48000 -c 2 -f S16_LE | aplay -

不過只下達上列指令只會聽到「雜音」…
所以要搭配 mplayer 才能聽到廣播。
只是 Ubuntu 套件庫的 mplayer 似乎沒辦法開啟「廣播」功能(或許我沒仔細的查看設定),
那麼就從 mplayer 的官網下載吧!

以手動安裝的方式啟用安裝「廣播」功能。
----------------------------------
#!/bin/sh
SDevNo=$(cat /proc/asound/cards | grep A8270 | cut -d' ' -f14-18)
SDev=$(cat /proc/asound/cards | grep A8270 | cut -c 2)
echo "$SDevNo 裝置位於第 $SDev 順位!\n"
#echo "mplayer radio://9"

channel=$1
arecord -D hw:$SDev,0 -r 48000 -c 2 -f S16_LE | aplay - & mplayer radio://$channel

#輸出此段以方便用cat查這條指令於Mplayer開Radio時沒聲音
echo "\narecord -D hw:$SDev,0 -r 48000 -c 2 -f S16_LE | aplay -"


killall -9 arecord

沒有留言:

張貼留言