1 2ivtv release notes 3================== 4 5This is a v4l2 device driver for the Conexant cx23415/6 MPEG encoder/decoder. 6The cx23415 can do both encoding and decoding, the cx23416 can only do MPEG 7encoding. Currently the only card featuring full decoding support is the 8Hauppauge PVR-350. 9 10NOTE: this driver requires the latest encoder firmware (version 2.06.039, size 11376836 bytes). Get the firmware from here: 12 13http://dl.ivtvdriver.org/ivtv/firmware/firmware.tar.gz 14 15NOTE: 'normal' TV applications do not work with this driver, you need 16an application that can handle MPEG input such as mplayer, xine, MythTV, 17etc. 18 19The primary goal of the IVTV project is to provide a "clean room" Linux 20Open Source driver implementation for video capture cards based on the 21iCompression iTVC15 or Conexant CX23415/CX23416 MPEG Codec. 22 23Features: 24 * Hardware mpeg2 capture of broadcast video (and sound) via the tuner or 25 S-Video/Composite and audio line-in. 26 * Hardware mpeg2 capture of FM radio where hardware support exists 27 * Supports NTSC, PAL, SECAM with stereo sound 28 * Supports SAP and bilingual transmissions. 29 * Supports raw VBI (closed captions and teletext). 30 * Supports sliced VBI (closed captions and teletext) and is able to insert 31 this into the captured MPEG stream. 32 * Supports raw YUV and PCM input. 33 34Additional features for the PVR-350 (CX23415 based): 35 * Provides hardware mpeg2 playback 36 * Provides comprehensive OSD (On Screen Display: ie. graphics overlaying the 37 video signal) 38 * Provides a framebuffer (allowing X applications to appear on the video 39 device) (this framebuffer is not yet part of the kernel. In the meantime it 40 is available from www.ivtvdriver.org). 41 * Supports raw YUV output. 42 43IMPORTANT: In case of problems first read this page: 44 http://www.ivtvdriver.org/index.php/Troubleshooting 45 46See also: 47 48Homepage + Wiki 49http://www.ivtvdriver.org 50 51IRC 52irc://irc.freenode.net/ivtv-dev 53 54---------------------------------------------------------- 55 56Devices 57======= 58 59A maximum of 12 ivtv boards are allowed at the moment. 60 61Cards that don't have a video output capability (i.e. non PVR350 cards) 62lack the vbi8, vbi16, video16 and video48 devices. They also do not 63support the framebuffer device /dev/fbx for OSD. 64 65The radio0 device may or may not be present, depending on whether the 66card has a radio tuner or not. 67 68Here is a list of the base v4l devices: 69crw-rw---- 1 root video 81, 0 Jun 19 22:22 /dev/video0 70crw-rw---- 1 root video 81, 16 Jun 19 22:22 /dev/video16 71crw-rw---- 1 root video 81, 24 Jun 19 22:22 /dev/video24 72crw-rw---- 1 root video 81, 32 Jun 19 22:22 /dev/video32 73crw-rw---- 1 root video 81, 48 Jun 19 22:22 /dev/video48 74crw-rw---- 1 root video 81, 64 Jun 19 22:22 /dev/radio0 75crw-rw---- 1 root video 81, 224 Jun 19 22:22 /dev/vbi0 76crw-rw---- 1 root video 81, 228 Jun 19 22:22 /dev/vbi8 77crw-rw---- 1 root video 81, 232 Jun 19 22:22 /dev/vbi16 78 79Base devices 80============ 81 82For every extra card you have the numbers increased by one. For example, 83/dev/video0 is listed as the 'base' encoding capture device so we have: 84 85 /dev/video0 is the encoding capture device for the first card (card 0) 86 /dev/video1 is the encoding capture device for the second card (card 1) 87 /dev/video2 is the encoding capture device for the third card (card 2) 88 89Note that if the first card doesn't have a feature (eg no decoder, so no 90video16, the second card will still use video17. The simple rule is 'add 91the card number to the base device number'. If you have other capture 92cards (e.g. WinTV PCI) that are detected first, then you have to tell 93the ivtv module about it so that it will start counting at 1 (or 2, or 94whatever). Otherwise the device numbers can get confusing. The ivtv 95'ivtv_first_minor' module option can be used for that. 96 97 98/dev/video0 99The encoding capture device(s). 100Read-only. 101 102Reading from this device gets you the MPEG1/2 program stream. 103Example: 104 105cat /dev/video0 > my.mpg (you need to hit ctrl-c to exit) 106 107 108/dev/video16 109The decoder output device(s) 110Write-only. Only present if the MPEG decoder (i.e. CX23415) exists. 111 112An mpeg2 stream sent to this device will appear on the selected video 113display, audio will appear on the line-out/audio out. It is only 114available for cards that support video out. Example: 115 116cat my.mpg >/dev/video16 117 118 119/dev/video24 120The raw audio capture device(s). 121Read-only 122 123The raw audio PCM stereo stream from the currently selected 124tuner or audio line-in. Reading from this device results in a raw 125(signed 16 bit Little Endian, 48000 Hz, stereo pcm) capture. 126This device only captures audio. This should be replaced by an ALSA 127device in the future. 128Note that there is no corresponding raw audio output device, this is 129not supported in the decoder firmware. 130 131 132/dev/video32 133The raw video capture device(s) 134Read-only 135 136The raw YUV video output from the current video input. The YUV format 137is non-standard (V4L2_PIX_FMT_HM12). 138 139Note that the YUV and PCM streams are not synchronized, so they are of 140limited use. 141 142 143/dev/video48 144The raw video display device(s) 145Write-only. Only present if the MPEG decoder (i.e. CX23415) exists. 146 147Writes a YUV stream to the decoder of the card. 148 149 150/dev/radio0 151The radio tuner device(s) 152Cannot be read or written. 153 154Used to enable the radio tuner and tune to a frequency. You cannot 155read or write audio streams with this device. Once you use this 156device to tune the radio, use /dev/video24 to read the raw pcm stream 157or /dev/video0 to get an mpeg2 stream with black video. 158 159 160/dev/vbi0 161The 'vertical blank interval' (Teletext, CC, WSS etc) capture device(s) 162Read-only 163 164Captures the raw (or sliced) video data sent during the Vertical Blank 165Interval. This data is used to encode teletext, closed captions, VPS, 166widescreen signalling, electronic program guide information, and other 167services. 168 169 170/dev/vbi8 171Processed vbi feedback device(s) 172Read-only. Only present if the MPEG decoder (i.e. CX23415) exists. 173 174The sliced VBI data embedded in an MPEG stream is reproduced on this 175device. So while playing back a recording on /dev/video16, you can 176read the embedded VBI data from /dev/vbi8. 177 178 179/dev/vbi16 180The vbi 'display' device(s) 181Write-only. Only present if the MPEG decoder (i.e. CX23415) exists. 182 183Can be used to send sliced VBI data to the video-out connector. 184 185--------------------------------- 186 187Hans Verkuil <hverkuil@xs4all.nl> 188