| 1 | .. -*- coding: utf-8; mode: rst -*- |
| 2 | |
| 3 | .. _VIDIOC_ENUMAUDIOOUT: |
| 4 | |
| 5 | *********************** |
| 6 | ioctl VIDIOC_ENUMAUDOUT |
| 7 | *********************** |
| 8 | |
| 9 | *man VIDIOC_ENUMAUDOUT(2)* |
| 10 | |
| 11 | Enumerate audio outputs |
| 12 | |
| 13 | |
| 14 | Synopsis |
| 15 | ======== |
| 16 | |
| 17 | .. cpp:function:: int ioctl( int fd, int request, struct v4l2_audioout *argp ) |
| 18 | |
| 19 | Arguments |
| 20 | ========= |
| 21 | |
| 22 | ``fd`` |
| 23 | File descriptor returned by :ref:`open() <func-open>`. |
| 24 | |
| 25 | ``request`` |
| 26 | VIDIOC_ENUMAUDOUT |
| 27 | |
| 28 | ``argp`` |
| 29 | |
| 30 | |
| 31 | Description |
| 32 | =========== |
| 33 | |
| 34 | To query the attributes of an audio output applications initialize the |
| 35 | ``index`` field and zero out the ``reserved`` array of a struct |
| 36 | :ref:`v4l2_audioout <v4l2-audioout>` and call the ``VIDIOC_G_AUDOUT`` |
| 37 | ioctl with a pointer to this structure. Drivers fill the rest of the |
| 38 | structure or return an ``EINVAL`` error code when the index is out of |
| 39 | bounds. To enumerate all audio outputs applications shall begin at index |
| 40 | zero, incrementing by one until the driver returns ``EINVAL``. |
| 41 | |
| 42 | Note connectors on a TV card to loop back the received audio signal to a |
| 43 | sound card are not audio outputs in this sense. |
| 44 | |
| 45 | See :ref:`VIDIOC_G_AUDIOout <VIDIOC_G_AUDIOout>` for a description of struct |
| 46 | :ref:`v4l2_audioout <v4l2-audioout>`. |
| 47 | |
| 48 | |
| 49 | Return Value |
| 50 | ============ |
| 51 | |
| 52 | On success 0 is returned, on error -1 and the ``errno`` variable is set |
| 53 | appropriately. The generic error codes are described at the |
| 54 | :ref:`Generic Error Codes <gen-errors>` chapter. |
| 55 | |
| 56 | EINVAL |
| 57 | The number of the audio output is out of bounds. |