From e8d923761ff6a355a8683e90a7bb9da2fbd8c510 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Sun, 29 Nov 1998 16:30:35 +0000 Subject: [PATCH] Added record channel operations. --- include/mixer.h | 2 ++ src/mixer/mixer.c | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/include/mixer.h b/include/mixer.h index 2068be47..9de2b7af 100644 --- a/include/mixer.h +++ b/include/mixer.h @@ -26,6 +26,8 @@ int snd_mixer_channel(void *handle, const char *channel_id); int snd_mixer_channel_info(void *handle, int channel, snd_mixer_channel_info_t * info); int snd_mixer_channel_read(void *handle, int channel, snd_mixer_channel_t * data); int snd_mixer_channel_write(void *handle, int channel, snd_mixer_channel_t * data); +int snd_mixer_channel_record_read(void *handle, int channel, snd_mixer_channel_t * data); +int snd_mixer_channel_record_write(void *handle, int channel, snd_mixer_channel_t * data); int snd_mixer_switches(void *handle); int snd_mixer_switch_read(void *handle, int switchn, snd_mixer_switch_t * data); int snd_mixer_switch_write(void *handle, int switchn, snd_mixer_switch_t * data); diff --git a/src/mixer/mixer.c b/src/mixer/mixer.c index 66f84a09..b48171bf 100644 --- a/src/mixer/mixer.c +++ b/src/mixer/mixer.c @@ -190,6 +190,32 @@ int snd_mixer_channel_write(void *handle, int channel, snd_mixer_channel_t * dat return 0; } +int snd_mixer_channel_record_read(void *handle, int channel, snd_mixer_channel_t * data) +{ + snd_mixer_t *mixer; + + mixer = (snd_mixer_t *) handle; + if (!mixer) + return -EINVAL; + data->channel = channel; + if (ioctl(mixer->fd, SND_MIXER_IOCTL_CHANNEL_RREAD, data) < 0) + return -errno; + return 0; +} + +int snd_mixer_channel_record_write(void *handle, int channel, snd_mixer_channel_t * data) +{ + snd_mixer_t *mixer; + + mixer = (snd_mixer_t *) handle; + if (!mixer) + return -EINVAL; + data->channel = channel; + if (ioctl(mixer->fd, SND_MIXER_IOCTL_CHANNEL_RWRITE, data) < 0) + return -errno; + return 0; +} + int snd_mixer_switches(void *handle) { snd_mixer_t *mixer; -- 2.47.1