From ab2ff0087e8ce777d9ac7cd5ecfa26518febc90a Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Wed, 16 Sep 2009 23:22:05 -0300 Subject: DocBook/media: Add isdb-t documentation From: Mauro Carvalho Chehab Adds ISDB-T_and_ISDB-Tsb_with_S2API spec converted into DocBook format. The text is authored by Patrick Boettcher, and was converted to DocBook by me. Priority: normal Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/DocBook/dvb/dvbapi.xml | 8 + linux/Documentation/DocBook/dvb/frontend.xml | 1 + linux/Documentation/DocBook/dvb/isdbt.xml | 313 +++++++++++++++++++++++++++ 3 files changed, 322 insertions(+) create mode 100644 linux/Documentation/DocBook/dvb/isdbt.xml (limited to 'linux/Documentation/DocBook') diff --git a/linux/Documentation/DocBook/dvb/dvbapi.xml b/linux/Documentation/DocBook/dvb/dvbapi.xml index d53ca4e98..4fc5b2347 100644 --- a/linux/Documentation/DocBook/dvb/dvbapi.xml +++ b/linux/Documentation/DocBook/dvb/dvbapi.xml @@ -30,6 +30,14 @@ +2.0.1 +2009-09-16 +mcc + +Added ISDB-T test originally written by Patrick Boettcher + + + 2.0.0 2009-09-06 mcc diff --git a/linux/Documentation/DocBook/dvb/frontend.xml b/linux/Documentation/DocBook/dvb/frontend.xml index 028c9f23f..9d89a7b94 100644 --- a/linux/Documentation/DocBook/dvb/frontend.xml +++ b/linux/Documentation/DocBook/dvb/frontend.xml @@ -1763,3 +1763,4 @@ modulation mode which can be one of the following: +&sub-isdbt; diff --git a/linux/Documentation/DocBook/dvb/isdbt.xml b/linux/Documentation/DocBook/dvb/isdbt.xml new file mode 100644 index 000000000..983b083fd --- /dev/null +++ b/linux/Documentation/DocBook/dvb/isdbt.xml @@ -0,0 +1,313 @@ +
+ ISDB-T frontend + This section describes shortly what are the possible parameters in the Linux + DVB-API called "S2API" and now DVB API 5 in order to tune an ISDB-T/ISDB-Tsb + demodulator: + + This ISDB-T/ISDB-Tsb API extension should reflect all information + needed to tune any ISDB-T/ISDB-Tsb hardware. Of course it is possible + that some very sophisticated devices won't need certain parameters to + tune. + + The information given here should help application writers to know how + to handle ISDB-T and ISDB-Tsb hardware using the Linux DVB-API. + + The details given here about ISDB-T and ISDB-Tsb are just enough to + basically show the dependencies between the needed parameter values, + but surely some information is left out. For more detailed information + see the following documents: + + ARIB STD-B31 - "Transmission System for Digital Terrestrial + Television Broadcasting" and + ARIB TR-B14 - "Operational Guidelines for Digital Terrestrial + Television Broadcasting". + + In order to read this document one has to have some knowledge the + channel structure in ISDB-T and ISDB-Tsb. I.e. it has to be known to + the reader that an ISDB-T channel consists of 13 segments, that it can + have up to 3 layer sharing those segments, and things like that. + + Parameters used by ISDB-T and ISDB-Tsb. + +
+ Parameters that are common with DVB-T and ATSC + +
+ <constant>DTV_FREQUENCY</constant> + + Central frequency of the channel. + + For ISDB-T the channels are usally transmitted with an offset of 143kHz. E.g. a + valid frequncy could be 474143 kHz. The stepping is bound to the bandwidth of + the channel which is 6MHz. + + As in ISDB-Tsb the channel consists of only one or three segments the + frequency step is 429kHz, 3*429 respectively. As for ISDB-T the + central frequency of the channel is expected. +
+ +
+ <constant>DTV_BANDWIDTH_HZ</constant> (optional) + + Possible values: + + For ISDB-T it should be always 6000000Hz (6MHz) + For ISDB-Tsb it can vary depending on the number of connected segments + + Note: Hardware specific values might be given here, but standard + applications should not bother to set a value to this field as + standard demods are ignoring it anyway. + + Bandwidth in ISDB-T is fixed (6MHz) or can be easily derived from + other parameters (DTV_ISDBT_SB_SEGMENT_IDX, + DTV_ISDBT_SB_SEGMENT_COUNT). +
+ +
+ <constant>DTV_DELIVERY_SYSTEM</constant> + + Possible values: SYS_ISDBT +
+ +
+ <constant>DTV_TRANSMISSION_MODE</constant> + + ISDB-T supports three carrier/symbol-size: 8K, 4K, 2K. It is called + 'mode' in the standard: Mode 1 is 2K, mode 2 is 4K, mode 3 is 8K + + Possible values: TRANSMISSION_MODE_2K, TRANSMISSION_MODE_8K, + TRANSMISSION_MODE_AUTO, TRANSMISSION_MODE_4K + + If DTV_TRANSMISSION_MODE is set the TRANSMISSION_MODE_AUTO the + hardware will try to find the correct FFT-size (if capable) and will + use TMCC to fill in the missing parameters. + + TRANSMISSION_MODE_4K is added at the same time as the other new parameters. +
+ +
+ <constant>DTV_GUARD_INTERVAL</constant> + + Possible values: GUARD_INTERVAL_1_32, GUARD_INTERVAL_1_16, GUARD_INTERVAL_1_8, + GUARD_INTERVAL_1_4, GUARD_INTERVAL_AUTO + + If DTV_GUARD_INTERVAL is set the GUARD_INTERVAL_AUTO the hardware will + try to find the correct guard interval (if capable) and will use TMCC to fill + in the missing parameters. +
+
+
ISDB-T only parameters + +
+ <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> + + If DTV_ISDBT_SOUND_BROADCASTING is '0' this bit-field represents whether + the channel is in partial reception mode or not. + + If '1' DTV_ISDBT_LAYERA_* values are assigned to the center segment and + DTV_ISDBT_LAYERA_SEGMENT_COUNT has to be '1'. + + If in addition DTV_ISDBT_SOUND_BROADCASTING is '1' + DTV_ISDBT_PARTIAL_RECEPTION represents whether this ISDB-Tsb channel + is consisting of one segment and layer or three segments and two layers. + + Possible values: 0, 1, -1 (AUTO) +
+ +
+ <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> + + This field represents whether the other DTV_ISDBT_*-parameters are + referring to an ISDB-T and an ISDB-Tsb channel. (See also + DTV_ISDBT_PARTIAL_RECEPTION). + + Possible values: 0, 1, -1 (AUTO) +
+ +
+ <constant>DTV_ISDBT_SB_SUBCHANNEL_ID</constant> + + This field only applies if DTV_ISDBT_SOUND_BROADCASTING is '1'. + + (Note of the author: This might not be the correct description of the + SUBCHANNEL-ID in all details, but it is my understanding of the technical + background needed to program a device) + + An ISDB-Tsb channel (1 or 3 segments) can be broadcasted alone or in a + set of connected ISDB-Tsb channels. In this set of channels every + channel can be received independently. The number of connected + ISDB-Tsb segment can vary, e.g. depending on the frequency spectrum + bandwidth available. + + Example: Assume 8 ISDB-Tsb connected segments are broadcasted. The + broadcaster has several possibilities to put those channels in the + air: Assuming a normal 13-segment ISDB-T spectrum he can align the 8 + segments from position 1-8 to 5-13 or anything in between. + + The underlying layer of segments are subchannels: each segment is + consisting of several subchannels with a predefined IDs. A sub-channel + is used to help the demodulator to synchronize on the channel. + + An ISDB-T channel is always centered over all sub-channels. As for + the example above, in ISDB-Tsb it is no longer as simple as that. + + The DTV_ISDBT_SB_SUBCHANNEL_ID parameter is used to give the + sub-channel ID of the segment to be demodulated. + + Possible values: 0 .. 41, -1 (AUTO) +
+ +
+ + <constant>DTV_ISDBT_SB_SEGMENT_IDX</constant> + + This field only applies if DTV_ISDBT_SOUND_BROADCASTING is '1'. + + DTV_ISDBT_SB_SEGMENT_IDX gives the index of the segment to be + demodulated for an ISDB-Tsb channel where several of them are + transmitted in the connected manner. + + Possible values: 0 .. DTV_ISDBT_SB_SEGMENT_COUNT - 1 + + Note: This value cannot be determined by an automatic channel search. +
+ +
+ <constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant> + + This field only applies if DTV_ISDBT_SOUND_BROADCASTING is '1'. + + DTV_ISDBT_SB_SEGMENT_COUNT gives the total count of connected ISDB-Tsb + channels. + + Possible values: 1 .. 13 + + Note: This value cannot be determined by an automatic channel search. +
+ +
+ Hierarchical layers + + ISDB-T channels can be coded hierarchically. As opposed to DVB-T in + ISDB-T hierarchical layers can be decoded simultaneously. For that + reason a ISDB-T demodulator has 3 viterbi and 3 reed-solomon-decoders. + + ISDB-T has 3 hierarchical layers which each can use a part of the + available segments. The total number of segments over all layers has + to 13 in ISDB-T. + +
+ <constant>DTV_ISDBT_LAYER_ENABLED</constant> + + Hierarchical reception in ISDB-T is achieved by enabling or disabling + layers in the decoding process. Setting all bits of + DTV_ISDBT_LAYER_ENABLED to '1' forces all layers (if applicable) to be + demodulated. This is the default. + + If the channel is in the partial reception mode + (DTV_ISDBT_PARTIAL_RECEPTION = 1) the central segment can be decoded + independently of the other 12 segments. In that mode layer A has to + have a SEGMENT_COUNT of 1. + + In ISDB-Tsb only layer A is used, it can be 1 or 3 in ISDB-Tsb + according to DTV_ISDBT_PARTIAL_RECEPTION. SEGMENT_COUNT must be filled + accordingly. + + Possible values: 0x1, 0x2, 0x4 (|-able) + + DTV_ISDBT_LAYER_ENABLED[0:0] - layer A + DTV_ISDBT_LAYER_ENABLED[1:1] - layer B + DTV_ISDBT_LAYER_ENABLED[2:2] - layer C + DTV_ISDBT_LAYER_ENABLED[31:3] unused +
+ +
+ <constant>DTV_ISDBT_LAYER*_FEC</constant> + + Possible values: FEC_AUTO, FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8 +
+ +
+ <constant>DTV_ISDBT_LAYER*_MODULATION</constant> + + Possible values: QAM_AUTO, QPSK, QAM_16, QAM_64, DQPSK + + Note: If layer C is DQPSK layer B has to be DQPSK. If layer B is DQPSK + and DTV_ISDBT_PARTIAL_RECEPTION=0 layer has to be DQPSK. +
+ +
+ <constant>DTV_ISDBT_LAYER*_SEGMENT_COUNT</constant> + + Possible values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1 (AUTO) + + Note: Truth table for DTV_ISDBT_SOUND_BROADCASTING and + DTV_ISDBT_PARTIAL_RECEPTION and LAYER*_SEGMENT_COUNT + + + + + + + PR + SB + Layer A width + Layer B width + Layer C width + total width + + + + 0 + 0 + 1 .. 13 + 1 .. 13 + 1 .. 13 + 13 + + + + 1 + 0 + 1 + 1 .. 13 + 1 .. 13 + 13 + + + + 0 + 1 + 1 + 0 + 0 + 1 + + + + 1 + 1 + 1 + 2 + 0 + 13 + + + + + + +
+ +
+ <constant>DTV_ISDBT_LAYER*_TIME_INTERLEAVING</constant> + + Possible values: 0, 1, 2, 3, -1 (AUTO) + + Note: The real inter-leaver depth-names depend on the mode (fft-size); the values + here are referring to what can be found in the TMCC-structure - + independent of the mode. +
+
+
+
\ No newline at end of file -- cgit v1.2.3 From 59f23b1145b408e08d8a59e8293e7f64a620684e Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Wed, 16 Sep 2009 23:29:00 -0300 Subject: DocBook/media: Add a missing spec file From: Mauro Carvalho Chehab kernel-sync: Priority: normal Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/DocBook/v4l/vidioc-cropcap.xml | 174 +++++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 linux/Documentation/DocBook/v4l/vidioc-cropcap.xml (limited to 'linux/Documentation/DocBook') diff --git a/linux/Documentation/DocBook/v4l/vidioc-cropcap.xml b/linux/Documentation/DocBook/v4l/vidioc-cropcap.xml new file mode 100644 index 000000000..816e90e28 --- /dev/null +++ b/linux/Documentation/DocBook/v4l/vidioc-cropcap.xml @@ -0,0 +1,174 @@ + + + ioctl VIDIOC_CROPCAP + &manvol; + + + + VIDIOC_CROPCAP + Information about the video cropping and scaling abilities + + + + + + int ioctl + int fd + int request + struct v4l2_cropcap +*argp + + + + + + Arguments + + + + fd + + &fd; + + + + request + + VIDIOC_CROPCAP + + + + argp + + + + + + + + + Description + + Applications use this function to query the cropping +limits, the pixel aspect of images and to calculate scale factors. +They set the type field of a v4l2_cropcap +structure to the respective buffer (stream) type and call the +VIDIOC_CROPCAP ioctl with a pointer to this +structure. Drivers fill the rest of the structure. The results are +constant except when switching the video standard. Remember this +switch can occur implicit when switching the video input or +output. + + + struct <structname>v4l2_cropcap</structname> + + &cs-str; + + + &v4l2-buf-type; + type + Type of the data stream, set by the application. +Only these types are valid here: +V4L2_BUF_TYPE_VIDEO_CAPTURE, +V4L2_BUF_TYPE_VIDEO_OUTPUT, +V4L2_BUF_TYPE_VIDEO_OVERLAY, and custom (driver +defined) types with code V4L2_BUF_TYPE_PRIVATE +and higher. + + + struct v4l2_rect + bounds + Defines the window within capturing or output is +possible, this may exclude for example the horizontal and vertical +blanking areas. The cropping rectangle cannot exceed these limits. +Width and height are defined in pixels, the driver writer is free to +choose origin and units of the coordinate system in the analog +domain. + + + struct v4l2_rect + defrect + Default cropping rectangle, it shall cover the +"whole picture". Assuming pixel aspect 1/1 this could be for example a +640 × 480 rectangle for NTSC, a +768 × 576 rectangle for PAL and SECAM centered over +the active picture area. The same co-ordinate system as for + bounds is used. + + + &v4l2-fract; + pixelaspect + This is the pixel aspect (y / x) when no +scaling is applied, the ratio of the actual sampling +frequency and the frequency required to get square +pixels.When cropping coordinates refer to square pixels, +the driver sets pixelaspect to 1/1. Other +common values are 54/59 for PAL and SECAM, 11/10 for NTSC sampled +according to []. + + + +
+ + + + + struct <structname>v4l2_rect</structname> + + &cs-str; + + + __s32 + left + Horizontal offset of the top, left corner of the +rectangle, in pixels. + + + __s32 + top + Vertical offset of the top, left corner of the +rectangle, in pixels. + + + __s32 + width + Width of the rectangle, in pixels. + + + __s32 + height + Height of the rectangle, in pixels. Width +and height cannot be negative, the fields are signed for +hysterical reasons. + + + + +
+
+ + + &return-value; + + + + EINVAL + + The &v4l2-cropcap; type is +invalid or the ioctl is not supported. This is not permitted for +video capture, output and overlay devices, which must support +VIDIOC_CROPCAP. + + + + +
+ + -- cgit v1.2.3 From 8b7b21d9c9a2ff4c17342dea5ba00981700356f5 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Wed, 16 Sep 2009 23:56:44 -0300 Subject: DocBook/media: add V4L2_PIX_FMT_TM6000 From: Mauro Carvalho Chehab This is a proprietary format found with Trident tm6000 series of chipsets. Priority: normal Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/DocBook/v4l/pixfmt.xml | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'linux/Documentation/DocBook') diff --git a/linux/Documentation/DocBook/v4l/pixfmt.xml b/linux/Documentation/DocBook/v4l/pixfmt.xml index ebfbed03d..7d396a378 100644 --- a/linux/Documentation/DocBook/v4l/pixfmt.xml +++ b/linux/Documentation/DocBook/v4l/pixfmt.xml @@ -777,6 +777,11 @@ kernel sources in the file Documentation/video4linux/cx2341x/README.hm url="http://www.thedirks.org/winnov/"> http://www.thedirks.org/winnov/ + + V4L2_PIX_FMT_TM6000 + 'TM60' + Used by Trident tm6000 + V4L2_PIX_FMT_YYUV 'YYUV' -- cgit v1.2.3 From 380baf85f6a0fe40c17e963b58eeda4cc26d8e26 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Thu, 17 Sep 2009 01:25:41 -0300 Subject: DocBook/media: fix some DocBook non-compliances From: Mauro Carvalho Chehab Priority: normal Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/DocBook/dvb/isdbt.xml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/DocBook') diff --git a/linux/Documentation/DocBook/dvb/isdbt.xml b/linux/Documentation/DocBook/dvb/isdbt.xml index 983b083fd..92855222f 100644 --- a/linux/Documentation/DocBook/dvb/isdbt.xml +++ b/linux/Documentation/DocBook/dvb/isdbt.xml @@ -96,7 +96,8 @@ in the missing parameters. -
ISDB-T only parameters +
+ ISDB-T only parameters
<constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> @@ -121,7 +122,7 @@ referring to an ISDB-T and an ISDB-Tsb channel. (See also DTV_ISDBT_PARTIAL_RECEPTION). - Possible values: 0, 1, -1 (AUTO) + Possible values: 0, 1, -1 (AUTO)
@@ -310,4 +311,4 @@
- \ No newline at end of file + -- cgit v1.2.3 From 225657c3a8c6a0fa8b203d8cd9012d25c1e8ab7e Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Thu, 17 Sep 2009 01:44:22 -0300 Subject: DocBook/media: Some xmlto or DTD's don't accept reference inside appendix From: Mauro Carvalho Chehab That was weird: on some distros, we need to remove tag for it to work. Priority: normal Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/DocBook/v4l/v4l2.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'linux/Documentation/DocBook') diff --git a/linux/Documentation/DocBook/v4l/v4l2.xml b/linux/Documentation/DocBook/v4l/v4l2.xml index 97801725b..937b4157a 100644 --- a/linux/Documentation/DocBook/v4l/v4l2.xml +++ b/linux/Documentation/DocBook/v4l/v4l2.xml @@ -397,9 +397,8 @@ and discussions on the V4L mailing list. &sub-compat; - + Function Reference - @@ -454,7 +453,6 @@ and discussions on the V4L mailing list. &sub-read; &sub-select; &sub-write; - -- cgit v1.2.3