summaryrefslogtreecommitdiff
path: root/src/audioio.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/audioio.h')
-rw-r--r--src/audioio.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/audioio.h b/src/audioio.h
index 7866751..e78813b 100644
--- a/src/audioio.h
+++ b/src/audioio.h
@@ -45,6 +45,7 @@ extern "C" {
#define MIXER_ERROR -109
#define COULD_NOT_OPEN_DEVICE -110
#define INVALID_MIXER_LEVEL -111
+#define NO_SUCH_ENUM -112
struct aio_t;
@@ -164,6 +165,27 @@ int aio_get_capture_mixer_level_range(struct aio_t *handle,
float *min, float *max);
/**
+ * Get value of enum switch on a specific channel.
+ * @param handle A pointer to the handle to be used.
+ * @param name The name of the enum swicth.
+ * @param value The buffer in which the switch enum value will be written.
+ * @param maxsize The size fo the value buffer.
+ * @return Returns error code.
+ */
+int aio_get_enum_value(struct aio_t *handle, const char *name,
+ char *value, unsigned int maxsize);
+
+/**
+ * Set value of enum switch on a specific channel.
+ * @param handle A pointer to the handle to be used.
+ * @param name The name of the enum swicth.
+ * @param value The buffer containing the string value of the enum switch.
+ * @return Returns error code.
+ */
+int aio_set_enum_value(struct aio_t *handle,
+ const char *name, const char *value);
+
+/**
* Get actual samplerate.
* The samplerate set in ai_init may or may not match a possible samplerate for
* the audio hardware and therefore the ALSA library might decide to use another
@@ -176,6 +198,11 @@ int aio_get_capture_mixer_level_range(struct aio_t *handle,
*/
int aio_get_samplerate(struct aio_t *handle);
+/**
+ * Get the buffer size used by the underlying hardware/software.
+ * @param handle A pointer to the handle to be used.
+ * @return The buffer size in bytes.
+ */
int aio_get_buffer_size(struct aio_t *handle);
/**