<refentry id="vidioc-enumaudio"> <refmeta> <refentrytitle>ioctl VIDIOC_ENUMAUDIO</refentrytitle> &manvol; </refmeta> <refnamediv> <refname>VIDIOC_ENUMAUDIO</refname> <refpurpose>Enumerate audio inputs</refpurpose> </refnamediv> <refsynopsisdiv> <funcsynopsis> <funcprototype> <funcdef>int <function>ioctl</function></funcdef> <paramdef>int <parameter>fd</parameter></paramdef> <paramdef>int <parameter>request</parameter></paramdef> <paramdef>struct v4l2_audio *<parameter>argp</parameter></paramdef> </funcprototype> </funcsynopsis> </refsynopsisdiv> <refsect1> <title>Arguments</title> <variablelist> <varlistentry> <term><parameter>fd</parameter></term> <listitem> <para>&fd;</para> </listitem> </varlistentry> <varlistentry> <term><parameter>request</parameter></term> <listitem> <para>VIDIOC_ENUMAUDIO</para> </listitem> </varlistentry> <varlistentry> <term><parameter>argp</parameter></term> <listitem> <para></para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Description</title> <para>To query the attributes of an audio input applications initialize the <structfield>index</structfield> field and zero out the <structfield>reserved</structfield> array of a &v4l2-audio; and call the <constant>VIDIOC_ENUMAUDIO</constant> ioctl with a pointer to this structure. Drivers fill the rest of the structure or return an &EINVAL; when the index is out of bounds. To enumerate all audio inputs applications shall begin at index zero, incrementing by one until the driver returns <errorcode>EINVAL</errorcode>.</para> <para>See <xref linkend="vidioc-g-audio" /> for a description of &v4l2-audio;.</para> </refsect1> <refsect1> &return-value; <variablelist> <varlistentry> <term><errorcode>EINVAL</errorcode></term> <listitem> <para>The number of the audio input is out of bounds.</para> </listitem> </varlistentry> </variablelist> </refsect1> </refentry>