README for the IVTV Devices Introduction ============ The ivtv modules are accessed through their device entries. This document describes these devices. Devices ======= There may be multiple devices depending on how many cards your system has installed. A maximum of 12 cards are allowed at the moment. Cards that don't have a video output capability (i.e. non PVR350 cards) lack the vbi8, vbi16, video16 and video48 devices. They also do not support the framebuffer device /dev/fbx for OSD. The radio0 device may or may not be present, depending on whether the card has a radio tuner or not. The eeprom output will tell you this. Here is a list of the base v4l devices: 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 Base devices ============ For every extra card you have the numbers increased by one. For example, /dev/video0 is listed as the 'base' encoding capture device so we have: /dev/video0 is the encoding capture device for the first card (card 0) /dev/video1 is the encoding capture device for the second card (card 1) /dev/video2 is the encoding capture device for the third card (card 2) Note that if the first card doesn't have a feature (eg no decoder, so no video16, the second card will still use video17. The simple rule is 'add the card number to the base device number'. If you have other capture cards (e.g. WinTV PCI) that are detected first, then you have to tell the ivtv module about it so that it will start counting at 1 (or 2, or whatever). Otherwise the device numbers can get confused. See the ivtv_first_minor module option for more information. /dev/video0 The encoding capture device(s). Read-only. Reading from this device results in an encoded mpeg2 capture from the selected ivtv inputs. This device multiplexes the selected audio and video inputs into the mpeg2 stream. Example: cat /dev/video0 > my.mpg (you need to hit ctrl-c to exit) /dev/video16 The decoder output device(s) Write-only. Only present if the MPEG decoder (i.e. CX23415) exists. An mpeg2 stream sent to this device will appear on the selected video display, audio will appear on the line-out/audio out. It is only available for cards that support video out. Example: cat my.mpg >/dev/video16 /dev/video24 The raw audio capture device(s). Read-only The raw audio PCM stereo stream from the currently selected tuner or audio line-in. Reading from this device results in a raw (signed 16 bit Little Endian, 48000 Hz, stereo pcm) capture from the selected ivtv inputs. This device only captures audio. /dev/video32 The raw video capture device(s) Read-only The raw YUV video output from the current video input. The YUV format is non-standard (HME12?) but with the yuv-fixup=1 ivtv module option it is converted to standard YUV format. /dev/video48 The raw video display device(s) Write-only. Only present if the MPEG decoder (i.e. CX23415) exists. Writes a YUV stream to the decoder of the card. Does not currently work. This is on the TODO list but at a low priority. /dev/radio0 The radio tuner device(s) Cannot be read or written. Used to enable the radio tuner and tune to a frequency. You cannot read or write audio streams with this device. Once you use this device to tune the radio, use /dev/video24 to read the raw pcm stream or /dev/video0 to get an mpeg2 stream with black video. /dev/vbi0 The 'vertical blank interval' (Teletext, CC, WSS etc) capture device(s) Read-only Captures the raw video data sent during the Vertical Blank Interval. This data is used to encode teletext, closed captions, VPS, widescreen signalling, electronic program guide information, and other services. See also README.vbi /dev/vbi8 Processed vbi feedback device(s) Read-only. Only present if the MPEG decoder (i.e. CX23415) exists. The sliced VBI data embedded in an MPEG stream is reproduced on this device. So while playing back a recording on /dev/video16, you can read the embedded VBI data from /dev/vbi8 /dev/vbi16 The vbi 'display' device(s) Write-only. Only present if the MPEG decoder (i.e. CX23415) exists. Can be used to send VBI data to the video-out connector. See also README.vbi /dev/fb[x] Only present if the MPEG decoder (i.e. CX23415) exists. This device is a linux framebuffer for the ivtv OSD display.