5.3. 常見問題

注意

  1. 在數字電視中,單個物理頻道可能包含不同的內容。規範將每個內容稱為一項服務。這是電視使用者會稱之為“頻道”的東西。因此,為了避免混淆,在本常見問題解答中,我們將轉發器稱為物理頻道,將服務稱為邏輯頻道。

  2. LinuxTV 社群維護了一些 Wiki 頁面,其中包含大量與媒體子系統相關的資訊。如果您在這裡找不到所需的答案,您很可能在那裡找到有用的資訊。它託管在

    https://www.linuxtv.org/wiki/

一些關於 Linux 數字電視支援的常見問題

  1. 調諧後幾秒鐘訊號似乎就消失了。

    這不是一個 bug,而是一個特性。因為前端有顯著的功耗(因此會變得很熱),所以如果它們不使用(即前端裝置關閉),它們就會斷電。 dvb-core 模組引數 dvb_shutdown_timeout 允許您更改超時時間(預設 5 秒)。將超時設定為 0 會停用此超時功能。

  2. 我如何觀看電視?

    與 Linux 核心一起,數字電視開發人員支援一些簡單的工具,主要用於測試和演示 DVB API 的工作方式。這些被稱為 DVB v5 工具,並與 v4l-utils git 倉庫放在一起。

    您可以在 LinuxTV wiki 上找到更多資訊:

    第一步是獲取已傳輸的服務列表。

    這可以透過使用幾個現有工具來完成。例如,您可以使用 dvbv5-scan 工具。您可以在以下網址找到更多資訊:

    還有一些其他應用程式,例如 w_scan [1],可以進行盲掃,努力尋找所有可能的頻道,但這些程式執行起來會消耗大量時間。

    此外,一些應用程式(例如 kaffeine)有自己的程式碼來掃描服務。因此,您不需要使用外部應用程式來獲取此列表。

    大多數此類工具需要一個檔案,其中包含您所在地區可用的頻道轉發器列表。因此,LinuxTV 開發人員維護數字電影片道轉發器表,並接收社群的補丁以保持其更新。

    此列表託管在

    並在多個發行版中打包。

    Kaffeine 對某些地面標準具有盲掃支援。它也依賴 DTV 掃描表,儘管它內部包含一份副本(並且,如果使用者請求,它將下載更新版本)。

    如果您很幸運,可以直接使用提供的頻道轉發器之一。如果不行,您可能需要在網際網路上查詢此類資訊並建立一個新檔案。有幾個網站包含物理頻道列表。對於有線電視和衛星電視,通常只需知道如何調諧到單個頻道,掃描工具就能識別其他頻道。在某些地方,這也適用於地面傳輸。

    一旦您有了轉發器列表,您需要使用像 dvbv5-scan 這樣的工具生成服務列表。

    幾乎所有現代數字電視卡都沒有內建硬體 MPEG 解碼器。因此,應用程式需要獲取板卡提供的 MPEG-TS 流,將其分離成音訊、影片和其他資料並進行解碼。

  3. 有哪些數字電視應用程式?

    有多種媒體播放器應用程式能夠調諧到數字電影片道,包括 Kaffeine、Vlc、mplayer 和 MythTV。

    Kaffeine 致力於做到非常使用者友好,並且由一位核心驅動程式開發人員維護。

    這些以及其他應用程式的完整列表可以在以下網址找到:

    一些最受歡迎的如下連結:

    https://kde.org/applications/multimedia/org.kde.kaffeine

    KDE 媒體播放器,專注於數字電視支援

    https://www.linuxtv.org/vdrwiki/index.php/Main_Page

    Klaus Schmidinger 的影片磁碟錄影機

    https://linuxtv.org/downloadshttps://git.linuxtv.org/

    數字電視及其他媒體相關應用程式和核心驅動程式。那裡的 v4l-utils 包包含多個用於數字電視的多功能工具。

    http://sourceforge.net/projects/dvbtools/

    Dave Chapman 的 dvbtools 軟體包,包括 dvbstream 和 dvbtune

    http://www.dbox2.info/

    dBox2 上的 LinuxDVB

    http://www.tuxbox.org/

    TuxBox CVS 許多有趣的 DVB 應用程式和 dBox2 DVB 原始碼

    http://www.nenie.org/misc/mpsys/

    MPSYS:一個 MPEG2 系統庫和工具

    https://www.videolan.org/vlc/index.pt.html

    Vlc

    http://mplayerhq.hu/

    MPlayer

    http://xine.sourceforge.net/http://xinehq.de/

    Xine

    http://www.mythtv.org/

    MythTV - 模擬電視和數字電視 PVR

    http://dvbsnoop.sourceforge.net/

    DVB 嗅探程式,用於監控、分析、除錯、轉儲或檢視 dvb/mpeg/dsm-cc/mhp 流資訊(TS、PES、SECTION)

  4. 無法正確調諧訊號

    這可能是由許多問題引起的。根據我的個人經驗,通常電視卡比電視機需要更強的訊號,並且對噪聲更敏感。所以,也許您只需要更好的天線或佈線。然而,也可能是硬體或驅動程式問題。

    例如,如果您正在使用*沒有*模擬模組的 Technotrend/Hauppauge DVB-C 卡,您可能需要使用模組引數 adac=-1 (dvb-ttpci.o)。

    請參閱 linuxtv.org 上的常見問題解答頁面,因為它可能包含一些有價值的資訊:

    如果這不起作用,請查閱 linux-media 郵件列表檔案,看看其他人是否遇到過與您的硬體和/或數字電視服務提供商類似的問題:

    如果這些都不奏效,您可以嘗試向 linux-media 郵件列表傳送電子郵件,看看是否有人能提供一些啟發。電子郵件地址是 linux-media AT vger.kernel.org。

  5. dvb_net 裝置根本沒有給我任何資料包

    dvb0_0 介面上執行 tcpdump。這會將介面設定為混雜模式,因此它接受您使用 dvbnet 工具配置的 PID 的任何資料包。檢查是否有任何資料包的 IP 地址和 MAC 地址與您透過 ifconfigip addr 配置的相符。

    如果 tcpdump 沒有給出任何輸出,檢查 ifconfignetstat -ni 的輸出統計資訊。(注意:如果 MAC 地址錯誤,dvb_net 將不會收到任何輸入;因此您必須在檢查統計資訊之前執行 tcpdump。)如果根本沒有資料包,那麼 PID 可能錯誤。如果存在錯誤資料包,那麼 PID 要麼錯誤,要麼流不符合 MPE 標準(EN 301 192,http://www.etsi.org/)。例如,您可以使用 dvbsnoop 進行除錯。

  6. dvb_net 裝置沒有給我任何多播資料包

    檢查您的路由是否包含多播地址範圍。此外,請確保“透過反向路徑查詢進行源驗證”已停用。

    $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter"
    
  7. 所有這些需要載入的模組是什麼?

    為了使其更靈活並支援不同的硬體組合,媒體子系統以模組化方式編寫。

    因此,除了主晶片組的數字電視硬體模組外,它還需要載入前端驅動程式,以及數字電視核心。如果板卡還有遙控器,它還需要遙控器核心和遙控器表。如果板卡支援模擬電視,也會發生同樣的情況:需要載入 video4linux 的核心支援。

    實際的模組名稱是 Linux 核心版本特定的,因為,為了使媒體支援更靈活,事物會不時發生變化。