18c2ecf20Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
28c2ecf20Sopenharmony_ci.. c:namespace:: V4L
38c2ecf20Sopenharmony_ci
48c2ecf20Sopenharmony_ci.. _VIDIOC_ENUMAUDOUT:
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ci***********************
78c2ecf20Sopenharmony_ciioctl VIDIOC_ENUMAUDOUT
88c2ecf20Sopenharmony_ci***********************
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ciName
118c2ecf20Sopenharmony_ci====
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciVIDIOC_ENUMAUDOUT - Enumerate audio outputs
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciSynopsis
168c2ecf20Sopenharmony_ci========
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci.. c:macro:: VIDIOC_ENUMAUDOUT
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ci``int ioctl(int fd, VIDIOC_ENUMAUDOUT, struct v4l2_audioout *argp)``
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ciArguments
238c2ecf20Sopenharmony_ci=========
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci``fd``
268c2ecf20Sopenharmony_ci    File descriptor returned by :c:func:`open()`.
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci``argp``
298c2ecf20Sopenharmony_ci    Pointer to struct :c:type:`v4l2_audioout`.
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciDescription
328c2ecf20Sopenharmony_ci===========
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ciTo query the attributes of an audio output applications initialize the
358c2ecf20Sopenharmony_ci``index`` field and zero out the ``reserved`` array of a struct
368c2ecf20Sopenharmony_ci:c:type:`v4l2_audioout` and call the ``VIDIOC_G_AUDOUT``
378c2ecf20Sopenharmony_ciioctl with a pointer to this structure. Drivers fill the rest of the
388c2ecf20Sopenharmony_cistructure or return an ``EINVAL`` error code when the index is out of
398c2ecf20Sopenharmony_cibounds. To enumerate all audio outputs applications shall begin at index
408c2ecf20Sopenharmony_cizero, incrementing by one until the driver returns ``EINVAL``.
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci.. note::
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ci    Connectors on a TV card to loop back the received audio signal
458c2ecf20Sopenharmony_ci    to a sound card are not audio outputs in this sense.
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ciSee :ref:`VIDIOC_G_AUDIOout <VIDIOC_G_AUDOUT>` for a description of struct
488c2ecf20Sopenharmony_ci:c:type:`v4l2_audioout`.
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ciReturn Value
518c2ecf20Sopenharmony_ci============
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ciOn success 0 is returned, on error -1 and the ``errno`` variable is set
548c2ecf20Sopenharmony_ciappropriately. The generic error codes are described at the
558c2ecf20Sopenharmony_ci:ref:`Generic Error Codes <gen-errors>` chapter.
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ciEINVAL
588c2ecf20Sopenharmony_ci    The number of the audio output is out of bounds.
59