7.10. ivtv 驅動程式¶
作者:Hans Verkuil <hverkuil@xs4all.nl>
這是一個用於 Conexant cx23415/6 MPEG 編碼器/解碼器的 v4l2 裝置驅動程式。cx23415 可以進行編碼和解碼,cx23416 只能進行 MPEG 編碼。目前唯一提供完整解碼支援的卡是 Hauppauge PVR-350。
注意
此驅動程式需要最新的編碼器韌體(版本 2.06.039,大小 376836 位元組)。請從此處獲取韌體:
“普通”電視應用程式無法與此驅動程式配合使用,您需要能夠處理 MPEG 輸入的應用程式,例如 mplayer、xine、MythTV 等。
IVTV 專案的主要目標是為基於 iCompression iTVC15 或 Conexant CX23415/CX23416 MPEG 編解碼器的影片採集卡提供“潔淨室”Linux 開源驅動程式實現。
7.10.1. 功能¶
透過調諧器或 S-Video/複合影片和音訊線路輸入,進行廣播影片(和聲音)的硬體 mpeg2 採集。
在硬體支援的情況下,進行 FM 廣播的硬體 mpeg2 採集。
支援 NTSC、PAL、SECAM 制式,帶立體聲。
支援 SAP 和雙語傳輸。
支援原始 VBI(隱藏字幕和圖文電視)。
支援切片 VBI(隱藏字幕和圖文電視),並能夠將其插入到採集到的 MPEG 流中。
支援原始 YUV 和 PCM 輸入。
7.10.2. PVR-350(基於 CX23415)的附加功能¶
提供硬體 mpeg2 播放。
提供全面的 OSD(螢幕顯示:即圖形疊加在影片訊號上)。
提供幀緩衝(允許 X 應用程式出現在影片裝置上)。
支援原始 YUV 輸出。
- 重要提示:如果遇到問題,請首先閱讀此頁面:
https://help.ubuntu.com/community/Install_IVTV_Troubleshooting
7.10.3. 另請參閱¶
7.10.4. IRC¶
7.10.5. 裝置¶
目前最多允許 12 個 ivtv 板卡。
不具備影片輸出功能(即非 PVR350 卡)的卡缺少 vbi8、vbi16、video16 和 video48 裝置。它們也不支援用於 OSD 的幀緩衝裝置 /dev/fbx。
radio0 裝置可能存在也可能不存在,這取決於卡是否具有無線電調諧器。
以下是基本 v4l 裝置列表:
crw-rw---- 1 root video 81, 0 Jun 19 22:22 /dev/video0
crw-rw---- 1 root video 81, 16 Jun 19 22:22 /dev/video16
crw-rw---- 1 root video 81, 24 Jun 19 22:22 /dev/video24
crw-rw---- 1 root video 81, 32 Jun 19 22:22 /dev/video32
crw-rw---- 1 root video 81, 48 Jun 19 22:22 /dev/video48
crw-rw---- 1 root video 81, 64 Jun 19 22:22 /dev/radio0
crw-rw---- 1 root video 81, 224 Jun 19 22:22 /dev/vbi0
crw-rw---- 1 root video 81, 228 Jun 19 22:22 /dev/vbi8
crw-rw---- 1 root video 81, 232 Jun 19 22:22 /dev/vbi16
7.10.6. 基本裝置¶
每增加一塊卡,編號就會增加一。例如,/dev/video0 被列為“基本”編碼採集裝置,所以我們有:
/dev/video0 是第一張卡(卡 0)的編碼採集裝置
/dev/video1 是第二張卡(卡 1)的編碼採集裝置
/dev/video2 是第三張卡(卡 2)的編碼採集裝置
請注意,如果第一張卡沒有某個功能(例如沒有解碼器,因此沒有 video16),那麼第二張卡仍將使用 video17。簡單的規則是“將卡號新增到基本裝置號”。如果您有其他先被檢測到的採集卡(例如 WinTV PCI),那麼您必須告知 ivtv 模組,以便它從 1(或 2,或任何其他數字)開始計數。否則,裝置號可能會變得混亂。ivtv 的“ivtv_first_minor”模組選項可以用於此目的。
/dev/video0
編碼採集裝置。
只讀。
從此裝置讀取可獲取 MPEG1/2 程式流。示例:
cat /dev/video0 > my.mpg (you need to hit ctrl-c to exit)
/dev/video16
解碼器輸出裝置
只寫。僅當 MPEG 解碼器(即 CX23415)存在時才存在。
傳送到此裝置的 mpeg2 流將出現在所選影片顯示器上,音訊將出現線上路輸出/音訊輸出上。它僅適用於支援影片輸出的卡。示例:
cat my.mpg >/dev/video16
/dev/video24
原始音訊採集裝置。
只讀
來自當前選定調諧器或音訊線路輸入的原始音訊 PCM 立體聲流。從此裝置讀取會導致原始(有符號 16 位小端,48000 Hz,立體聲 pcm)採集。此裝置僅採集音訊。將來應由 ALSA 裝置取代。請注意,沒有相應的原始音訊輸出裝置,解碼器韌體中不支援此功能。
/dev/video32
原始影片採集裝置
只讀
來自當前影片輸入的原始 YUV 影片輸出。YUV 格式為 16x16 線性平鋪 NV12 格式 (V4L2_PIX_FMT_NV12_16L16)。
請注意,YUV 和 PCM 流不同步,因此它們的用途有限。
/dev/video48
原始影片顯示裝置
只寫。僅當 MPEG 解碼器(即 CX23415)存在時才存在。
向卡上的解碼器寫入 YUV 流。
/dev/radio0
無線電調諧器裝置
無法讀取或寫入。
用於啟用無線電調諧器並調諧到某個頻率。您無法使用此裝置讀取或寫入音訊流。一旦您使用此裝置調諧無線電,請使用 /dev/video24 讀取原始 pcm 流,或使用 /dev/video0 獲取帶黑屏影片的 mpeg2 流。
/dev/vbi0
“垂直消隱間隔”(圖文電視、CC、WSS 等)採集裝置
只讀
採集在垂直消隱間隔期間傳送的原始(或切片)影片資料。此資料用於編碼圖文電視、隱藏字幕、VPS、寬屏信令、電子節目指南資訊和其他服務。
/dev/vbi8
處理後的 vbi 反饋裝置
只讀。僅當 MPEG 解碼器(即 CX23415)存在時才存在。
嵌入在 MPEG 流中的切片 VBI 資料將在此裝置上重現。因此,在 /dev/video16 上播放錄製內容時,您可以從 /dev/vbi8 讀取嵌入的 VBI 資料。
/dev/vbi16
vbi “顯示”裝置
只寫。僅當 MPEG 解碼器(即 CX23415)存在時才存在。
可用於將切片 VBI 資料傳送到影片輸出聯結器。