1<refentry id="vidioc-g-tuner"> 2 <refmeta> 3 <refentrytitle>ioctl VIDIOC_G_TUNER, VIDIOC_S_TUNER</refentrytitle> 4 &manvol; 5 </refmeta> 6 7 <refnamediv> 8 <refname>VIDIOC_G_TUNER</refname> 9 <refname>VIDIOC_S_TUNER</refname> 10 <refpurpose>Get or set tuner attributes</refpurpose> 11 </refnamediv> 12 13 <refsynopsisdiv> 14 <funcsynopsis> 15 <funcprototype> 16 <funcdef>int <function>ioctl</function></funcdef> 17 <paramdef>int <parameter>fd</parameter></paramdef> 18 <paramdef>int <parameter>request</parameter></paramdef> 19 <paramdef>struct v4l2_tuner 20*<parameter>argp</parameter></paramdef> 21 </funcprototype> 22 </funcsynopsis> 23 <funcsynopsis> 24 <funcprototype> 25 <funcdef>int <function>ioctl</function></funcdef> 26 <paramdef>int <parameter>fd</parameter></paramdef> 27 <paramdef>int <parameter>request</parameter></paramdef> 28 <paramdef>const struct v4l2_tuner 29*<parameter>argp</parameter></paramdef> 30 </funcprototype> 31 </funcsynopsis> 32 </refsynopsisdiv> 33 34 <refsect1> 35 <title>Arguments</title> 36 37 <variablelist> 38 <varlistentry> 39 <term><parameter>fd</parameter></term> 40 <listitem> 41 <para>&fd;</para> 42 </listitem> 43 </varlistentry> 44 <varlistentry> 45 <term><parameter>request</parameter></term> 46 <listitem> 47 <para>VIDIOC_G_TUNER, VIDIOC_S_TUNER</para> 48 </listitem> 49 </varlistentry> 50 <varlistentry> 51 <term><parameter>argp</parameter></term> 52 <listitem> 53 <para></para> 54 </listitem> 55 </varlistentry> 56 </variablelist> 57 </refsect1> 58 59 <refsect1> 60 <title>Description</title> 61 62 <para>To query the attributes of a tuner applications initialize the 63<structfield>index</structfield> field and zero out the 64<structfield>reserved</structfield> array of a &v4l2-tuner; and call the 65<constant>VIDIOC_G_TUNER</constant> ioctl with a pointer to this 66structure. Drivers fill the rest of the structure or return an 67&EINVAL; when the index is out of bounds. To enumerate all tuners 68applications shall begin at index zero, incrementing by one until the 69driver returns <errorcode>EINVAL</errorcode>.</para> 70 71 <para>Tuners have two writable properties, the audio mode and 72the radio frequency. To change the audio mode, applications initialize 73the <structfield>index</structfield>, 74<structfield>audmode</structfield> and 75<structfield>reserved</structfield> fields and call the 76<constant>VIDIOC_S_TUNER</constant> ioctl. This will 77<emphasis>not</emphasis> change the current tuner, which is determined 78by the current video input. Drivers may choose a different audio mode 79if the requested mode is invalid or unsupported. Since this is a 80<!-- FIXME -->write-only ioctl, it does not return the actually 81selected audio mode.</para> 82 83 <para><link linkend="sdr">SDR</link> specific tuner types are 84<constant>V4L2_TUNER_SDR</constant> and <constant>V4L2_TUNER_RF</constant>. 85For SDR devices <structfield>audmode</structfield> field must be 86initialized to zero. 87The term 'tuner' means SDR receiver in this context.</para> 88 89 <para>To change the radio frequency the &VIDIOC-S-FREQUENCY; ioctl 90is available.</para> 91 92 <table pgwide="1" frame="none" id="v4l2-tuner"> 93 <title>struct <structname>v4l2_tuner</structname></title> 94 <tgroup cols="3"> 95 <colspec colname="c1" colwidth="1*" /> 96 <colspec colname="c2" colwidth="1*" /> 97 <colspec colname="c3" colwidth="1*" /> 98 <colspec colname="c4" colwidth="1*" /> 99 <spanspec spanname="hspan" namest="c3" nameend="c4" /> 100 <tbody valign="top"> 101 <row> 102 <entry>__u32</entry> 103 <entry><structfield>index</structfield></entry> 104 <entry spanname="hspan">Identifies the tuner, set by the 105application.</entry> 106 </row> 107 <row> 108 <entry>__u8</entry> 109 <entry><structfield>name</structfield>[32]</entry> 110 <entry spanname="hspan"><para>Name of the tuner, a 111NUL-terminated ASCII string. This information is intended for the 112user.<!-- FIXME Video inputs already have a name, the purpose of this 113field is not quite clear.--></para></entry> 114 </row> 115 <row> 116 <entry>__u32</entry> 117 <entry><structfield>type</structfield></entry> 118 <entry spanname="hspan">Type of the tuner, see <xref 119 linkend="v4l2-tuner-type" />.</entry> 120 </row> 121 <row> 122 <entry>__u32</entry> 123 <entry><structfield>capability</structfield></entry> 124 <entry spanname="hspan"><para>Tuner capability flags, see 125<xref linkend="tuner-capability" />. Audio flags indicate the ability 126to decode audio subprograms. They will <emphasis>not</emphasis> 127change, for example with the current video standard.</para><para>When 128the structure refers to a radio tuner the 129<constant>V4L2_TUNER_CAP_LANG1</constant>, 130<constant>V4L2_TUNER_CAP_LANG2</constant> and 131<constant>V4L2_TUNER_CAP_NORM</constant> flags can't be used.</para> 132<para>If multiple frequency bands are supported, then 133<structfield>capability</structfield> is the union of all 134<structfield>capability</structfield> fields of each &v4l2-frequency-band;. 135</para></entry> 136 </row> 137 <row> 138 <entry>__u32</entry> 139 <entry><structfield>rangelow</structfield></entry> 140 <entry spanname="hspan">The lowest tunable frequency in 141units of 62.5 kHz, or if the <structfield>capability</structfield> 142flag <constant>V4L2_TUNER_CAP_LOW</constant> is set, in units of 62.5 143Hz, or if the <structfield>capability</structfield> flag 144<constant>V4L2_TUNER_CAP_1HZ</constant> is set, in units of 1 Hz. 145If multiple frequency bands are supported, then 146<structfield>rangelow</structfield> is the lowest frequency 147of all the frequency bands.</entry> 148 </row> 149 <row> 150 <entry>__u32</entry> 151 <entry><structfield>rangehigh</structfield></entry> 152 <entry spanname="hspan">The highest tunable frequency in 153units of 62.5 kHz, or if the <structfield>capability</structfield> 154flag <constant>V4L2_TUNER_CAP_LOW</constant> is set, in units of 62.5 155Hz, or if the <structfield>capability</structfield> flag 156<constant>V4L2_TUNER_CAP_1HZ</constant> is set, in units of 1 Hz. 157If multiple frequency bands are supported, then 158<structfield>rangehigh</structfield> is the highest frequency 159of all the frequency bands.</entry> 160 </row> 161 <row> 162 <entry>__u32</entry> 163 <entry><structfield>rxsubchans</structfield></entry> 164 <entry spanname="hspan"><para>Some tuners or audio 165decoders can determine the received audio subprograms by analyzing 166audio carriers, pilot tones or other indicators. To pass this 167information drivers set flags defined in <xref 168 linkend="tuner-rxsubchans" /> in this field. For 169example:</para></entry> 170 </row> 171 <row> 172 <entry></entry> 173 <entry></entry> 174 <entry><constant>V4L2_TUNER_SUB_MONO</constant></entry> 175 <entry>receiving mono audio</entry> 176 </row> 177 <row> 178 <entry></entry> 179 <entry></entry> 180 <entry><constant>STEREO | SAP</constant></entry> 181 <entry>receiving stereo audio and a secondary audio 182program</entry> 183 </row> 184 <row> 185 <entry></entry> 186 <entry></entry> 187 <entry><constant>MONO | STEREO</constant></entry> 188 <entry>receiving mono or stereo audio, the hardware cannot 189distinguish</entry> 190 </row> 191 <row> 192 <entry></entry> 193 <entry></entry> 194 <entry><constant>LANG1 | LANG2</constant></entry> 195 <entry>receiving bilingual audio</entry> 196 </row> 197 <row> 198 <entry></entry> 199 <entry></entry> 200 <entry><constant>MONO | STEREO | LANG1 | LANG2</constant></entry> 201 <entry>receiving mono, stereo or bilingual 202audio</entry> 203 </row> 204 <row> 205 <entry></entry> 206 <entry></entry> 207 <entry spanname="hspan"><para>When the 208<constant>V4L2_TUNER_CAP_STEREO</constant>, 209<constant>_LANG1</constant>, <constant>_LANG2</constant> or 210<constant>_SAP</constant> flag is cleared in the 211<structfield>capability</structfield> field, the corresponding 212<constant>V4L2_TUNER_SUB_</constant> flag must not be set 213here.</para><para>This field is valid only if this is the tuner of the 214current video input, or when the structure refers to a radio 215tuner.</para></entry> 216 </row> 217 <row> 218 <entry>__u32</entry> 219 <entry><structfield>audmode</structfield></entry> 220 <entry spanname="hspan"><para>The selected audio mode, see 221<xref linkend="tuner-audmode" /> for valid values. The audio mode does 222not affect audio subprogram detection, and like a <link 223linkend="control">control</link> it does not automatically change 224unless the requested mode is invalid or unsupported. See <xref 225 linkend="tuner-matrix" /> for possible results when 226the selected and received audio programs do not 227match.</para><para>Currently this is the only field of struct 228<structname>v4l2_tuner</structname> applications can 229change.</para></entry> 230 </row> 231 <row> 232 <entry>__u32</entry> 233 <entry><structfield>signal</structfield></entry> 234 <entry spanname="hspan">The signal strength if known, ranging 235from 0 to 65535. Higher values indicate a better signal.</entry> 236 </row> 237 <row> 238 <entry>__s32</entry> 239 <entry><structfield>afc</structfield></entry> 240 <entry spanname="hspan">Automatic frequency control: When the 241<structfield>afc</structfield> value is negative, the frequency is too 242low, when positive too high.<!-- FIXME need example what to do when it never 243settles at zero, &ie; range is what? --></entry> 244 </row> 245 <row> 246 <entry>__u32</entry> 247 <entry><structfield>reserved</structfield>[4]</entry> 248 <entry spanname="hspan">Reserved for future extensions. Drivers and 249applications must set the array to zero.</entry> 250 </row> 251 </tbody> 252 </tgroup> 253 </table> 254 255 <table pgwide="1" frame="none" id="v4l2-tuner-type"> 256 <title>enum v4l2_tuner_type</title> 257 <tgroup cols="3"> 258 &cs-def; 259 <tbody valign="top"> 260 <row> 261 <entry><constant>V4L2_TUNER_RADIO</constant></entry> 262 <entry>1</entry> 263 <entry></entry> 264 </row> 265 <row> 266 <entry><constant>V4L2_TUNER_ANALOG_TV</constant></entry> 267 <entry>2</entry> 268 <entry></entry> 269 </row> 270 <row> 271 <entry><constant>V4L2_TUNER_SDR</constant></entry> 272 <entry>4</entry> 273 <entry></entry> 274 </row> 275 <row> 276 <entry><constant>V4L2_TUNER_RF</constant></entry> 277 <entry>5</entry> 278 <entry></entry> 279 </row> 280 </tbody> 281 </tgroup> 282 </table> 283 284 <table pgwide="1" frame="none" id="tuner-capability"> 285 <title>Tuner and Modulator Capability Flags</title> 286 <tgroup cols="3"> 287 &cs-def; 288 <tbody valign="top"> 289 <row> 290 <entry><constant>V4L2_TUNER_CAP_LOW</constant></entry> 291 <entry>0x0001</entry> 292 <entry>When set, tuning frequencies are expressed in units of 29362.5 Hz instead of 62.5 kHz.</entry> 294 </row> 295 <row> 296 <entry><constant>V4L2_TUNER_CAP_NORM</constant></entry> 297 <entry>0x0002</entry> 298 <entry>This is a multi-standard tuner; the video standard 299can or must be switched. (B/G PAL tuners for example are typically not 300 considered multi-standard because the video standard is automatically 301 determined from the frequency band.) The set of supported video 302 standards is available from the &v4l2-input; pointing to this tuner, 303 see the description of ioctl &VIDIOC-ENUMINPUT; for details. Only 304 <constant>V4L2_TUNER_ANALOG_TV</constant> tuners can have this capability.</entry> 305 </row> 306 <row> 307 <entry><constant>V4L2_TUNER_CAP_HWSEEK_BOUNDED</constant></entry> 308 <entry>0x0004</entry> 309 <entry>If set, then this tuner supports the hardware seek functionality 310 where the seek stops when it reaches the end of the frequency range.</entry> 311 </row> 312 <row> 313 <entry><constant>V4L2_TUNER_CAP_HWSEEK_WRAP</constant></entry> 314 <entry>0x0008</entry> 315 <entry>If set, then this tuner supports the hardware seek functionality 316 where the seek wraps around when it reaches the end of the frequency range.</entry> 317 </row> 318 <row> 319 <entry><constant>V4L2_TUNER_CAP_STEREO</constant></entry> 320 <entry>0x0010</entry> 321 <entry>Stereo audio reception is supported.</entry> 322 </row> 323 <row> 324 <entry><constant>V4L2_TUNER_CAP_LANG1</constant></entry> 325 <entry>0x0040</entry> 326 <entry>Reception of the primary language of a bilingual 327audio program is supported. Bilingual audio is a feature of 328two-channel systems, transmitting the primary language monaural on the 329main audio carrier and a secondary language monaural on a second 330carrier. Only 331 <constant>V4L2_TUNER_ANALOG_TV</constant> tuners can have this capability.</entry> 332 </row> 333 <row> 334 <entry><constant>V4L2_TUNER_CAP_LANG2</constant></entry> 335 <entry>0x0020</entry> 336 <entry>Reception of the secondary language of a bilingual 337audio program is supported. Only 338 <constant>V4L2_TUNER_ANALOG_TV</constant> tuners can have this capability.</entry> 339 </row> 340 <row> 341 <entry><constant>V4L2_TUNER_CAP_SAP</constant></entry> 342 <entry>0x0020</entry> 343 <entry><para>Reception of a secondary audio program is 344supported. This is a feature of the BTSC system which accompanies the 345NTSC video standard. Two audio carriers are available for mono or 346stereo transmissions of a primary language, and an independent third 347carrier for a monaural secondary language. Only 348 <constant>V4L2_TUNER_ANALOG_TV</constant> tuners can have this capability.</para><para>Note the 349<constant>V4L2_TUNER_CAP_LANG2</constant> and 350<constant>V4L2_TUNER_CAP_SAP</constant> flags are synonyms. 351<constant>V4L2_TUNER_CAP_SAP</constant> applies when the tuner 352supports the <constant>V4L2_STD_NTSC_M</constant> video 353standard.</para><!-- FIXME what if PAL+NTSC and Bi but not SAP? --></entry> 354 </row> 355 <row> 356 <entry><constant>V4L2_TUNER_CAP_RDS</constant></entry> 357 <entry>0x0080</entry> 358 <entry>RDS capture is supported. This capability is only valid for 359radio tuners.</entry> 360 </row> 361 <row> 362 <entry><constant>V4L2_TUNER_CAP_RDS_BLOCK_IO</constant></entry> 363 <entry>0x0100</entry> 364 <entry>The RDS data is passed as unparsed RDS blocks.</entry> 365 </row> 366 <row> 367 <entry><constant>V4L2_TUNER_CAP_RDS_CONTROLS</constant></entry> 368 <entry>0x0200</entry> 369 <entry>The RDS data is parsed by the hardware and set via controls.</entry> 370 </row> 371 <row> 372 <entry><constant>V4L2_TUNER_CAP_FREQ_BANDS</constant></entry> 373 <entry>0x0400</entry> 374 <entry>The &VIDIOC-ENUM-FREQ-BANDS; ioctl can be used to enumerate 375 the available frequency bands.</entry> 376 </row> 377 <row> 378 <entry><constant>V4L2_TUNER_CAP_HWSEEK_PROG_LIM</constant></entry> 379 <entry>0x0800</entry> 380 <entry>The range to search when using the hardware seek functionality 381 is programmable, see &VIDIOC-S-HW-FREQ-SEEK; for details.</entry> 382 </row> 383 <row> 384 <entry><constant>V4L2_TUNER_CAP_1HZ</constant></entry> 385 <entry>0x1000</entry> 386 <entry>When set, tuning frequencies are expressed in units of 1 Hz instead of 62.5 kHz.</entry> 387 </row> 388 </tbody> 389 </tgroup> 390 </table> 391 392 <table pgwide="1" frame="none" id="tuner-rxsubchans"> 393 <title>Tuner Audio Reception Flags</title> 394 <tgroup cols="3"> 395 &cs-def; 396 <tbody valign="top"> 397 <row> 398 <entry><constant>V4L2_TUNER_SUB_MONO</constant></entry> 399 <entry>0x0001</entry> 400 <entry>The tuner receives a mono audio signal.</entry> 401 </row> 402 <row> 403 <entry><constant>V4L2_TUNER_SUB_STEREO</constant></entry> 404 <entry>0x0002</entry> 405 <entry>The tuner receives a stereo audio signal.</entry> 406 </row> 407 <row> 408 <entry><constant>V4L2_TUNER_SUB_LANG1</constant></entry> 409 <entry>0x0008</entry> 410 <entry>The tuner receives the primary language of a 411bilingual audio signal. Drivers must clear this flag when the current 412video standard is <constant>V4L2_STD_NTSC_M</constant>.</entry> 413 </row> 414 <row> 415 <entry><constant>V4L2_TUNER_SUB_LANG2</constant></entry> 416 <entry>0x0004</entry> 417 <entry>The tuner receives the secondary language of a 418bilingual audio signal (or a second audio program).</entry> 419 </row> 420 <row> 421 <entry><constant>V4L2_TUNER_SUB_SAP</constant></entry> 422 <entry>0x0004</entry> 423 <entry>The tuner receives a Second Audio Program. Note the 424<constant>V4L2_TUNER_SUB_LANG2</constant> and 425<constant>V4L2_TUNER_SUB_SAP</constant> flags are synonyms. The 426<constant>V4L2_TUNER_SUB_SAP</constant> flag applies when the 427current video standard is <constant>V4L2_STD_NTSC_M</constant>.</entry> 428 </row> 429 <row> 430 <entry><constant>V4L2_TUNER_SUB_RDS</constant></entry> 431 <entry>0x0010</entry> 432 <entry>The tuner receives an RDS channel.</entry> 433 </row> 434 </tbody> 435 </tgroup> 436 </table> 437 438 <table pgwide="1" frame="none" id="tuner-audmode"> 439 <title>Tuner Audio Modes</title> 440 <tgroup cols="3"> 441 &cs-def; 442 <tbody valign="top"> 443 <row> 444 <entry><constant>V4L2_TUNER_MODE_MONO</constant></entry> 445 <entry>0</entry> 446 <entry>Play mono audio. When the tuner receives a stereo 447signal this a down-mix of the left and right channel. When the tuner 448receives a bilingual or SAP signal this mode selects the primary 449language.</entry> 450 </row> 451 <row> 452 <entry><constant>V4L2_TUNER_MODE_STEREO</constant></entry> 453 <entry>1</entry> 454 <entry><para>Play stereo audio. When the tuner receives 455bilingual audio it may play different languages on the left and right 456channel or the primary language is played on both channels.</para><para>Playing 457different languages in this mode is 458deprecated. New drivers should do this only in 459<constant>MODE_LANG1_LANG2</constant>.</para><para>When the tuner 460receives no stereo signal or does not support stereo reception the 461driver shall fall back to <constant>MODE_MONO</constant>.</para></entry> 462 </row> 463 <row> 464 <entry><constant>V4L2_TUNER_MODE_LANG1</constant></entry> 465 <entry>3</entry> 466 <entry>Play the primary language, mono or stereo. Only 467<constant>V4L2_TUNER_ANALOG_TV</constant> tuners support this 468mode.</entry> 469 </row> 470 <row> 471 <entry><constant>V4L2_TUNER_MODE_LANG2</constant></entry> 472 <entry>2</entry> 473 <entry>Play the secondary language, mono. When the tuner 474receives no bilingual audio or SAP, or their reception is not 475supported the driver shall fall back to mono or stereo mode. Only 476<constant>V4L2_TUNER_ANALOG_TV</constant> tuners support this 477mode.</entry> 478 </row> 479 <row> 480 <entry><constant>V4L2_TUNER_MODE_SAP</constant></entry> 481 <entry>2</entry> 482 <entry>Play the Second Audio Program. When the tuner 483receives no bilingual audio or SAP, or their reception is not 484supported the driver shall fall back to mono or stereo mode. Only 485<constant>V4L2_TUNER_ANALOG_TV</constant> tuners support this mode. 486Note the <constant>V4L2_TUNER_MODE_LANG2</constant> and 487<constant>V4L2_TUNER_MODE_SAP</constant> are synonyms.</entry> 488 </row> 489 <row> 490 <entry><constant>V4L2_TUNER_MODE_LANG1_LANG2</constant></entry> 491 <entry>4</entry> 492 <entry>Play the primary language on the left channel, the 493secondary language on the right channel. When the tuner receives no 494bilingual audio or SAP, it shall fall back to 495<constant>MODE_LANG1</constant> or <constant>MODE_MONO</constant>. 496Only <constant>V4L2_TUNER_ANALOG_TV</constant> tuners support this 497mode.</entry> 498 </row> 499 </tbody> 500 </tgroup> 501 </table> 502 503 <table pgwide="1" frame="all" id="tuner-matrix"> 504 <title>Tuner Audio Matrix</title> 505 <tgroup cols="6" align="center"> 506 <colspec align="left" /> 507 <colspec colname="c2" colwidth="1*" /> 508 <colspec colwidth="1*" /> 509 <colspec colwidth="1*" /> 510 <colspec colnum="6" colname="c6" colwidth="1*" /> 511 <spanspec namest="c2" nameend="c6" spanname="hspan" align="center" /> 512 <thead> 513 <row> 514 <entry></entry> 515 <entry spanname="hspan">Selected 516<constant>V4L2_TUNER_MODE_</constant></entry> 517 </row> 518 <row> 519 <entry>Received <constant>V4L2_TUNER_SUB_</constant></entry> 520 <entry><constant>MONO</constant></entry> 521 <entry><constant>STEREO</constant></entry> 522 <entry><constant>LANG1</constant></entry> 523 <entry><constant>LANG2 = SAP</constant></entry> 524 <entry><constant>LANG1_LANG2</constant><footnote><para>This 525mode has been added in Linux 2.6.17 and may not be supported by older 526drivers.</para></footnote></entry> 527 </row> 528 </thead> 529 <tbody valign="top"> 530 <row> 531 <entry><constant>MONO</constant></entry> 532 <entry>Mono</entry> 533 <entry>Mono/Mono</entry> 534 <entry>Mono</entry> 535 <entry>Mono</entry> 536 <entry>Mono/Mono</entry> 537 </row> 538 <row> 539 <entry><constant>MONO | SAP</constant></entry> 540 <entry>Mono</entry> 541 <entry>Mono/Mono</entry> 542 <entry>Mono</entry> 543 <entry>SAP</entry> 544 <entry>Mono/SAP (preferred) or Mono/Mono</entry> 545 </row> 546 <row> 547 <entry><constant>STEREO</constant></entry> 548 <entry>L+R</entry> 549 <entry>L/R</entry> 550 <entry>Stereo L/R (preferred) or Mono L+R</entry> 551 <entry>Stereo L/R (preferred) or Mono L+R</entry> 552 <entry>L/R (preferred) or L+R/L+R</entry> 553 </row> 554 <row> 555 <entry><constant>STEREO | SAP</constant></entry> 556 <entry>L+R</entry> 557 <entry>L/R</entry> 558 <entry>Stereo L/R (preferred) or Mono L+R</entry> 559 <entry>SAP</entry> 560 <entry>L+R/SAP (preferred) or L/R or L+R/L+R</entry> 561 </row> 562 <row> 563 <entry><constant>LANG1 | LANG2</constant></entry> 564 <entry>Language 1</entry> 565 <entry>Lang1/Lang2 (deprecated<footnote><para>Playback of 566both languages in <constant>MODE_STEREO</constant> is deprecated. In 567the future drivers should produce only the primary language in this 568mode. Applications should request 569<constant>MODE_LANG1_LANG2</constant> to record both languages or a 570stereo signal.</para></footnote>) or 571Lang1/Lang1</entry> 572 <entry>Language 1</entry> 573 <entry>Language 2</entry> 574 <entry>Lang1/Lang2 (preferred) or Lang1/Lang1</entry> 575 </row> 576 </tbody> 577 </tgroup> 578 </table> 579 </refsect1> 580 581 <refsect1> 582 &return-value; 583 584 <variablelist> 585 <varlistentry> 586 <term><errorcode>EINVAL</errorcode></term> 587 <listitem> 588 <para>The &v4l2-tuner; <structfield>index</structfield> is 589out of bounds.</para> 590 </listitem> 591 </varlistentry> 592 </variablelist> 593 </refsect1> 594</refentry> 595