Abramo Bagnara <abramo@alsa-project.org>

Tue, 07 Dec 1999 08:44:05 +0100
- pcm mixer elements splitted for subchannel handling
- small fix to pcm device element
This commit is contained in:
Jaroslav Kysela 1999-12-07 10:10:07 +00:00
parent bfa1aaa8c3
commit 883678c5e3

View file

@ -37,8 +37,10 @@ int snd_mixer_element_has_info(snd_mixer_eid_t *eid)
switch (eid->type) { switch (eid->type) {
case SND_MIXER_ETYPE_INPUT: case SND_MIXER_ETYPE_INPUT:
case SND_MIXER_ETYPE_OUTPUT: case SND_MIXER_ETYPE_OUTPUT:
case SND_MIXER_ETYPE_CAPTURE: case SND_MIXER_ETYPE_CAPTURE1:
case SND_MIXER_ETYPE_PLAYBACK: case SND_MIXER_ETYPE_CAPTURE2:
case SND_MIXER_ETYPE_PLAYBACK1:
case SND_MIXER_ETYPE_PLAYBACK2:
case SND_MIXER_ETYPE_ADC: case SND_MIXER_ETYPE_ADC:
case SND_MIXER_ETYPE_DAC: case SND_MIXER_ETYPE_DAC:
case SND_MIXER_ETYPE_SWITCH3: case SND_MIXER_ETYPE_SWITCH3:
@ -77,12 +79,12 @@ int snd_mixer_element_info_build(snd_mixer_t *handle, snd_mixer_element_info_t *
if ((err = snd_mixer_element_info(handle, element)) < 0) if ((err = snd_mixer_element_info(handle, element)) < 0)
return err; return err;
break; break;
case SND_MIXER_ETYPE_CAPTURE: case SND_MIXER_ETYPE_CAPTURE1:
case SND_MIXER_ETYPE_PLAYBACK: case SND_MIXER_ETYPE_PLAYBACK1:
element->data.pcm.devices_size = element->data.pcm.devices_over; element->data.pcm1.devices_size = element->data.pcm1.devices_over;
element->data.pcm.devices = element->data.pcm.devices_over = 0; element->data.pcm1.devices = element->data.pcm1.devices_over = 0;
element->data.pcm.pdevices = (int *)malloc(element->data.pcm.devices_size * sizeof(int)); element->data.pcm1.pdevices = (int *)malloc(element->data.pcm1.devices_size * sizeof(int));
if (!element->data.pcm.pdevices) if (!element->data.pcm1.pdevices)
return -ENOMEM; return -ENOMEM;
if ((err = snd_mixer_element_info(handle, element)) < 0) if ((err = snd_mixer_element_info(handle, element)) < 0)
return err; return err;
@ -168,9 +170,9 @@ int snd_mixer_element_info_free(snd_mixer_element_info_t *element)
case SND_MIXER_ETYPE_OUTPUT: case SND_MIXER_ETYPE_OUTPUT:
safe_free((void **)&element->data.io.pvoices); safe_free((void **)&element->data.io.pvoices);
break; break;
case SND_MIXER_ETYPE_CAPTURE: case SND_MIXER_ETYPE_CAPTURE1:
case SND_MIXER_ETYPE_PLAYBACK: case SND_MIXER_ETYPE_PLAYBACK1:
safe_free((void **)&element->data.pcm.pdevices); safe_free((void **)&element->data.pcm1.pdevices);
break; break;
case SND_MIXER_ETYPE_SWITCH3: case SND_MIXER_ETYPE_SWITCH3:
safe_free((void **)&element->data.switch3.pvoices); safe_free((void **)&element->data.switch3.pvoices);