[media] doc-rst: Add ivtv documentation
authorMauro Carvalho Chehab <mchehab@s-opensource.com>
Sun, 17 Jul 2016 21:13:46 +0000 (18:13 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Mon, 18 Jul 2016 01:49:59 +0000 (22:49 -0300)
Convert ivtv documentation to rst, update the links there
and add to media/v4l-drivers book.

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Documentation/media/v4l-drivers/index.rst
Documentation/media/v4l-drivers/ivtv.rst

index 333f84b9c17e7ed17f48a314dc452e1ee92fe7b7..99409c6e2518ee2401efb87c4acd09f5958b68fe 100644 (file)
@@ -26,4 +26,5 @@ License".
        cx88
        davinci-vpbe
        fimc
+       ivtv
        zr364xx
index 2579b5b709ed6723aa75c7ad1a61a13dcc5aa05c..3ba464c4f9bf7ed77c7dc42cde79ae599ed88dca 100644 (file)
@@ -1,26 +1,32 @@
 
-ivtv release notes
-==================
+The ivtv driver
+===============
+
+Author: Hans Verkuil <hverkuil@xs4all.nl>
 
 This is a v4l2 device driver for the Conexant cx23415/6 MPEG encoder/decoder.
 The cx23415 can do both encoding and decoding, the cx23416 can only do MPEG
 encoding. Currently the only card featuring full decoding support is the
 Hauppauge PVR-350.
 
-NOTE: this driver requires the latest encoder firmware (version 2.06.039, size
-376836 bytes). Get the firmware from here:
+.. note::
+
+   #) This driver requires the latest encoder firmware (version 2.06.039, size
+      376836 bytes). Get the firmware from here:
 
-http://dl.ivtvdriver.org/ivtv/firmware/
+      https://linuxtv.org/downloads/firmware/#conexant
 
-NOTE: 'normal' TV applications do not work with this driver, you need
-an application that can handle MPEG input such as mplayer, xine, MythTV,
-etc.
+   #) 'normal' TV applications do not work with this driver, you need
+      an application that can handle MPEG input such as mplayer, xine, MythTV,
+      etc.
 
 The primary goal of the IVTV project is to provide a "clean room" Linux
 Open Source driver implementation for video capture cards based on the
 iCompression iTVC15 or Conexant CX23415/CX23416 MPEG Codec.
 
-Features:
+Features
+--------
+
  * Hardware mpeg2 capture of broadcast video (and sound) via the tuner or
    S-Video/Composite and audio line-in.
  * Hardware mpeg2 capture of FM radio where hardware support exists
@@ -31,7 +37,9 @@ Features:
    this into the captured MPEG stream.
  * Supports raw YUV and PCM input.
 
-Additional features for the PVR-350 (CX23415 based):
+Additional features for the PVR-350 (CX23415 based)
+---------------------------------------------------
+
  * Provides hardware mpeg2 playback
  * Provides comprehensive OSD (On Screen Display: ie. graphics overlaying the
    video signal)
@@ -40,20 +48,22 @@ Additional features for the PVR-350 (CX23415 based):
  * Supports raw YUV output.
 
 IMPORTANT: In case of problems first read this page:
-          http://www.ivtvdriver.org/index.php/Troubleshooting
+       https://help.ubuntu.com/community/Install_IVTV_Troubleshooting
 
-See also:
+See also
+--------
 
-Homepage + Wiki
-http://www.ivtvdriver.org
+https://linuxtv.org
 
 IRC
-irc://irc.freenode.net/ivtv-dev
+---
+
+irc://irc.freenode.net/#v4l
 
 ----------------------------------------------------------
 
 Devices
-=======
+-------
 
 A maximum of 12 ivtv boards are allowed at the moment.
 
@@ -65,25 +75,28 @@ The radio0 device may or may not be present, depending on whether the
 card has a radio tuner or not.
 
 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
+
+.. code-block:: none
+
+       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)
+- /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
@@ -94,93 +107,111 @@ whatever). Otherwise the device numbers can get confusing. The ivtv
 'ivtv_first_minor' module option can be used for that.
 
 
-/dev/video0
-The encoding capture device(s).
-Read-only.
+- /dev/video0
+
+  The encoding capture device(s).
+
+  Read-only.
+
+  Reading from this device gets you the MPEG1/2 program stream.
+  Example:
+
+  .. code-block:: none
+
+       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:
+
+  .. code-block:: none
+
+       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.
+  This device only captures audio. This should be replaced by an ALSA
+  device in the future.
+  Note that there is no corresponding raw audio output device, this is
+  not supported in the decoder firmware.
+
 
-Reading from this device gets you the MPEG1/2 program stream.
-Example:
+- /dev/video32
 
-cat /dev/video0 > my.mpg (you need to hit ctrl-c to exit)
+  The raw video capture device(s)
 
+  Read-only
 
-/dev/video16
-The decoder output device(s)
-Write-only. Only present if the MPEG decoder (i.e. CX23415) exists.
+  The raw YUV video output from the current video input. The YUV format
+  is non-standard (V4L2_PIX_FMT_HM12).
 
-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:
+  Note that the YUV and PCM streams are not synchronized, so they are of
+  limited use.
 
-cat my.mpg >/dev/video16
 
+- /dev/video48
 
-/dev/video24
-The raw audio capture device(s).
-Read-only
+  The raw video display device(s)
 
-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.
-This device only captures audio. This should be replaced by an ALSA
-device in the future.
-Note that there is no corresponding raw audio output device, this is
-not supported in the decoder firmware.
+  Write-only. Only present if the MPEG decoder (i.e. CX23415) exists.
 
+  Writes a YUV stream to the decoder of the card.
 
-/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 (V4L2_PIX_FMT_HM12).
+- /dev/radio0
 
-Note that the YUV and PCM streams are not synchronized, so they are of
-limited use.
+  The radio tuner device(s)
 
+  Cannot be read or written.
 
-/dev/video48
-The raw video display device(s)
-Write-only. Only present if the MPEG decoder (i.e. CX23415) exists.
+  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.
 
-Writes a YUV stream to the decoder of the card.
 
+- /dev/vbi0
 
-/dev/radio0
-The radio tuner device(s)
-Cannot be read or written.
+  The 'vertical blank interval' (Teletext, CC, WSS etc) capture device(s)
 
-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.
+  Read-only
 
+  Captures the raw (or sliced) 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.
 
-/dev/vbi0
-The 'vertical blank interval' (Teletext, CC, WSS etc) capture device(s)
-Read-only
 
-Captures the raw (or sliced) 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.
+- /dev/vbi8
 
+  Processed vbi feedback device(s)
 
-/dev/vbi8
-Processed vbi feedback device(s)
-Read-only. Only present if the MPEG decoder (i.e. CX23415) exists.
+  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.
+  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.
+- /dev/vbi16
 
-Can be used to send sliced VBI data to the video-out connector.
+  The vbi 'display' device(s)
 
----------------------------------
+  Write-only. Only present if the MPEG decoder (i.e. CX23415) exists.
 
-Hans Verkuil <hverkuil@xs4all.nl>
+  Can be used to send sliced VBI data to the video-out connector.