DocBook/Makefile: add references for several dvb structures
Subsystems (2)
A message that is not in the archive (sent off-list or not yet received): [email protected]
PATCH 1/15 DocBook/Makefile: add references for several dvb structures
With this change, it is now possible to discover the gap between the API defined inside include/dvb/frontend.h and the one documented into the specs.
Documentation/DocBook/media/Makefile +10 -4
@@ -51,6 +51,7 @@ FUNCS = \ IOCTLS = \ $(shell perl -ne 'print "$$1 " if /\#define\s+([^\s]+)\s+_IO/' $(srctree)/include/linux/videodev2.h) \ + $(shell perl -ne 'print "$$1 " if /\#define\s+([^\s]+)\s+_IO/' $(srctree)/include/linux/dvb/frontend.h) \ $(shell perl -ne 'print "$$1 " if /\#define\s+([^\s]+)\s+_IO/' $(srctree)/include/linux/media.h) \ $(shell perl -ne 'print "$$1 " if /\#define\s+([^\s]+)\s+_IO/' $(srctree)/include/linux/v4l2-subdev.h) \ VIDIOC_SUBDEV_G_FRAME_INTERVAL \
@@ -60,16 +61,19 @@ IOCTLS = \ VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL \ TYPES = \ - $(shell perl -ne 'print "$$1 " if /^typedef\s+[^\s]+\s+([^\s]+)\;/' $(srctree)/include/linux/videodev2.h) + $(shell perl -ne 'print "$$1 " if /^typedef\s+[^\s]+\s+([^\s]+)\;/' $(srctree)/include/linux/videodev2.h) \ + $(shell perl -ne 'print "$$1 " if /^}\s+([a-z0-9_]+_t)/' $(srctree)/include/linux/dvb/frontend.h) ENUMS = \ $(shell perl -ne 'print "$$1 " if /^enum\s+([^\s]+)\s+/' $(srctree)/include/linux/videodev2.h) \ + $(shell perl -ne 'print "$$1 " if /^enum\s+([^\s]+)\s+/' $(srctree)/include/linux/dvb/frontend.h) \ $(shell perl -ne 'print "$$1 " if /^enum\s+([^\s]+)\s+/' $(srctree)/include/linux/media.h) \ $(shell perl -ne 'print "$$1 " if /^enum\s+([^\s]+)\s+/' $(srctree)/include/linux/v4l2-mediabus.h) \ $(shell perl -ne 'print "$$1 " if /^enum\s+([^\s]+)\s+/' $(srctree)/include/linux/v4l2-subdev.h) STRUCTS = \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/videodev2.h) \ + $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/dvb/frontend.h) \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/media.h) \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/v4l2-subdev.h) \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/v4l2-mediabus.h)
@@ -116,9 +120,11 @@ DOCUMENTED = \ -e "s/v4l2\-mpeg\-vbi\-ITV0/v4l2-mpeg-vbi-itv0-1/g" DVB_DOCUMENTED = \ - -e "s,\(define \)\([A-Z0-9_]\+\)\(\s\+_IO\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ - -e "s/\(linkend\=\"\)FE_SET_PROPERTY/\1FE_GET_PROPERTY/g" - + -e "s,\(define\s\+\)\([A-Z0-9_]\+\)\(\s\+_IO\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ + -e "s/\(linkend\=\"\)FE_SET_PROPERTY/\1FE_GET_PROPERTY/g" \ + -e "s,\(struct\s\+\)\([a-z0-9_]\+\)\(\s\+{\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ + -e "s,\(}\s\+\)\([a-z0-9_]\+_t\+\),\1\<link linkend=\"\2\">\2\<\/link\>,g" \ +# -e "s,\(\s\+\)\(FE_[A-Z0-9_]\+\)\([\s\=\,]*\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ # # Media targets and dependencies
Signature · 1 line
1.7.1
PATCH 2/15 DocBook/frontend.xml: Better document fe_type_t
In reply to a message not in the archiveThe fe_type_t documentation was incomplete and not linked to the dvb/frontend.h.xml. Properly document it.
Also, drop a note that newer formats are only supported via FE_GET_PROPERTY/FE_GET_SET_PROPERTY ioctls.
Documentation/DocBook/media/Makefile +1 -0
@@ -124,6 +124,7 @@ DVB_DOCUMENTED = \ -e "s/\(linkend\=\"\)FE_SET_PROPERTY/\1FE_GET_PROPERTY/g" \ -e "s,\(struct\s\+\)\([a-z0-9_]\+\)\(\s\+{\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -e "s,\(}\s\+\)\([a-z0-9_]\+_t\+\),\1\<link linkend=\"\2\">\2\<\/link\>,g" \ + -e ":a;s/\(linkend=\".*\)_\(.*\">\)/\1-\2/;ta" \ # -e "s,\(\s\+\)\(FE_[A-Z0-9_]\+\)\([\s\=\,]*\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ #
Documentation/DocBook/media/dvb/frontend.xml +35 -10
54 lines not on this page · raw message
Signature · 1 line
1.7.1
PATCH 3/15 DocBook/frontend.xml: Link DVB S2API parameters
In reply to a message not in the archiveAssociate the frontend.h DVB S2API parmeters to the corresponding documentation at the spec.
Documentation/DocBook/media/Makefile +2 -0
@@ -124,7 +124,9 @@ DVB_DOCUMENTED = \ -e "s/\(linkend\=\"\)FE_SET_PROPERTY/\1FE_GET_PROPERTY/g" \ -e "s,\(struct\s\+\)\([a-z0-9_]\+\)\(\s\+{\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -e "s,\(}\s\+\)\([a-z0-9_]\+_t\+\),\1\<link linkend=\"\2\">\2\<\/link\>,g" \ + -e "s,\(define\s\+\)\(DTV_[A-Z0-9_]\+\)\(\s\+[0-9]\+\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -e ":a;s/\(linkend=\".*\)_\(.*\">\)/\1-\2/;ta" \ + -e "s,DTV-ISDBT-LAYER[A-C],DTV-ISDBT-LAYER,g" \ # -e "s,\(\s\+\)\(FE_[A-Z0-9_]\+\)\([\s\=\,]*\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ #
Documentation/DocBook/media/dvb/dvbproperty.xml +17 -17
@@ -199,7 +199,7 @@ get/set up to 64 properties. The actual meaning of each property is described on <section id="fe_property_common"> <title>Parameters that are common to all Digital TV standards</title> - <section id="DTV_FREQUENCY"> + <section id="DTV-FREQUENCY"> <title><constant>DTV_FREQUENCY</constant></title> <para>Central frequency of the channel, in HZ.</para>
@@ -214,7 +214,7 @@ get/set up to 64 properties. The actual meaning of each property is described on central frequency of the channel is expected.</para> </section> - <section id="DTV_BANDWIDTH_HZ"> + <section id="DTV-BANDWIDTH-HZ"> <title><constant>DTV_BANDWIDTH_HZ</constant></title> <para>Bandwidth for the channel, in HZ.</para>
@@ -241,7 +241,7 @@ get/set up to 64 properties. The actual meaning of each property is described on <para>6) In addition, DVB-T2 supports 1.172, 5 and 10MHz.</para> </section> - <section id="DTV_DELIVERY_SYSTEM"> + <section id="DTV-DELIVERY-SYSTEM"> <title><constant>DTV_DELIVERY_SYSTEM</constant></title> <para>Specifies the type of Delivery system</para>
@@ -271,7 +271,7 @@ typedef enum fe_delivery_system { </section> - <section id="DTV_TRANSMISSION_MODE"> + <section id="DTV-TRANSMISSION-MODE"> <title><constant>DTV_TRANSMISSION_MODE</constant></title> <para>Specifies the number of carriers used by the standard</para>
@@ -300,7 +300,7 @@ typedef enum fe_transmit_mode { <para>4) DVB-T2 specifies 1K, 2K, 4K, 8K, 16K and 32K.</para> </section> - <section id="DTV_GUARD_INTERVAL"> + <section id="DTV-GUARD-INTERVAL"> <title><constant>DTV_GUARD_INTERVAL</constant></title> <para>Possible values are:</para>
@@ -359,10 +359,10 @@ typedef enum fe_guard_interval { <section id="isdbt-new-parms"> <title>ISDB-T only parameters</title> - <section id="isdbt-part-rec"> + <section id="DTV-ISDBT-PARTIAL-RECEPTION"> <title><constant>DTV_ISDBT_PARTIAL_RECEPTION</constant></title> - <para><constant>If DTV_ISDBT_SOUND_BROADCASTING</constant> is '0' this bit-field represents whether + <para>If <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '0' this bit-field represents whether the channel is in partial reception mode or not.</para> <para>If '1' <constant>DTV_ISDBT_LAYERA_*</constant> values are assigned to the center segment and
@@ -375,7 +375,7 @@ typedef enum fe_guard_interval { <para>Possible values: 0, 1, -1 (AUTO)</para> </section> - <section id="isdbt-sound-bcast"> + <section id="DTV-ISDBT-SOUND-BROADCASTING"> <title><constant>DTV_ISDBT_SOUND_BROADCASTING</constant></title> <para>This field represents whether the other DTV_ISDBT_*-parameters are
@@ -385,7 +385,7 @@ typedef enum fe_guard_interval { <para>Possible values: 0, 1, -1 (AUTO)</para> </section> - <section id="isdbt-sb-ch-id"> + <section id="DTV-ISDBT-SB-SUBCHANNEL-ID"> <title><constant>DTV_ISDBT_SB_SUBCHANNEL_ID</constant></title> <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para>
@@ -418,7 +418,7 @@ typedef enum fe_guard_interval { <para>Possible values: 0 .. 41, -1 (AUTO)</para> </section> - <section id="isdbt-sb-seg-idx"> + <section id="DTV-ISDBT-SB-SEGMENT-IDX"> <title><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant></title>
@@ -433,7 +433,7 @@ typedef enum fe_guard_interval { <para>Note: This value cannot be determined by an automatic channel search.</para> </section> - <section id="isdbt-sb-seg-cnt"> + <section id="DTV-ISDBT-SB-SEGMENT-COUNT"> <title><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant></title> <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para>
@@ -457,7 +457,7 @@ typedef enum fe_guard_interval { available segments. The total number of segments over all layers has to 13 in ISDB-T.</para> - <section id="isdbt-layer-ena"> + <section id="DTV-ISDBT-LAYER-ENABLED"> <title><constant>DTV_ISDBT_LAYER_ENABLED</constant></title> <para>Hierarchical reception in ISDB-T is achieved by enabling or disabling
@@ -482,13 +482,13 @@ typedef enum fe_guard_interval { <para><constant>DTV_ISDBT_LAYER_ENABLED[31:3]</constant> unused</para> </section> - <section id="isdbt-layer-fec"> + <section id="DTV-ISDBT-LAYER-FEC"> <title><constant>DTV_ISDBT_LAYER*_FEC</constant></title> <para>Possible values: <constant>FEC_AUTO</constant>, <constant>FEC_1_2</constant>, <constant>FEC_2_3</constant>, <constant>FEC_3_4</constant>, <constant>FEC_5_6</constant>, <constant>FEC_7_8</constant></para> </section> - <section id="isdbt-layer-mod"> + <section id="DTV-ISDBT-LAYER-MODULATION"> <title><constant>DTV_ISDBT_LAYER*_MODULATION</constant></title> <para>Possible values: <constant>QAM_AUTO</constant>, QP<constant>SK, QAM_16</constant>, <constant>QAM_64</constant>, <constant>DQPSK</constant></para>
@@ -497,7 +497,7 @@ typedef enum fe_guard_interval { and <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>=0 layer has to be <constant>DQPSK</constant>.</para> </section> - <section id="isdbt-layer-seg-cnt"> + <section id="DTV-ISDBT-LAYER-SEGMENT-COUNT"> <title><constant>DTV_ISDBT_LAYER*_SEGMENT_COUNT</constant></title> <para>Possible values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1 (AUTO)</para>
@@ -560,7 +560,7 @@ typedef enum fe_guard_interval { </section> - <section id="isdbt_layer_t_interl"> + <section id="DTV-ISDBT-LAYER-TIME-INTERLEAVING"> <title><constant>DTV_ISDBT_LAYER*_TIME_INTERLEAVING</constant></title> <para>Possible values: 0, 1, 2, 3, -1 (AUTO)</para>
@@ -578,7 +578,7 @@ typedef enum fe_guard_interval { support is currently in the early stages development so expect this section to grow and become more detailed with time.</para> - <section id="dvbt2-plp-id"> + <section id="DTV-DVBT2-PLP-ID"> <title><constant>DTV_DVBT2_PLP_ID</constant></title> <para>DVB-T2 supports Physical Layer Pipes (PLP) to allow transmission of
Signature · 1 line
1.7.1
PATCH 4/15 DocBook/frontend.xml: Correlate dvb delivery systems
In reply to a message not in the archiveAs the DVB API provides two ways to specify the delivery systems, correlate both ways into a table.
Documentation/DocBook/media/dvb/frontend.xml +11 -6
@@ -23,40 +23,45 @@ cards, in which case there exists no frontend device.</para> <section id="fe-type-t"> <title>Frontend type</title> -<para>For historical reasons frontend types are named after the type of modulation used in +<para>For historical reasons, frontend types are named by the type of modulation used in transmission. The fontend types are given by fe_type_t type, defined as:</para> <table pgwide="1" frame="none" id="fe-type"> <title>Frontend types</title> -<tgroup cols="2"> +<tgroup cols="3"> &cs-def; <thead> <row> <entry>fe_type</entry> <entry>Description</entry> + <entry><link linkend="DTV-DELIVERY-SYSTEM">DTV_DELIVERY_SYSTEM</link> equivalent type</entry> </row> </thead> <tbody valign="top"> <row> <entry id="FE_QPSK"><constant>FE_QPSK</constant></entry> <entry>For DVB-S standard</entry> + <entry><constant>SYS_DVBS</constant></entry> </row> <row> <entry id="FE_QAM"><constant>FE_QAM</constant></entry> - <entry>For DVB-C standard</entry> + <entry>For DVB-C annex A/C standard</entry> + <entry><constant>SYS_DVBC_ANNEX_AC</constant></entry> </row> <row> <entry id="FE_OFDM"><constant>FE_OFDM</constant></entry> - <entry>For DVB-T standard. Also used for ISDB-T on compatibility mode</entry> + <entry>For DVB-T standard</entry> + <entry><constant>SYS_DVBT</constant></entry> </row> <row> <entry id="FE_ATSC"><constant>FE_ATSC</constant></entry> - <entry>For ATSC standard (terrestrial or cable)</entry> + <entry>For ATSC standard (terrestrial) or for DVB-C Annex B (cable) used in US.</entry> + <entry><constant>SYS_ATSC</constant> (terrestrial) or <constant>SYS_DVBC_ANNEX_B</constant> (cable)</entry> </row> </tbody></tgroup></table> <para>Newer formats like DVB-S2, ISDB-T, ISDB-S and DVB-T2 are not described at the above, as they're -supported via the new <link linkend="FE_GET_SET_PROPERTY">FE_GET_PROPERTY/FE_GET_SET_PROPERTY</link> method. +supported via the new <link linkend="FE_GET_SET_PROPERTY">FE_GET_PROPERTY/FE_GET_SET_PROPERTY</link> ioctl's, using the <link linkend="DTV-DELIVERY-SYSTEM">DTV_DELIVERY_SYSTEM</link> parameter. </para> </section>
Signature · 1 line
1.7.1
PATCH 5/15 DocBook/frontend.xml: add references for some missing info
In reply to a message not in the archiveThe frontend.h.xml now references to the main document. However, several references are missed.
Links the trivial ones with the corresponding API descriptions.
While here, updates the main API to reflect the API improvements.
Documentation/DocBook/media/Makefile +1 -1
@@ -120,13 +120,13 @@ DOCUMENTED = \ -e "s/v4l2\-mpeg\-vbi\-ITV0/v4l2-mpeg-vbi-itv0-1/g" DVB_DOCUMENTED = \ - -e "s,\(define\s\+\)\([A-Z0-9_]\+\)\(\s\+_IO\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -e "s/\(linkend\=\"\)FE_SET_PROPERTY/\1FE_GET_PROPERTY/g" \ -e "s,\(struct\s\+\)\([a-z0-9_]\+\)\(\s\+{\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -e "s,\(}\s\+\)\([a-z0-9_]\+_t\+\),\1\<link linkend=\"\2\">\2\<\/link\>,g" \ -e "s,\(define\s\+\)\(DTV_[A-Z0-9_]\+\)\(\s\+[0-9]\+\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -e ":a;s/\(linkend=\".*\)_\(.*\">\)/\1-\2/;ta" \ -e "s,DTV-ISDBT-LAYER[A-C],DTV-ISDBT-LAYER,g" \ + -e "s,\(define\s\+\)\([A-Z0-9_]\+\)\(\s\+_IO\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ # -e "s,\(\s\+\)\(FE_[A-Z0-9_]\+\)\([\s\=\,]*\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ #
Documentation/DocBook/media/dvb/frontend.xml +130 -74
314 lines not on this page · raw message
Signature · 1 line
1.7.1
PATCH 6/15 DocBook/frontend.xml: Better describe the frontend parameters
In reply to a message not in the archiveUpdate the DVB parameter structs to reflect VSB modulation and improve a few descriptions.
Documentation/DocBook/media/dvb/frontend.xml +19 -14
@@ -262,6 +262,15 @@ OFDM frontends the <constant>frequency</constant> specifies the absolute frequen }; </programlisting> </section> +<section id="dvb-vsb-parameters"> +<title>VSB parameters</title> +<para>DVB-T frontends are supported by the <constant>dvb_vsb_parameters</constant> structure:</para> +<programlisting> +struct dvb_vsb_parameters { + fe_modulation_t modulation; /⋆ modulation type (see above) ⋆/ +}; +</programlisting> +</section> <section id="dvb-ofdm-parameters"> <title>OFDM parameters</title> <para>DVB-T frontends are supported by the <constant>dvb_ofdm_parameters</constant> structure:</para>
@@ -277,15 +286,6 @@ OFDM frontends the <constant>frequency</constant> specifies the absolute frequen }; </programlisting> </section> -<section id="dvb-vsb-parameters"> -<title>VSB parameters</title> -<para>DVB-T frontends are supported by the <constant>dvb_vsb_parameters</constant> structure:</para> -<programlisting> -struct dvb_vsb_parameters { - fe_modulation_t modulation; /⋆ modulation type (see above) ⋆/ -}; -</programlisting> -</section> <section id="fe-spectral-inversion-t"> <title>frontend spectral inversion</title> <para>The Inversion field can take one of these values:
@@ -304,7 +304,9 @@ itself. </section> <section id="fe-code-rate-t"> <title>frontend code rate</title> -<para>The possible values for the <constant>FEC_inner</constant> field are +<para>The possible values for the <constant>fec_inner</constant> field used on +<link refend="dvb-qpsk-parameters"><constant>struct dvb_qpsk_parameters</constant></link> and +<link refend="dvb-qam-parameters"><constant>struct dvb_qam_parameters</constant></link> are: </para> <programlisting> typedef enum fe_code_rate {
@@ -327,9 +329,12 @@ detection. </para> </section> <section id="fe-modulation-t"> -<title>frontend modulation type for QAM and OFDM</title> -<para>For cable and terrestrial frontends (QAM and OFDM) one also has to specify the quadrature -modulation mode which can be one of the following: +<title>frontend modulation type for QAM, OFDM and VSB</title> +<para>For cable and terrestrial frontends, e. g. for +<link refend="dvb-qam-parameters"><constant>struct dvb_qpsk_parameters</constant></link>, +<link refend="dvb-ofdm-parameters"><constant>struct dvb_qam_parameters</constant></link> and +<link refend="dvb-vsb-parameters"><constant>struct dvb_qam_parameters</constant></link>, +it needs to specify the quadrature modulation mode which can be one of the following: </para> <programlisting> typedef enum fe_modulation {
@@ -352,7 +357,7 @@ modulation mode which can be one of the following: <para>Finally, there are several more parameters for OFDM: </para> <section id="fe-transmit-mode-t"> -<title>Number of carriers per channel, on OFTM modulation</title> +<title>Number of carriers per channel</title> <programlisting> typedef enum fe_transmit_mode { TRANSMISSION_MODE_2K,
Signature · 1 line
1.7.1
PATCH 7/15 DocBook/dvbproperty.xml: Document the remaining S2API parameters
In reply to a message not in the archiveThere were lots of DVB S2API parameters that were never documented. Let's add a definition for all of them, based on what's currently used inside the core and the drivers.
The description here is not complete nor perfect, so patches improving it are welcome.
Documentation/DocBook/media/dvb/dvbproperty.xml +203 -1
@@ -199,6 +199,208 @@ get/set up to 64 properties. The actual meaning of each property is described on <section id="fe_property_common"> <title>Parameters that are common to all Digital TV standards</title> + <section id="DTV-UNDEFINED"> + <title><constant>DTV_UNDEFINED</constant></title> + <para>Used internally. A GET/SET operation for it won't change or return anything.</para> + </section> + <section id="DTV-TUNE"> + <title><constant>DTV_TUNE</constant></title> + <para>Interpret the cache of data, build either a traditional frontend tunerequest so we can pass validation in the <constant>FE_SET_FRONTEND</constant> ioctl.</para> + </section> + <section id="DTV-CLEAR"> + <title><constant>DTV_CLEAR</constant></title> + <para>Reset a cache of data specific to the frontend here. This does not effect hardware.</para> + </section> + <section id="DTV-MODULATION"> + <title><constant>DTV_MODULATION</constant></title> +<para>Specifies the frontend modulation type for cable and satellite types. The modulation can be one of the types bellow:</para> +<programlisting> + typedef enum fe_modulation { + QPSK, + QAM_16, + QAM_32, + QAM_64, + QAM_128, + QAM_256, + QAM_AUTO, + VSB_8, + VSB_16, + PSK_8, + APSK_16, + APSK_32, + DQPSK, + } fe_modulation_t; +</programlisting> + </section> + <section id="DTV-INVERSION"> + <title><constant>DTV_INVERSION</constant></title> + <para>The Inversion field can take one of these values: + </para> + <programlisting> + typedef enum fe_spectral_inversion { + INVERSION_OFF, + INVERSION_ON, + INVERSION_AUTO + } fe_spectral_inversion_t; + </programlisting> + <para>It indicates if spectral inversion should be presumed or not. In the automatic setting + (<constant>INVERSION_AUTO</constant>) the hardware will try to figure out the correct setting by + itself. + </para> + </section> + <section id="DTV-DISEQC-MASTER"> + <title><constant>DTV_DISEQC_MASTER</constant></title> + <para>Currently not implemented.</para> + </section> + <section id="DTV-SYMBOL-RATE"> + <title><constant>DTV_SYMBOL_RATE</constant></title> + <para>Digital TV symbol rate, in bauds (symbols/second). Used on cable standards.</para> + </section> + <section id="DTV-INNER-FEC"> + <title><constant>DTV_INNER_FEC</constant></title> + <para>Used cable/satellite transmissions. The acceptable values are: + </para> + <programlisting> +typedef enum fe_code_rate { + FEC_NONE = 0, + FEC_1_2, + FEC_2_3, + FEC_3_4, + FEC_4_5, + FEC_5_6, + FEC_6_7, + FEC_7_8, + FEC_8_9, + FEC_AUTO, + FEC_3_5, + FEC_9_10, +} fe_code_rate_t; + </programlisting> + <para>which correspond to error correction rates of 1/2, 2/3, etc., + no error correction or auto detection.</para> + </section> + <section id="DTV-VOLTAGE"> + <title><constant>DTV_VOLTAGE</constant></title> + <para>The voltage is usually used with non-DiSEqC capable LNBs to switch + the polarzation (horizontal/vertical). When using DiSEqC epuipment this + voltage has to be switched consistently to the DiSEqC commands as + described in the DiSEqC spec.</para> + <programlisting> + typedef enum fe_sec_voltage { + SEC_VOLTAGE_13, + SEC_VOLTAGE_18 + } fe_sec_voltage_t; + </programlisting> + </section> + <section id="DTV-TONE"> + <title><constant>DTV_TONE</constant></title> + <para>Currently not used.</para> + </section> + <section id="DTV-PILOT"> + <title><constant>DTV_PILOT</constant></title> + <para>Sets DVB-S2 pilot</para> + <section id="fe-pilot-t"> + <title>fe_pilot type</title> + <programlisting> +typedef enum fe_pilot { + PILOT_ON, + PILOT_OFF, + PILOT_AUTO, +} fe_pilot_t; + </programlisting> + </section> + </section> + <section id="DTV-ROLLOFF"> + <title><constant>DTV_ROLLOFF</constant></title> + <para>Sets DVB-S2 rolloff</para> + + <section id="fe-rolloff-t"> + <title>fe_rolloff type</title> + <programlisting> +typedef enum fe_rolloff { + ROLLOFF_35, /* Implied value in DVB-S, default for DVB-S2 */ + ROLLOFF_20, + ROLLOFF_25, + ROLLOFF_AUTO, +} fe_rolloff_t; + </programlisting> + </section> + </section> + <section id="DTV-DISEQC-SLAVE-REPLY"> + <title><constant>DTV_DISEQC_SLAVE_REPLY</constant></title> + <para>Currently not implemented.</para> + </section> + <section id="DTV-FE-CAPABILITY-COUNT"> + <title><constant>DTV_FE_CAPABILITY_COUNT</constant></title> + <para>Currently not implemented.</para> + </section> + <section id="DTV-FE-CAPABILITY"> + <title><constant>DTV_FE_CAPABILITY</constant></title> + <para>Currently not implemented.</para> + </section> + <section id="DTV-API-VERSION"> + <title><constant>DTV_API_VERSION</constant></title> + <para>Returns the major/minor version of the DVB API</para> + </section> + <section id="DTV-CODE-RATE-HP"> + <title><constant>DTV_CODE_RATE_HP</constant></title> + <para>Used on terrestrial transmissions. The acceptable values are: + </para> + <programlisting> +typedef enum fe_code_rate { + FEC_NONE = 0, + FEC_1_2, + FEC_2_3, + FEC_3_4, + FEC_4_5, + FEC_5_6, + FEC_6_7, + FEC_7_8, + FEC_8_9, + FEC_AUTO, + FEC_3_5, + FEC_9_10, +} fe_code_rate_t; + </programlisting> + </section> + <section id="DTV-CODE-RATE-LP"> + <title><constant>DTV_CODE_RATE_LP</constant></title> + <para>Used on terrestrial transmissions. The acceptable values are: + </para> + <programlisting> +typedef enum fe_code_rate { + FEC_NONE = 0, + FEC_1_2, + FEC_2_3, + FEC_3_4, + FEC_4_5, + FEC_5_6, + FEC_6_7, + FEC_7_8, + FEC_8_9, + FEC_AUTO, + FEC_3_5, + FEC_9_10, +} fe_code_rate_t; + </programlisting> + </section> + <section id="DTV-HIERARCHY"> + <title><constant>DTV_HIERARCHY</constant></title> + <para>Frontend hierarchy</para> + <programlisting> +typedef enum fe_hierarchy { + HIERARCHY_NONE, + HIERARCHY_1, + HIERARCHY_2, + HIERARCHY_4, + HIERARCHY_AUTO + } fe_hierarchy_t; + </programlisting> + </section> + <section id="DTV-ISDBS-TS-ID"> + <title><constant>DTV_ISDBS_TS_ID</constant></title> + <para>Currently unused.</para> + </section> <section id="DTV-FREQUENCY"> <title><constant>DTV_FREQUENCY</constant></title>
@@ -573,7 +775,7 @@ typedef enum fe_guard_interval { </section> <section id="dvbt2-params"> <title>DVB-T2 parameters</title> - + <para>This section covers parameters that apply only to the DVB-T2 delivery method. DVB-T2 support is currently in the early stages development so expect this section to grow and become more detailed with time.</para>
Signature · 1 line
1.7.1
PATCH 8/15 DocBook/dvbproperty.xml: Use links for all parameters
In reply to a message not in the archiveInstead of adding a program listing, just add there all parameters.
Documentation/DocBook/media/dvb/dvbproperty.xml +45 -45
@@ -150,51 +150,51 @@ get/set up to 64 properties. The actual meaning of each property is described on </para> <para>The available frontend property types are:</para> -<programlisting> -#define DTV_UNDEFINED 0 -#define DTV_TUNE 1 -#define DTV_CLEAR 2 -#define DTV_FREQUENCY 3 -#define DTV_MODULATION 4 -#define DTV_BANDWIDTH_HZ 5 -#define DTV_INVERSION 6 -#define DTV_DISEQC_MASTER 7 -#define DTV_SYMBOL_RATE 8 -#define DTV_INNER_FEC 9 -#define DTV_VOLTAGE 10 -#define DTV_TONE 11 -#define DTV_PILOT 12 -#define DTV_ROLLOFF 13 -#define DTV_DISEQC_SLAVE_REPLY 14 -#define DTV_FE_CAPABILITY_COUNT 15 -#define DTV_FE_CAPABILITY 16 -#define DTV_DELIVERY_SYSTEM 17 -#define DTV_ISDBT_PARTIAL_RECEPTION 18 -#define DTV_ISDBT_SOUND_BROADCASTING 19 -#define DTV_ISDBT_SB_SUBCHANNEL_ID 20 -#define DTV_ISDBT_SB_SEGMENT_IDX 21 -#define DTV_ISDBT_SB_SEGMENT_COUNT 22 -#define DTV_ISDBT_LAYERA_FEC 23 -#define DTV_ISDBT_LAYERA_MODULATION 24 -#define DTV_ISDBT_LAYERA_SEGMENT_COUNT 25 -#define DTV_ISDBT_LAYERA_TIME_INTERLEAVING 26 -#define DTV_ISDBT_LAYERB_FEC 27 -#define DTV_ISDBT_LAYERB_MODULATION 28 -#define DTV_ISDBT_LAYERB_SEGMENT_COUNT 29 -#define DTV_ISDBT_LAYERB_TIME_INTERLEAVING 30 -#define DTV_ISDBT_LAYERC_FEC 31 -#define DTV_ISDBT_LAYERC_MODULATION 32 -#define DTV_ISDBT_LAYERC_SEGMENT_COUNT 33 -#define DTV_ISDBT_LAYERC_TIME_INTERLEAVING 34 -#define DTV_API_VERSION 35 -#define DTV_CODE_RATE_HP 36 -#define DTV_CODE_RATE_LP 37 -#define DTV_GUARD_INTERVAL 38 -#define DTV_TRANSMISSION_MODE 39 -#define DTV_HIERARCHY 40 -#define DTV_ISDBT_LAYER_ENABLED 41 -#define DTV_ISDBS_TS_ID 42 -</programlisting> + +<para><link linkend="DTV-UNDEFINED">DTV_UNDEFINED</link></para> +<para><link linkend="DTV-TUNE">DTV_TUNE</link></para> +<para><link linkend="DTV-CLEAR">DTV_CLEAR</link></para> +<para><link linkend="DTV-FREQUENCY">DTV_FREQUENCY</link></para> +<para><link linkend="DTV-MODULATION">DTV_MODULATION</link></para> +<para><link linkend="DTV-BANDWIDTH-HZ">DTV_BANDWIDTH_HZ</link></para> +<para><link linkend="DTV-INVERSION">DTV_INVERSION</link></para> +<para><link linkend="DTV-DISEQC-MASTER">DTV_DISEQC_MASTER</link></para> +<para><link linkend="DTV-SYMBOL-RATE">DTV_SYMBOL_RATE</link></para> +<para><link linkend="DTV-INNER-FEC">DTV_INNER_FEC</link></para> +<para><link linkend="DTV-VOLTAGE">DTV_VOLTAGE</link></para> +<para><link linkend="DTV-TONE">DTV_TONE</link></para> +<para><link linkend="DTV-PILOT">DTV_PILOT</link></para> +<para><link linkend="DTV-ROLLOFF">DTV_ROLLOFF</link></para> +<para><link linkend="DTV-DISEQC-SLAVE-REPLY">DTV_DISEQC_SLAVE_REPLY</link></para> +<para><link linkend="DTV-FE-CAPABILITY-COUNT">DTV_FE_CAPABILITY_COUNT</link></para> +<para><link linkend="DTV-FE-CAPABILITY">DTV_FE_CAPABILITY</link></para> +<para><link linkend="DTV-DELIVERY-SYSTEM">DTV_DELIVERY_SYSTEM</link></para> +<para><link linkend="DTV-ISDBT-PARTIAL-RECEPTION">DTV_ISDBT_PARTIAL_RECEPTION</link></para> +<para><link linkend="DTV-ISDBT-SOUND-BROADCASTING">DTV_ISDBT_SOUND_BROADCASTING</link></para> +<para><link linkend="DTV-ISDBT-SB-SUBCHANNEL-ID">DTV_ISDBT_SB_SUBCHANNEL_ID</link></para> +<para><link linkend="DTV-ISDBT-SB-SEGMENT-IDX">DTV_ISDBT_SB_SEGMENT_IDX</link></para> +<para><link linkend="DTV-ISDBT-SB-SEGMENT-COUNT">DTV_ISDBT_SB_SEGMENT_COUNT</link></para> +<para><link linkend="DTV-ISDBT-LAYER-FEC">DTV_ISDBT_LAYERA_FEC</link></para> +<para><link linkend="DTV-ISDBT-LAYER-MODULATION">DTV_ISDBT_LAYERA_MODULATION</link></para> +<para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT">DTV_ISDBT_LAYERA_SEGMENT_COUNT</link></para> +<para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING">DTV_ISDBT_LAYERA_TIME_INTERLEAVING</link></para> +<para><link linkend="DTV-ISDBT-LAYER-FEC">DTV_ISDBT_LAYERB_FEC</link></para> +<para><link linkend="DTV-ISDBT-LAYER-MODULATION">DTV_ISDBT_LAYERB_MODULATION</link></para> +<para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT">DTV_ISDBT_LAYERB_SEGMENT_COUNT</link></para> +<para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING">DTV_ISDBT_LAYERB_TIME_INTERLEAVING</link></para> +<para><link linkend="DTV-ISDBT-LAYER-FEC">DTV_ISDBT_LAYERC_FEC</link></para> +<para><link linkend="DTV-ISDBT-LAYER-MODULATION">DTV_ISDBT_LAYERC_MODULATION</link></para> +<para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT">DTV_ISDBT_LAYERC_SEGMENT_COUNT</link></para> +<para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING">DTV_ISDBT_LAYERC_TIME_INTERLEAVING</link></para> +<para><link linkend="DTV-API-VERSION">DTV_API_VERSION</link></para> +<para><link linkend="DTV-CODE-RATE-HP">DTV_CODE_RATE_HP</link></para> +<para><link linkend="DTV-CODE-RATE-LP">DTV_CODE_RATE_LP</link></para> +<para><link linkend="DTV-GUARD-INTERVAL">DTV_GUARD_INTERVAL</link></para> +<para><link linkend="DTV-TRANSMISSION-MODE">DTV_TRANSMISSION_MODE</link></para> +<para><link linkend="DTV-HIERARCHY">DTV_HIERARCHY</link></para> +<para><link linkend="DTV-ISDBT-LAYER-ENABLED">DTV_ISDBT_LAYER_ENABLED</link></para> +<para><link linkend="DTV-ISDBS-TS-ID">DTV_ISDBS_TS_ID</link></para> +<para><link linkend="DTV-DVBT2-PLP-ID">DTV_DVBT2_PLP_ID</link></para> </section> <section id="fe_property_common">
Signature · 1 line
1.7.1
PATCH 9/15 DocBook/dvbproperty.xml: Reorganize the parameters
In reply to a message not in the archivePut the parameters at the sequencial order as they appear inside the frontend.h header.
TODO: fix the per-standard section, to reflect the parameters that should actually be used for each transmission system type.
Documentation/DocBook/media/dvb/dvbproperty.xml +334 -393
@@ -197,8 +197,8 @@ get/set up to 64 properties. The actual meaning of each property is described on <para><link linkend="DTV-DVBT2-PLP-ID">DTV_DVBT2_PLP_ID</link></para> </section> -<section id="fe_property_common"> - <title>Parameters that are common to all Digital TV standards</title> +<section id="fe_property_parameters"> + <title>Digital TV property parameters</title> <section id="DTV-UNDEFINED"> <title><constant>DTV_UNDEFINED</constant></title> <para>Used internally. A GET/SET operation for it won't change or return anything.</para>
@@ -211,6 +211,20 @@ get/set up to 64 properties. The actual meaning of each property is described on <title><constant>DTV_CLEAR</constant></title> <para>Reset a cache of data specific to the frontend here. This does not effect hardware.</para> </section> + <section id="DTV-FREQUENCY"> + <title><constant>DTV_FREQUENCY</constant></title> + + <para>Central frequency of the channel, in HZ.</para> + + <para>Notes:</para> + <para>1)For ISDB-T, the channels are usually 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.</para> + + <para>2)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.</para> + </section> <section id="DTV-MODULATION"> <title><constant>DTV_MODULATION</constant></title> <para>Specifies the frontend modulation type for cable and satellite types. The modulation can be one of the types bellow:</para>
@@ -232,6 +246,32 @@ get/set up to 64 properties. The actual meaning of each property is described on } fe_modulation_t; </programlisting> </section> + <section id="DTV-BANDWIDTH-HZ"> + <title><constant>DTV_BANDWIDTH_HZ</constant></title> + + <para>Bandwidth for the channel, in HZ.</para> + + <para>Possible values: + <constant>1712000</constant>, + <constant>5000000</constant>, + <constant>6000000</constant>, + <constant>7000000</constant>, + <constant>8000000</constant>, + <constant>10000000</constant>. + </para> + + <para>Notes:</para> + + <para>1) For ISDB-T it should be always 6000000Hz (6MHz)</para> + <para>2) For ISDB-Tsb it can vary depending on the number of connected segments</para> + <para>3) Bandwidth doesn't apply for DVB-C transmissions, as the bandwidth + for DVB-C depends on the symbol rate</para> + <para>4) 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).</para> + <para>5) DVB-T supports 6, 7 and 8MHz.</para> + <para>6) In addition, DVB-T2 supports 1.172, 5 and 10MHz.</para> + </section> <section id="DTV-INVERSION"> <title><constant>DTV_INVERSION</constant></title> <para>The Inversion field can take one of these values:
@@ -338,116 +378,11 @@ typedef enum fe_rolloff { <title><constant>DTV_FE_CAPABILITY</constant></title> <para>Currently not implemented.</para> </section> - <section id="DTV-API-VERSION"> - <title><constant>DTV_API_VERSION</constant></title> - <para>Returns the major/minor version of the DVB API</para> - </section> - <section id="DTV-CODE-RATE-HP"> - <title><constant>DTV_CODE_RATE_HP</constant></title> - <para>Used on terrestrial transmissions. The acceptable values are: - </para> - <programlisting> -typedef enum fe_code_rate { - FEC_NONE = 0, - FEC_1_2, - FEC_2_3, - FEC_3_4, - FEC_4_5, - FEC_5_6, - FEC_6_7, - FEC_7_8, - FEC_8_9, - FEC_AUTO, - FEC_3_5, - FEC_9_10, -} fe_code_rate_t; - </programlisting> - </section> - <section id="DTV-CODE-RATE-LP"> - <title><constant>DTV_CODE_RATE_LP</constant></title> - <para>Used on terrestrial transmissions. The acceptable values are: - </para> - <programlisting> -typedef enum fe_code_rate { - FEC_NONE = 0, - FEC_1_2, - FEC_2_3, - FEC_3_4, - FEC_4_5, - FEC_5_6, - FEC_6_7, - FEC_7_8, - FEC_8_9, - FEC_AUTO, - FEC_3_5, - FEC_9_10, -} fe_code_rate_t; - </programlisting> - </section> - <section id="DTV-HIERARCHY"> - <title><constant>DTV_HIERARCHY</constant></title> - <para>Frontend hierarchy</para> - <programlisting> -typedef enum fe_hierarchy { - HIERARCHY_NONE, - HIERARCHY_1, - HIERARCHY_2, - HIERARCHY_4, - HIERARCHY_AUTO - } fe_hierarchy_t; - </programlisting> - </section> - <section id="DTV-ISDBS-TS-ID"> - <title><constant>DTV_ISDBS_TS_ID</constant></title> - <para>Currently unused.</para> - </section> - <section id="DTV-FREQUENCY"> - <title><constant>DTV_FREQUENCY</constant></title> - - <para>Central frequency of the channel, in HZ.</para> - - <para>Notes:</para> - <para>1)For ISDB-T, the channels are usually 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.</para> - - <para>2)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.</para> - </section> - - <section id="DTV-BANDWIDTH-HZ"> - <title><constant>DTV_BANDWIDTH_HZ</constant></title> - - <para>Bandwidth for the channel, in HZ.</para> - - <para>Possible values: - <constant>1712000</constant>, - <constant>5000000</constant>, - <constant>6000000</constant>, - <constant>7000000</constant>, - <constant>8000000</constant>, - <constant>10000000</constant>. - </para> - - <para>Notes:</para> - - <para>1) For ISDB-T it should be always 6000000Hz (6MHz)</para> - <para>2) For ISDB-Tsb it can vary depending on the number of connected segments</para> - <para>3) Bandwidth doesn't apply for DVB-C transmissions, as the bandwidth - for DVB-C depends on the symbol rate</para> - <para>4) 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).</para> - <para>5) DVB-T supports 6, 7 and 8MHz.</para> - <para>6) In addition, DVB-T2 supports 1.172, 5 and 10MHz.</para> - </section> - <section id="DTV-DELIVERY-SYSTEM"> <title><constant>DTV_DELIVERY_SYSTEM</constant></title> - <para>Specifies the type of Delivery system</para> - + <section id="fe-delivery-system-t"> + <title>fe_delivery_system type</title> <para>Possible values: </para> <programlisting> typedef enum fe_delivery_system {
@@ -470,9 +405,247 @@ typedef enum fe_delivery_system { SYS_DVBT2, } fe_delivery_system_t; </programlisting> + </section> + </section> + <section id="DTV-ISDBT-PARTIAL-RECEPTION"> + <title><constant>DTV_ISDBT_PARTIAL_RECEPTION</constant></title> + + <para>If <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '0' this bit-field represents whether + the channel is in partial reception mode or not.</para> + + <para>If '1' <constant>DTV_ISDBT_LAYERA_*</constant> values are assigned to the center segment and + <constant>DTV_ISDBT_LAYERA_SEGMENT_COUNT</constant> has to be '1'.</para> + + <para>If in addition <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1' + <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> represents whether this ISDB-Tsb channel + is consisting of one segment and layer or three segments and two layers.</para> + + <para>Possible values: 0, 1, -1 (AUTO)</para> + </section> + <section id="DTV-ISDBT-SOUND-BROADCASTING"> + <title><constant>DTV_ISDBT_SOUND_BROADCASTING</constant></title> + + <para>This field represents whether the other DTV_ISDBT_*-parameters are + referring to an ISDB-T and an ISDB-Tsb channel. (See also + <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>).</para> + + <para>Possible values: 0, 1, -1 (AUTO)</para> + </section> + <section id="DTV-ISDBT-SB-SUBCHANNEL-ID"> + <title><constant>DTV_ISDBT_SB_SUBCHANNEL_ID</constant></title> + + <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para> + + <para>(Note of the author: This might not be the correct description of the + <constant>SUBCHANNEL-ID</constant> in all details, but it is my understanding of the technical + background needed to program a device)</para> + + <para>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.</para> + <para>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.</para> + + <para>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.</para> + + <para>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.</para> + + <para><constant>The DTV_ISDBT_SB_SUBCHANNEL_ID</constant> parameter is used to give the + sub-channel ID of the segment to be demodulated.</para> + + <para>Possible values: 0 .. 41, -1 (AUTO)</para> + </section> + <section id="DTV-ISDBT-SB-SEGMENT-IDX"> + <title><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant></title> + <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para> + <para><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant> gives the index of the segment to be + demodulated for an ISDB-Tsb channel where several of them are + transmitted in the connected manner.</para> + <para>Possible values: 0 .. <constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant> - 1</para> + <para>Note: This value cannot be determined by an automatic channel search.</para> + </section> + <section id="DTV-ISDBT-SB-SEGMENT-COUNT"> + <title><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant></title> + <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para> + <para><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant> gives the total count of connected ISDB-Tsb + channels.</para> + <para>Possible values: 1 .. 13</para> + <para>Note: This value cannot be determined by an automatic channel search.</para> </section> + <section id="isdb-hierq-layers"> + <title>Hierarchical layers</title> + <para>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.</para> + <para>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.</para> + <section id="DTV-ISDBT-LAYER-ENABLED"> + <title><constant>DTV_ISDBT_LAYER_ENABLED</constant></title> + <para>Hierarchical reception in ISDB-T is achieved by enabling or disabling + layers in the decoding process. Setting all bits of + <constant>DTV_ISDBT_LAYER_ENABLED</constant> to '1' forces all layers (if applicable) to be + demodulated. This is the default.</para> + <para>If the channel is in the partial reception mode + (<constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> = 1) the central segment can be decoded + independently of the other 12 segments. In that mode layer A has to + have a <constant>SEGMENT_COUNT</constant> of 1.</para> + <para>In ISDB-Tsb only layer A is used, it can be 1 or 3 in ISDB-Tsb + according to <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>. <constant>SEGMENT_COUNT</constant> must be filled + accordingly.</para> + <para>Possible values: 0x1, 0x2, 0x4 (|-able)</para> + <para><constant>DTV_ISDBT_LAYER_ENABLED[0:0]</constant> - layer A</para> + <para><constant>DTV_ISDBT_LAYER_ENABLED[1:1]</constant> - layer B</para> + <para><constant>DTV_ISDBT_LAYER_ENABLED[2:2]</constant> - layer C</para> + <para><constant>DTV_ISDBT_LAYER_ENABLED[31:3]</constant> unused</para> + </section> + <section id="DTV-ISDBT-LAYER-FEC"> + <title><constant>DTV_ISDBT_LAYER*_FEC</constant></title> + <para>Possible values: <constant>FEC_AUTO</constant>, <constant>FEC_1_2</constant>, <constant>FEC_2_3</constant>, <constant>FEC_3_4</constant>, <constant>FEC_5_6</constant>, <constant>FEC_7_8</constant></para> + </section> + <section id="DTV-ISDBT-LAYER-MODULATION"> + <title><constant>DTV_ISDBT_LAYER*_MODULATION</constant></title> + <para>Possible values: <constant>QAM_AUTO</constant>, QP<constant>SK, QAM_16</constant>, <constant>QAM_64</constant>, <constant>DQPSK</constant></para> + <para>Note: If layer C is <constant>DQPSK</constant> layer B has to be <constant>DQPSK</constant>. If layer B is <constant>DQPSK</constant> + and <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>=0 layer has to be <constant>DQPSK</constant>.</para> + </section> + <section id="DTV-ISDBT-LAYER-SEGMENT-COUNT"> + <title><constant>DTV_ISDBT_LAYER*_SEGMENT_COUNT</constant></title> + <para>Possible values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1 (AUTO)</para> + <para>Note: Truth table for <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> and + <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> and <constant>LAYER</constant>*_SEGMENT_COUNT</para> + <informaltable id="isdbt-layer_seg-cnt-table"> + <tgroup cols="6"> + <tbody> + <row> + <entry>PR</entry> + <entry>SB</entry> + <entry>Layer A width</entry> + <entry>Layer B width</entry> + <entry>Layer C width</entry> + <entry>total width</entry> + </row> + <row> + <entry>0</entry> + <entry>0</entry> + <entry>1 .. 13</entry> + <entry>1 .. 13</entry> + <entry>1 .. 13</entry> + <entry>13</entry> + </row> + <row> + <entry>1</entry> + <entry>0</entry> + <entry>1</entry> + <entry>1 .. 13</entry> + <entry>1 .. 13</entry> + <entry>13</entry> + </row> + <row> + <entry>0</entry> + <entry>1</entry> + <entry>1</entry> + <entry>0</entry> + <entry>0</entry> + <entry>1</entry> + </row> + <row> + <entry>1</entry> + <entry>1</entry> + <entry>1</entry> + <entry>2</entry> + <entry>0</entry> + <entry>13</entry> + </row> + </tbody> + </tgroup> + </informaltable> + </section> + <section id="DTV-ISDBT-LAYER-TIME-INTERLEAVING"> + <title><constant>DTV_ISDBT_LAYER*_TIME_INTERLEAVING</constant></title> + <para>Possible values: 0, 1, 2, 3, -1 (AUTO)</para> + <para>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.</para> + </section> + </section> + <section id="DTV-API-VERSION"> + <title><constant>DTV_API_VERSION</constant></title> + <para>Returns the major/minor version of the DVB API</para> + </section> + <section id="DTV-CODE-RATE-HP"> + <title><constant>DTV_CODE_RATE_HP</constant></title> + <para>Used on terrestrial transmissions. The acceptable values are: + </para> + <programlisting> +typedef enum fe_code_rate { + FEC_NONE = 0, + FEC_1_2, + FEC_2_3, + FEC_3_4, + FEC_4_5, + FEC_5_6, + FEC_6_7, + FEC_7_8, + FEC_8_9, + FEC_AUTO, + FEC_3_5, + FEC_9_10, +} fe_code_rate_t; + </programlisting> + </section> + <section id="DTV-CODE-RATE-LP"> + <title><constant>DTV_CODE_RATE_LP</constant></title> + <para>Used on terrestrial transmissions. The acceptable values are: + </para> + <programlisting> +typedef enum fe_code_rate { + FEC_NONE = 0, + FEC_1_2, + FEC_2_3, + FEC_3_4, + FEC_4_5, + FEC_5_6, + FEC_6_7, + FEC_7_8, + FEC_8_9, + FEC_AUTO, + FEC_3_5, + FEC_9_10, +} fe_code_rate_t; + </programlisting> + </section> + <section id="DTV-GUARD-INTERVAL"> + <title><constant>DTV_GUARD_INTERVAL</constant></title> + + <para>Possible values are:</para> +<programlisting> +typedef enum fe_guard_interval { + GUARD_INTERVAL_1_32, + GUARD_INTERVAL_1_16, + GUARD_INTERVAL_1_8, + GUARD_INTERVAL_1_4, + GUARD_INTERVAL_AUTO, + GUARD_INTERVAL_1_128, + GUARD_INTERVAL_19_128, + GUARD_INTERVAL_19_256, +} fe_guard_interval_t; +</programlisting> + <para>Notes:</para> + <para>1) If <constant>DTV_GUARD_INTERVAL</constant> is set the <constant>GUARD_INTERVAL_AUTO</constant> the hardware will + try to find the correct guard interval (if capable) and will use TMCC to fill + in the missing parameters.</para> + <para>2) Intervals 1/128, 19/128 and 19/256 are used only for DVB-T2 at present</para> + </section> <section id="DTV-TRANSMISSION-MODE"> <title><constant>DTV_TRANSMISSION_MODE</constant></title>
@@ -490,7 +663,6 @@ typedef enum fe_transmit_mode { TRANSMISSION_MODE_32K, } fe_transmit_mode_t; </programlisting> - <para>Notes:</para> <para>1) 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</para>
@@ -501,291 +673,60 @@ typedef enum fe_transmit_mode { <para>3) DVB-T specifies 2K and 8K as valid sizes.</para> <para>4) DVB-T2 specifies 1K, 2K, 4K, 8K, 16K and 32K.</para> </section> - - <section id="DTV-GUARD-INTERVAL"> - <title><constant>DTV_GUARD_INTERVAL</constant></title> - - <para>Possible values are:</para> -<programlisting> -typedef enum fe_guard_interval { - GUARD_INTERVAL_1_32, - GUARD_INTERVAL_1_16, - GUARD_INTERVAL_1_8, - GUARD_INTERVAL_1_4, - GUARD_INTERVAL_AUTO, - GUARD_INTERVAL_1_128, - GUARD_INTERVAL_19_128, - GUARD_INTERVAL_19_256, -} fe_guard_interval_t; -</programlisting> - - <para>Notes:</para> - <para>1) If <constant>DTV_GUARD_INTERVAL</constant> is set the <constant>GUARD_INTERVAL_AUTO</constant> the hardware will - try to find the correct guard interval (if capable) and will use TMCC to fill - in the missing parameters.</para> - <para>2) Intervals 1/128, 19/128 and 19/256 are used only for DVB-T2 at present</para> + <section id="DTV-HIERARCHY"> + <title><constant>DTV_HIERARCHY</constant></title> + <para>Frontend hierarchy</para> + <programlisting> +typedef enum fe_hierarchy { + HIERARCHY_NONE, + HIERARCHY_1, + HIERARCHY_2, + HIERARCHY_4, + HIERARCHY_AUTO + } fe_hierarchy_t; + </programlisting> </section> -</section> - -<section id="isdbt"> - <title>ISDB-T frontend</title> - <para>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:</para> - - <para>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.</para> - - <para>The information given here should help application writers to know how - to handle ISDB-T and ISDB-Tsb hardware using the Linux DVB-API.</para> - - <para>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:</para> - - <para>ARIB STD-B31 - "Transmission System for Digital Terrestrial - Television Broadcasting" and</para> - <para>ARIB TR-B14 - "Operational Guidelines for Digital Terrestrial - Television Broadcasting".</para> - - <para>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.</para> - - <para>Parameters used by ISDB-T and ISDB-Tsb.</para> - - <section id="isdbt-new-parms"> - <title>ISDB-T only parameters</title> - - <section id="DTV-ISDBT-PARTIAL-RECEPTION"> - <title><constant>DTV_ISDBT_PARTIAL_RECEPTION</constant></title> - - <para>If <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '0' this bit-field represents whether - the channel is in partial reception mode or not.</para> - - <para>If '1' <constant>DTV_ISDBT_LAYERA_*</constant> values are assigned to the center segment and - <constant>DTV_ISDBT_LAYERA_SEGMENT_COUNT</constant> has to be '1'.</para> - - <para>If in addition <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1' - <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> represents whether this ISDB-Tsb channel - is consisting of one segment and layer or three segments and two layers.</para> - - <para>Possible values: 0, 1, -1 (AUTO)</para> - </section> - - <section id="DTV-ISDBT-SOUND-BROADCASTING"> - <title><constant>DTV_ISDBT_SOUND_BROADCASTING</constant></title> - - <para>This field represents whether the other DTV_ISDBT_*-parameters are - referring to an ISDB-T and an ISDB-Tsb channel. (See also - <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>).</para> - - <para>Possible values: 0, 1, -1 (AUTO)</para> - </section> - - <section id="DTV-ISDBT-SB-SUBCHANNEL-ID"> - <title><constant>DTV_ISDBT_SB_SUBCHANNEL_ID</constant></title> - - <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para> - - <para>(Note of the author: This might not be the correct description of the - <constant>SUBCHANNEL-ID</constant> in all details, but it is my understanding of the technical - background needed to program a device)</para> - - <para>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.</para> - - <para>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.</para> - - <para>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.</para> - - <para>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.</para> - - <para><constant>The DTV_ISDBT_SB_SUBCHANNEL_ID</constant> parameter is used to give the - sub-channel ID of the segment to be demodulated.</para> - - <para>Possible values: 0 .. 41, -1 (AUTO)</para> - </section> - - <section id="DTV-ISDBT-SB-SEGMENT-IDX"> - - <title><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant></title> - - <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para> - - <para><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant> gives the index of the segment to be - demodulated for an ISDB-Tsb channel where several of them are - transmitted in the connected manner.</para> - - <para>Possible values: 0 .. <constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant> - 1</para> - - <para>Note: This value cannot be determined by an automatic channel search.</para> - </section> - - <section id="DTV-ISDBT-SB-SEGMENT-COUNT"> - <title><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant></title> - - <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para> - - <para><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant> gives the total count of connected ISDB-Tsb - channels.</para> - - <para>Possible values: 1 .. 13</para> - - <para>Note: This value cannot be determined by an automatic channel search.</para> - </section> - - <section id="isdb-hierq-layers"> - <title>Hierarchical layers</title> - - <para>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.</para> - - <para>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.</para> - - <section id="DTV-ISDBT-LAYER-ENABLED"> - <title><constant>DTV_ISDBT_LAYER_ENABLED</constant></title> - - <para>Hierarchical reception in ISDB-T is achieved by enabling or disabling - layers in the decoding process. Setting all bits of - <constant>DTV_ISDBT_LAYER_ENABLED</constant> to '1' forces all layers (if applicable) to be - demodulated. This is the default.</para> - - <para>If the channel is in the partial reception mode - (<constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> = 1) the central segment can be decoded - independently of the other 12 segments. In that mode layer A has to - have a <constant>SEGMENT_COUNT</constant> of 1.</para> - - <para>In ISDB-Tsb only layer A is used, it can be 1 or 3 in ISDB-Tsb - according to <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>. <constant>SEGMENT_COUNT</constant> must be filled - accordingly.</para> - - <para>Possible values: 0x1, 0x2, 0x4 (|-able)</para> - - <para><constant>DTV_ISDBT_LAYER_ENABLED[0:0]</constant> - layer A</para> - <para><constant>DTV_ISDBT_LAYER_ENABLED[1:1]</constant> - layer B</para> - <para><constant>DTV_ISDBT_LAYER_ENABLED[2:2]</constant> - layer C</para> - <para><constant>DTV_ISDBT_LAYER_ENABLED[31:3]</constant> unused</para> - </section> - - <section id="DTV-ISDBT-LAYER-FEC"> - <title><constant>DTV_ISDBT_LAYER*_FEC</constant></title> - - <para>Possible values: <constant>FEC_AUTO</constant>, <constant>FEC_1_2</constant>, <constant>FEC_2_3</constant>, <constant>FEC_3_4</constant>, <constant>FEC_5_6</constant>, <constant>FEC_7_8</constant></para> - </section> - - <section id="DTV-ISDBT-LAYER-MODULATION"> - <title><constant>DTV_ISDBT_LAYER*_MODULATION</constant></title> - - <para>Possible values: <constant>QAM_AUTO</constant>, QP<constant>SK, QAM_16</constant>, <constant>QAM_64</constant>, <constant>DQPSK</constant></para> - - <para>Note: If layer C is <constant>DQPSK</constant> layer B has to be <constant>DQPSK</constant>. If layer B is <constant>DQPSK</constant> - and <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>=0 layer has to be <constant>DQPSK</constant>.</para> - </section> - - <section id="DTV-ISDBT-LAYER-SEGMENT-COUNT"> - <title><constant>DTV_ISDBT_LAYER*_SEGMENT_COUNT</constant></title> - - <para>Possible values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1 (AUTO)</para> - - <para>Note: Truth table for <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> and - <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> and <constant>LAYER</constant>*_SEGMENT_COUNT</para> - - <informaltable id="isdbt-layer_seg-cnt-table"> - <tgroup cols="6"> - - <tbody> - <row> - <entry>PR</entry> - <entry>SB</entry> - <entry>Layer A width</entry> - <entry>Layer B width</entry> - <entry>Layer C width</entry> - <entry>total width</entry> - </row> - - <row> - <entry>0</entry> - <entry>0</entry> - <entry>1 .. 13</entry> - <entry>1 .. 13</entry> - <entry>1 .. 13</entry> - <entry>13</entry> - </row> - - <row> - <entry>1</entry> - <entry>0</entry> - <entry>1</entry> - <entry>1 .. 13</entry> - <entry>1 .. 13</entry> - <entry>13</entry> - </row> - - <row> - <entry>0</entry> - <entry>1</entry> - <entry>1</entry> - <entry>0</entry> - <entry>0</entry> - <entry>1</entry> - </row> - - <row> - <entry>1</entry> - <entry>1</entry> - <entry>1</entry> - <entry>2</entry> - <entry>0</entry> - <entry>13</entry> - </row> - </tbody> - - </tgroup> - </informaltable> - - </section> - - <section id="DTV-ISDBT-LAYER-TIME-INTERLEAVING"> - <title><constant>DTV_ISDBT_LAYER*_TIME_INTERLEAVING</constant></title> - - <para>Possible values: 0, 1, 2, 3, -1 (AUTO)</para> - - <para>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.</para> - </section> - </section> + <section id="DTV-ISDBS-TS-ID"> + <title><constant>DTV_ISDBS_TS_ID</constant></title> + <para>Currently unused.</para> </section> - <section id="dvbt2-params"> - <title>DVB-T2 parameters</title> - - <para>This section covers parameters that apply only to the DVB-T2 delivery method. DVB-T2 - support is currently in the early stages development so expect this section to grow - and become more detailed with time.</para> - - <section id="DTV-DVBT2-PLP-ID"> - <title><constant>DTV_DVBT2_PLP_ID</constant></title> - - <para>DVB-T2 supports Physical Layer Pipes (PLP) to allow transmission of - many data types via a single multiplex. The API will soon support this - at which point this section will be expanded.</para> + <section id="DTV-DVBT2-PLP-ID"> + <title><constant>DTV_DVBT2_PLP_ID</constant></title> + <para>DVB-T2 supports Physical Layer Pipes (PLP) to allow transmission of + many data types via a single multiplex. The API will soon support this + at which point this section will be expanded.</para> + </section> + <section id="frontend-property-dtv-types"> + <title>Properties used by each DTV type</title> + <section id="isdbt"> + <title>ISDB-T frontend</title> + <para>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:</para> + <para>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.</para> + <para>The information given here should help application writers to know how + to handle ISDB-T and ISDB-Tsb hardware using the Linux DVB-API.</para> + <para>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:</para> + <para>ARIB STD-B31 - "Transmission System for Digital Terrestrial + Television Broadcasting" and</para> + <para>ARIB TR-B14 - "Operational Guidelines for Digital Terrestrial + Television Broadcasting".</para> + <para>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.</para> + </section> + <section id="dvbt2-params"> + <title>DVB-T2 parameters</title> + <para>This section covers parameters that apply only to the DVB-T2 delivery method. DVB-T2 + support is currently in the early stages development so expect this section to grow + and become more detailed with time.</para> </section> </section> </section>
Signature · 1 line
1.7.1
PATCH 10/15 DocBook/frontend.xml: Recomend the usage of the new API
In reply to a message not in the archiveThe old way of setting delivery system parameters were to use an union with specific per-system parameters. However, as newer delivery systems required more data, the structure size weren't enough to fit. So, recomend using the DVBS2API instead.
Documentation/DocBook/media/dvb/frontend.xml +14 -2
@@ -221,8 +221,20 @@ by</para> <section id="dvb-frontend-parameters"> <title>frontend parameters</title> <para>The kind of parameters passed to the frontend device for tuning depend on -the kind of hardware you are using. All kinds of parameters are combined as an -union in the FrontendParameters structure:</para> +the kind of hardware you are using.</para> +<para>The struct <constant>dvb_frontend_parameters</constant> uses an +union with specific per-system parameters. However, as newer delivery systems +required more data, the structure size weren't enough to fit, and just +extending its size would break the existing applications. So, those parameters +were replaced by the usage of <link linkend="FE_GET_SET_PROPERTY"> +<constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant></link> ioctl's. The +new API is flexible enough to add new parameters to existing delivery systems, +and to add newer delivery systems.</para> +<para>So, newer applications should use <link linkend="FE_GET_SET_PROPERTY"> +<constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant></link> instead, in +order to be able to support the newer System Delivery like DVB-S2, DVB-T2, +DVB-C2, ISDB, etc.</para> +<para>All kinds of parameters are combined as an union in the FrontendParameters structure:</para> <programlisting> struct dvb_frontend_parameters { uint32_t frequency; /⋆ (absolute) frequency in Hz for QAM/OFDM ⋆/
Signature · 1 line
1.7.1
PATCH 11/15 DocBook/dvbproperty.xml: Document the terrestrial delivery systems
In reply to a message not in the archiveInstead of repeating duplicate parameters to each delivery system, just add a section for each specific delivery system, showing what's applicable to each case. This helps userspace app developers to know what DVB parameters are applicable to each delivery system.
Documentation/DocBook/media/dvb/dvbproperty.xml +103 -65
@@ -1,6 +1,12 @@ <section id="FE_GET_SET_PROPERTY"> -<title>FE_GET_PROPERTY/FE_SET_PROPERTY</title> - +<title><constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant></title> +<para>This section describes the DVB version 5 extention of the DVB-API, also +called "S2API", as this API were added to provide support for DVB-S2. It was +designed to be able to replace the old frontend API. Yet, the DISEQC and +the capability ioctls weren't implemented yet via the new way.</para> +<para>The typical usage for the <constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant> +API is to replace the ioctl's were the <link linkend="dvb-frontend-parameters"> +struct <constant>dvb_frontend_parameters</constant></link> were used.</para> <programlisting> /* Reserved fields should be set to 0 */ struct dtv_property {
@@ -149,52 +155,7 @@ the actual action is determined by the dtv_property cmd/data pairs. With one sin get/set up to 64 properties. The actual meaning of each property is described on the next sections. </para> -<para>The available frontend property types are:</para> - -<para><link linkend="DTV-UNDEFINED">DTV_UNDEFINED</link></para> -<para><link linkend="DTV-TUNE">DTV_TUNE</link></para> -<para><link linkend="DTV-CLEAR">DTV_CLEAR</link></para> -<para><link linkend="DTV-FREQUENCY">DTV_FREQUENCY</link></para> -<para><link linkend="DTV-MODULATION">DTV_MODULATION</link></para> -<para><link linkend="DTV-BANDWIDTH-HZ">DTV_BANDWIDTH_HZ</link></para> -<para><link linkend="DTV-INVERSION">DTV_INVERSION</link></para> -<para><link linkend="DTV-DISEQC-MASTER">DTV_DISEQC_MASTER</link></para> -<para><link linkend="DTV-SYMBOL-RATE">DTV_SYMBOL_RATE</link></para> -<para><link linkend="DTV-INNER-FEC">DTV_INNER_FEC</link></para> -<para><link linkend="DTV-VOLTAGE">DTV_VOLTAGE</link></para> -<para><link linkend="DTV-TONE">DTV_TONE</link></para> -<para><link linkend="DTV-PILOT">DTV_PILOT</link></para> -<para><link linkend="DTV-ROLLOFF">DTV_ROLLOFF</link></para> -<para><link linkend="DTV-DISEQC-SLAVE-REPLY">DTV_DISEQC_SLAVE_REPLY</link></para> -<para><link linkend="DTV-FE-CAPABILITY-COUNT">DTV_FE_CAPABILITY_COUNT</link></para> -<para><link linkend="DTV-FE-CAPABILITY">DTV_FE_CAPABILITY</link></para> -<para><link linkend="DTV-DELIVERY-SYSTEM">DTV_DELIVERY_SYSTEM</link></para> -<para><link linkend="DTV-ISDBT-PARTIAL-RECEPTION">DTV_ISDBT_PARTIAL_RECEPTION</link></para> -<para><link linkend="DTV-ISDBT-SOUND-BROADCASTING">DTV_ISDBT_SOUND_BROADCASTING</link></para> -<para><link linkend="DTV-ISDBT-SB-SUBCHANNEL-ID">DTV_ISDBT_SB_SUBCHANNEL_ID</link></para> -<para><link linkend="DTV-ISDBT-SB-SEGMENT-IDX">DTV_ISDBT_SB_SEGMENT_IDX</link></para> -<para><link linkend="DTV-ISDBT-SB-SEGMENT-COUNT">DTV_ISDBT_SB_SEGMENT_COUNT</link></para> -<para><link linkend="DTV-ISDBT-LAYER-FEC">DTV_ISDBT_LAYERA_FEC</link></para> -<para><link linkend="DTV-ISDBT-LAYER-MODULATION">DTV_ISDBT_LAYERA_MODULATION</link></para> -<para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT">DTV_ISDBT_LAYERA_SEGMENT_COUNT</link></para> -<para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING">DTV_ISDBT_LAYERA_TIME_INTERLEAVING</link></para> -<para><link linkend="DTV-ISDBT-LAYER-FEC">DTV_ISDBT_LAYERB_FEC</link></para> -<para><link linkend="DTV-ISDBT-LAYER-MODULATION">DTV_ISDBT_LAYERB_MODULATION</link></para> -<para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT">DTV_ISDBT_LAYERB_SEGMENT_COUNT</link></para> -<para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING">DTV_ISDBT_LAYERB_TIME_INTERLEAVING</link></para> -<para><link linkend="DTV-ISDBT-LAYER-FEC">DTV_ISDBT_LAYERC_FEC</link></para> -<para><link linkend="DTV-ISDBT-LAYER-MODULATION">DTV_ISDBT_LAYERC_MODULATION</link></para> -<para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT">DTV_ISDBT_LAYERC_SEGMENT_COUNT</link></para> -<para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING">DTV_ISDBT_LAYERC_TIME_INTERLEAVING</link></para> -<para><link linkend="DTV-API-VERSION">DTV_API_VERSION</link></para> -<para><link linkend="DTV-CODE-RATE-HP">DTV_CODE_RATE_HP</link></para> -<para><link linkend="DTV-CODE-RATE-LP">DTV_CODE_RATE_LP</link></para> -<para><link linkend="DTV-GUARD-INTERVAL">DTV_GUARD_INTERVAL</link></para> -<para><link linkend="DTV-TRANSMISSION-MODE">DTV_TRANSMISSION_MODE</link></para> -<para><link linkend="DTV-HIERARCHY">DTV_HIERARCHY</link></para> -<para><link linkend="DTV-ISDBT-LAYER-ENABLED">DTV_ISDBT_LAYER_ENABLED</link></para> -<para><link linkend="DTV-ISDBS-TS-ID">DTV_ISDBS_TS_ID</link></para> -<para><link linkend="DTV-DVBT2-PLP-ID">DTV_DVBT2_PLP_ID</link></para> +<para>The available frontend property types are shown on the next section.</para> </section> <section id="fe_property_parameters">
@@ -696,13 +657,53 @@ typedef enum fe_hierarchy { many data types via a single multiplex. The API will soon support this at which point this section will be expanded.</para> </section> - <section id="frontend-property-dtv-types"> - <title>Properties used by each DTV type</title> +</section> + <section id="frontend-property-terrestrial-systems"> + <title>Properties used on terrestrial delivery systems</title> + <section id="dvbt-params"> + <title>DVB-T delivery system</title> + <para>The following parameters are valid for DVB-T:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CODE-RATE-HP"><constant>DTV_CODE_RATE_HP</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CODE-RATE-LP"><constant>DTV_CODE_RATE_LP</constant></link></para></listitem> + <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + </itemizedlist> + </section> + <section id="dvbt2-params"> + <title>DVB-T2 delivery system</title> + <para>DVB-T2support is currently in the early stages + of development so expect this section to grow and become + more detailed with time.</para> + <para>The following parameters are valid for DVB-T2:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CODE-RATE-HP"><constant>DTV_CODE_RATE_HP</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CODE-RATE-LP"><constant>DTV_CODE_RATE_LP</constant></link></para></listitem> + <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DVBT2-PLP-ID"><constant>DTV_DVBT2_PLP_ID</constant></link></para></listitem> + </itemizedlist> + </section> <section id="isdbt"> - <title>ISDB-T frontend</title> - <para>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:</para> + <title>ISDB-T delivery system</title> <para>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
@@ -717,17 +718,54 @@ typedef enum fe_hierarchy { Television Broadcasting" and</para> <para>ARIB TR-B14 - "Operational Guidelines for Digital Terrestrial Television Broadcasting".</para> - <para>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.</para> - </section> - <section id="dvbt2-params"> - <title>DVB-T2 parameters</title> - <para>This section covers parameters that apply only to the DVB-T2 delivery method. DVB-T2 - support is currently in the early stages development so expect this section to grow - and become more detailed with time.</para> + <para>In order to understand the ISDB specific parameters, + 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.</para> + <para>The following parameters are valid for ISDB-T:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CODE-RATE-HP"><constant>DTV_CODE_RATE_HP</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CODE-RATE-LP"><constant>DTV_CODE_RATE_LP</constant></link></para></listitem> + <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-ENABLED"><constant>DTV_ISDBT_LAYER_ENABLED</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-PARTIAL-RECEPTION"><constant>DTV_ISDBT_PARTIAL_RECEPTION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-SOUND-BROADCASTING"><constant>DTV_ISDBT_SOUND_BROADCASTING</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-SB-SUBCHANNEL-ID"><constant>DTV_ISDBT_SB_SUBCHANNEL_ID</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-SB-SEGMENT-IDX"><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-SB-SEGMENT-COUNT"><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-FEC"><constant>DTV_ISDBT_LAYERA_FEC</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-MODULATION"><constant>DTV_ISDBT_LAYERA_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERA_SEGMENT_COUNT</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERA_TIME_INTERLEAVING</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-FEC"><constant>DTV_ISDBT_LAYERB_FEC</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-MODULATION"><constant>DTV_ISDBT_LAYERB_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERB_SEGMENT_COUNT</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERB_TIME_INTERLEAVING</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-FEC"><constant>DTV_ISDBT_LAYERC_FEC</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-MODULATION"><constant>DTV_ISDBT_LAYERC_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERC_SEGMENT_COUNT</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERC_TIME_INTERLEAVING</constant></link></para></listitem> + </itemizedlist> </section> </section> -</section> + <section id="frontend-property-cable-systems"> + <title>Properties used on cable delivery systems</title> + <para>TODO</para> + </section> + <section id="frontend-property-satellital-systems"> + <title>Properties used on satellital delivery systems</title> + <para>TODO</para> + </section> </section>
Signature · 1 line
1.7.1
PATCH 12/15 DocBook: Finish synchronizing the frontend API
In reply to a message not in the archiveRemove the remaining:
Error: no ID for constraint linkend:
With this patch, the dvb frontend API matches the current dvb core implementation.
Documentation/DocBook/media/Makefile +2 -2
@@ -73,7 +73,7 @@ ENUMS = \ STRUCTS = \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/videodev2.h) \ - $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/dvb/frontend.h) \ + $(shell perl -ne 'print "$$1 " if (!/dtv\_cmds\_h/ && /^struct\s+([^\s]+)\s+/)' $(srctree)/include/linux/dvb/frontend.h) \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/media.h) \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/v4l2-subdev.h) \ $(shell perl -ne 'print "$$1 " if /^struct\s+([^\s]+)\s+/' $(srctree)/include/linux/v4l2-mediabus.h)
@@ -124,10 +124,10 @@ DVB_DOCUMENTED = \ -e "s,\(struct\s\+\)\([a-z0-9_]\+\)\(\s\+{\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -e "s,\(}\s\+\)\([a-z0-9_]\+_t\+\),\1\<link linkend=\"\2\">\2\<\/link\>,g" \ -e "s,\(define\s\+\)\(DTV_[A-Z0-9_]\+\)\(\s\+[0-9]\+\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ + -e "s,<link linkend=\".*\">\(DTV_IOCTL_MAX_MSGS\|dtv_cmds_h\)<\/link>,\1,g" \ -e ":a;s/\(linkend=\".*\)_\(.*\">\)/\1-\2/;ta" \ -e "s,DTV-ISDBT-LAYER[A-C],DTV-ISDBT-LAYER,g" \ -e "s,\(define\s\+\)\([A-Z0-9_]\+\)\(\s\+_IO\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ -# -e "s,\(\s\+\)\(FE_[A-Z0-9_]\+\)\([\s\=\,]*\),\1\<link linkend=\"\2\">\2\<\/link\>\3,g" \ # # Media targets and dependencies
Documentation/DocBook/media/dvb/dvbproperty.xml +8 -1
@@ -7,6 +7,8 @@ the capability ioctls weren't implemented yet via the new way.</para> <para>The typical usage for the <constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant> API is to replace the ioctl's were the <link linkend="dvb-frontend-parameters"> struct <constant>dvb_frontend_parameters</constant></link> were used.</para> +<section id="dtv-property"> +<title>DTV property type</title> <programlisting> /* Reserved fields should be set to 0 */ struct dtv_property {
@@ -25,12 +27,17 @@ struct dtv_property { /* num of properties cannot exceed DTV_IOCTL_MAX_MSGS per ioctl */ #define DTV_IOCTL_MAX_MSGS 64 - +</programlisting> +</section> +<section id="dtv-properties"> +<title>DTV properties type</title> +<programlisting> struct dtv_properties { __u32 num; struct dtv_property *props; }; </programlisting> +</section> <section id="FE_GET_PROPERTY"> <title>FE_GET_PROPERTY</title>
Documentation/DocBook/media/dvb/frontend.xml +1 -1
@@ -140,7 +140,7 @@ a specific frontend type.</para> }; </programlisting> </section> -<section role="subsection"> +<section role="subsection" id="dvb-diseqc-slave-reply"> <title>diseqc slave reply</title> <para>A reply to the frontend from DiSEqC 2.0 capable equipment.</para>
Signature · 1 line
1.7.1
PATCH 13/15 DocBook/dvbproperty.xml: Add Cable standards
In reply to a message not in the archiveDocumentation/DocBook/media/dvb/dvbproperty.xml +35 -3
@@ -672,6 +672,7 @@ typedef enum fe_hierarchy { <para>The following parameters are valid for DVB-T:</para> <itemizedlist mark='opencircle'> <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
@@ -683,7 +684,6 @@ typedef enum fe_hierarchy { <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem> <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem> <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem> - <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> </itemizedlist> </section> <section id="dvbt2-params">
@@ -694,6 +694,7 @@ typedef enum fe_hierarchy { <para>The following parameters are valid for DVB-T2:</para> <itemizedlist mark='opencircle'> <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
@@ -705,7 +706,6 @@ typedef enum fe_hierarchy { <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem> <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem> <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem> - <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> <listitem><para><link linkend="DTV-DVBT2-PLP-ID"><constant>DTV_DVBT2_PLP_ID</constant></link></para></listitem> </itemizedlist> </section>
@@ -734,6 +734,7 @@ typedef enum fe_hierarchy { <para>The following parameters are valid for ISDB-T:</para> <itemizedlist mark='opencircle'> <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
@@ -745,7 +746,6 @@ typedef enum fe_hierarchy { <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem> <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem> <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem> - <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> <listitem><para><link linkend="DTV-ISDBT-LAYER-ENABLED"><constant>DTV_ISDBT_LAYER_ENABLED</constant></link></para></listitem> <listitem><para><link linkend="DTV-ISDBT-PARTIAL-RECEPTION"><constant>DTV_ISDBT_PARTIAL_RECEPTION</constant></link></para></listitem> <listitem><para><link linkend="DTV-ISDBT-SOUND-BROADCASTING"><constant>DTV_ISDBT_SOUND_BROADCASTING</constant></link></para></listitem>
@@ -768,6 +768,38 @@ typedef enum fe_hierarchy { </section> </section> <section id="frontend-property-cable-systems"> + <section id="dvbc-params"> + <title>DVB-C delivery system</title> + <para>The DVB-C Annex-A/C is the widely used cable standard. Transmission uses QAM modulation.</para> + <para>The following parameters are valid for DVB-C Annex A/C:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem> + </itemizedlist> + </section> + <section id="dvbc-annex-b-params"> + <title>DVB-C Annex B delivery system</title> + <para>The DVB-C Annex-B is only used on a few Countries like the United States.</para> + <para>The following parameters are valid for DVB-C Annex B:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem> + </itemizedlist> + </section> <title>Properties used on cable delivery systems</title> <para>TODO</para> </section>
Signature · 1 line
1.7.1
PATCH 14/15 DocBook/dvbproperty.xml: Add ATSC standard
In reply to a message not in the archiveDocumentation/DocBook/media/dvb/dvbproperty.xml +13 -2
@@ -766,6 +766,19 @@ typedef enum fe_hierarchy { <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERC_TIME_INTERLEAVING</constant></link></para></listitem> </itemizedlist> </section> + <section id="atsc-params"> + <title>ATSC delivery system</title> + <para>The following parameters are valid for ATSC:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem> + </itemizedlist> + </section> </section> <section id="frontend-property-cable-systems"> <section id="dvbc-params">
@@ -796,8 +809,6 @@ typedef enum fe_hierarchy { <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> - <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem> - <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem> </itemizedlist> </section> <title>Properties used on cable delivery systems</title>
Documentation/DocBook/media/dvb/frontend.xml +1 -1
@@ -276,7 +276,7 @@ OFDM frontends the <constant>frequency</constant> specifies the absolute frequen </section> <section id="dvb-vsb-parameters"> <title>VSB parameters</title> -<para>DVB-T frontends are supported by the <constant>dvb_vsb_parameters</constant> structure:</para> +<para>ATSC frontends are supported by the <constant>dvb_vsb_parameters</constant> structure:</para> <programlisting> struct dvb_vsb_parameters { fe_modulation_t modulation; /⋆ modulation type (see above) ⋆/
Signature · 1 line
1.7.1
PATCH 15/15 DocBook/dvbproperty.xml: Add Satellite standards
In reply to a message not in the archiveDocumentation/DocBook/media/dvb/dvbproperty.xml +61 -5
@@ -688,8 +688,8 @@ typedef enum fe_hierarchy { </section> <section id="dvbt2-params"> <title>DVB-T2 delivery system</title> - <para>DVB-T2support is currently in the early stages - of development so expect this section to grow and become + <para>DVB-T2 support is currently in the early stages + of development, so expect that this section maygrow and become more detailed with time.</para> <para>The following parameters are valid for DVB-T2:</para> <itemizedlist mark='opencircle'>
@@ -781,6 +781,7 @@ typedef enum fe_hierarchy { </section> </section> <section id="frontend-property-cable-systems"> + <title>Properties used on cable delivery systems</title> <section id="dvbc-params"> <title>DVB-C delivery system</title> <para>The DVB-C Annex-A/C is the widely used cable standard. Transmission uses QAM modulation.</para>
@@ -811,11 +812,66 @@ typedef enum fe_hierarchy { <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> </itemizedlist> </section> - <title>Properties used on cable delivery systems</title> - <para>TODO</para> </section> <section id="frontend-property-satellital-systems"> <title>Properties used on satellital delivery systems</title> - <para>TODO</para> + <section id="dvbs-params"> + <title>DVB-S delivery system</title> + <para>The following parameters are valid for DVB-S:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem> + </itemizedlist> + <para>Future implementations might add those two missing parameters:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-DISEQC-MASTER"><constant>DTV_DISEQC_MASTER</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DISEQC-SLAVE-REPLY"><constant>DTV_DISEQC_SLAVE_REPLY</constant></link></para></listitem> + </itemizedlist> + </section> + <section id="dvbs2-params"> + <title>DVB-S2 delivery system</title> + <para>The following parameters are valid for DVB-S2:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem> + <listitem><para><link linkend="DTV-VOLTAGE"><constant>DTV_VOLTAGE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TONE"><constant>DTV_TONE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-PILOT"><constant>DTV_PILOT</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ROLLOFF"><constant>DTV_ROLLOFF</constant></link></para></listitem> + </itemizedlist> + <para>Future implementations might add those two missing parameters:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-DISEQC-MASTER"><constant>DTV_DISEQC_MASTER</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DISEQC-SLAVE-REPLY"><constant>DTV_DISEQC_SLAVE_REPLY</constant></link></para></listitem> + </itemizedlist> + </section> + <section id="isdbs-params"> + <title>ISDB-S delivery system</title> + <para>The following parameters are valid for ISDB-S:</para> + <itemizedlist mark='opencircle'> + <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem> + <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem> + <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> + <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem> + <listitem><para><link linkend="DTV-VOLTAGE"><constant>DTV_VOLTAGE</constant></link></para></listitem> + <listitem><para><link linkend="DTV-ISDBS-TS-ID"><constant>DTV_ISDBS_TS_ID</constant></link></para></listitem> + </itemizedlist> + </section> </section> </section>
Signature · 1 line
1.7.1