用PVR-TV 7131電視卡在Ubuntu 7.04上看電視

tvtime.jpg
(畫面不清是因為我們家第四台訊號差,不是軟體問題)

今天解決在Ubuntu 7.04上用電視卡看電視的問題。

剛買不久的電視卡是廣寰類比電視PCI CARD全球豪華版,這張卡的型號是PVR-TV 7131,使用的晶片是Philips SAA7131。Ubuntu 7.04安裝好後會自動將這張卡辨認為7134,型號不同但驅動程式可共用,但還需做一些調整,才能順利抓到cable訊號。

準備用來看電視的軟體是tvtime,用synaptic套件管理程式即可安裝。

首先調整驅動程式,終端機下指令開啟:

sudo gedit /etc/modprobe.d/saa7134

加入:

options saa7134 card=65 tuner=54 alsa=1

其中card和tuner的編號可至此頁尋找一下電視卡的型號,改好後存檔,再開:

sudo gedit /etc/modules

在檔案結尾處加上:

saa7134

存檔,重新開機後啟動tvtime,此時應該可以看到影像了,但卻沒有聲音,從google大神那邊得知解決方式,打開tvtime以後,在終端機下指令:

arecord -D hw:1,0 -r 32000 -c 2 -f S16_LE | aplay -

這個指令馬上就讓電視卡開口講話了,可是在聲音上有一些秒差,看起來還是怪怪的,再試另外一種方法:

先安裝sox,終端機裡下指令:

sudo apt-get install sox

sox套件裝好後,一樣先開tvitme,然後再下指令:

arecord -D hw:1,0 -r 32000 -c 2 -f S16_LE | sox -q -c 2 -r 32000 -w -t wav - -t alsa hw:0,0

到此,畫面正常,聲音正常,唯一的缺點就是每次看電視時就得執行一次上面那行指令,而且不能把執行指令的終端機關掉,否則電視就會變啞巴。

update: 上述兩句讓電視發聲的指令,有時候還是會出捶,所以也可以用下面這個指令,聲音和影像會對得更精準:

sox -q -c 2 -s -w -r 32000 -t ossdsp /dev/dsp1 -t ossdsp -w -r 32000 /dev/dsp

在〈用PVR-TV 7131電視卡在Ubuntu 7.04上看電視〉中有 16 則留言

    1. @nome,經過上文中的修正程序後,linux可以識別這塊卡,不用另外安裝驅動。

      一般的多媒體播放器不含電視功能,因此無法直接播放,建議還是用專用的軟體播放,例如tvtime

  1. 更正~~對你來說~~語法應該改成這樣

    ps -efww|grep sox|grep -v grep|cut -c 9-15|xargs kill -9
    ps -efww|grep tvtime|grep -v grep|cut -c 9-15|xargs kill -9

    先殺掉sox在殺掉tvtime

    至於啟動的語法~~就不用在多說了吧^_^~~~

  2. 還有一招完美法~~~

    你在console下打ps -aux 或是 ps -ef

    都可以看到以下的東西

    ubuntu 7064 6.0 0.4 37304 10108 ? R 21:27 0:03 tvtime
    ubuntu 7065 0.0 0.0 3984 1296 pts/0 S 21:28 0:00 arecord -D hw:1,0 -r 32000 -c 2 -f S16_LE
    ubuntu 7066 1.4 0.0 4512 1944 pts/0 SL 21:28 0:00 aplay –
    ubuntu 7069 0.0 0.0 2624 1004 pts/0 R+ 21:28 0:00 ps -aux

    所以啊~~~可以用Script來啟動進程跟用一各script殺掉以上的進程~~~語法很簡單的

    $sh
    ps -efww|grep tvtime|grep -v grep|cut -c 9-15|xargs kill -9
    ps -efww|grep aplay|grep -v grep|cut -c 9-15|xargs kill -9

    這樣子就可以一次兩個進程都殺掉了~~~且啟動的時候就可以將aplay放在背景跑了

    這只是強大又彈性的linux script小小簡單的應用~~

  3. @Popo,根據我曾搜尋過的資料顯示,搖控器的問題應該可以解決,但是過程繁瑣,看了就頭暈,所以我就沒興趣往下追了。

    你說加上&的方法,我好像曾經試過,但我記得如果把聲音的執行擺到背景去,到時候關掉tvtime的時候,聲音好像會關不掉。

    如果你有試出來的話,麻煩通知我一下 :mrgreen:
    我是因為平常也很少看電視,所以一點點的不方便就算了~~

  4. 對了~~你可以在命令的最結尾加上 & 符號~~
    這樣子就會轉到背景去RUN了~~這樣子Console視窗就可以關掉了…..也可以寫個script ..在每次啟動tvtime之前先行跑那一串命令行(記得加&符號結尾) 之後再跑tvtime..
    這樣子就可以很完美啦~~

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料