162306a36Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 262306a36Sopenharmony_ci.. c:namespace:: V4L 362306a36Sopenharmony_ci 462306a36Sopenharmony_ci.. _VIDIOC_ENUMAUDOUT: 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci*********************** 762306a36Sopenharmony_ciioctl VIDIOC_ENUMAUDOUT 862306a36Sopenharmony_ci*********************** 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ciName 1162306a36Sopenharmony_ci==== 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ciVIDIOC_ENUMAUDOUT - Enumerate audio outputs 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ciSynopsis 1662306a36Sopenharmony_ci======== 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci.. c:macro:: VIDIOC_ENUMAUDOUT 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci``int ioctl(int fd, VIDIOC_ENUMAUDOUT, struct v4l2_audioout *argp)`` 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciArguments 2362306a36Sopenharmony_ci========= 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci``fd`` 2662306a36Sopenharmony_ci File descriptor returned by :c:func:`open()`. 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci``argp`` 2962306a36Sopenharmony_ci Pointer to struct :c:type:`v4l2_audioout`. 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ciDescription 3262306a36Sopenharmony_ci=========== 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ciTo query the attributes of an audio output applications initialize the 3562306a36Sopenharmony_ci``index`` field and zero out the ``reserved`` array of a struct 3662306a36Sopenharmony_ci:c:type:`v4l2_audioout` and call the ``VIDIOC_G_AUDOUT`` 3762306a36Sopenharmony_ciioctl with a pointer to this structure. Drivers fill the rest of the 3862306a36Sopenharmony_cistructure or return an ``EINVAL`` error code when the index is out of 3962306a36Sopenharmony_cibounds. To enumerate all audio outputs applications shall begin at index 4062306a36Sopenharmony_cizero, incrementing by one until the driver returns ``EINVAL``. 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci.. note:: 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci Connectors on a TV card to loop back the received audio signal 4562306a36Sopenharmony_ci to a sound card are not audio outputs in this sense. 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ciSee :ref:`VIDIOC_G_AUDIOout <VIDIOC_G_AUDOUT>` for a description of struct 4862306a36Sopenharmony_ci:c:type:`v4l2_audioout`. 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ciReturn Value 5162306a36Sopenharmony_ci============ 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ciOn success 0 is returned, on error -1 and the ``errno`` variable is set 5462306a36Sopenharmony_ciappropriately. The generic error codes are described at the 5562306a36Sopenharmony_ci:ref:`Generic Error Codes <gen-errors>` chapter. 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ciEINVAL 5862306a36Sopenharmony_ci The number of the audio output is out of bounds. 59