Raspberrypi-使用數位電視棒接收FM廣播電台訊號

Raspberrypi-樹莓派可以做很多事情,之前我也曾經用樹莓派製作一個可以播放internet radio的網路播放器,後來也陸陸續續用樹莓派製作Volumio或是PiCorePlayer這種NAA(?),也就是把電腦中的音訊訊號送至樹莓派,樹梅派在接受到電腦音訊訊號後,就會用自身的音效卡播放我電腦中的音樂。會這樣做主要是因為我的電腦是放在臥室,可是音響是放在客廳,為了可以把我電腦中的高音質音樂在樹莓派播放,就學習了使用上述方式,用客廳裡較好的音響來聽音樂。 這一次小弟的數位無線電視棒似乎壞掉了,所以就在網路搜尋相同類型的電視棒。但是一查之後,萬萬沒想到,這類型的電視棒除了可以看數位電視之外,居然還可以用來接收廣播。十幾年前,手機是可以聽無線廣播(非網路廣播)的,但是因為各家手機製造商為了要塞入更多的手機元件,就把一些例如耳機孔還有廣播的功能都拿掉了。如今,小弟看到網路論壇的資料之後,就決定用家裡的電視棒+樹莓派+天線,來接收並用網路的方式來收聽傳統的廣播電台,達成手機也可以聽傳統FM。 小弟在網路上找到了rtl_fm_streamer這個在Github上的專案,只要在安裝完成之後,在樹莓派的終端機頁面輸入rtl_fm_streamer然後按enter,基本上你的廣播電台收音機的server就啟動了。然後你再用手機的VLC app,網址列輸入”你的樹莓派的ip:2346/100700000/0″就可以聽電台了(前面是以ICRT FM 100.7為例,如果是中廣流行網就是輸入103300000,/0則是代表MONO,若要聽Stereo就打/1)。 不過rtl_fm_streamer也有缺點,除了一次只能連接一個裝置之外,rtl_fm_streamer可以調的參數也比較少。另外,重要的是,rtl_fm_streamer有些播放器居然沒辦法用或是播放,再加上我在Github安裝時,明明完全按照Github的指示安裝,結果完全不能動作。後來就只好一直把error code貼在gemini上,靠著gemini硬是安裝完成了。但是,rtl_fm_streamer無法解決客廳中的播放器無法播放的問題,因此我腦筋就動到了另一個方案,也就是用安裝 SDR 驅動、音訊編碼器 以及 Web 伺服器的方案。 雖然這個方法比較複雜,但是他可以確保絕大多數的電腦或播放器可以播放。另外,更重要的是,因為我們是把音檔分切存放在HTML的網站,所以就不會有只能單一連線的問題,我有曾經同時用我客廳的播放器以及手機同時播放,經本上都不會有問題。反觀rtl_fm_streamer就只能建立單一連線,沒有辦法兩台以上同時播放。此外,我也深深覺得,ffmpeg和nginx都是相當老牌、功能齊全而且穩定的程式,選擇這個方案反而遇到的問題比較少,所以就推薦大家安裝SDR 驅動(RTL-SDR)、音訊編碼器(ffmpeg) 以及 Web 伺服器(Nginx)的方案囉。 詳細的安裝指令可參考以下網站:
愛心
留言
encourage first comment
有些話想說嗎 快分享出來彼此交流吧!