[alsa-devel] Verifying mixer dB data/Invalid dB data from USB cards, especially Aureon 5.1 MkII
Raymond Yau
superquad.vortex2 at gmail.com
Tue Feb 23 05:47:50 CET 2010
2010/2/22 Lennart Poettering <mznyfn at 0pointer.de>
> On Sun, 21.02.10 11:49, Raymond Yau (superquad.vortex2 at gmail.com) wrote:
>
> > The most common onboard audio is HDA so this is not any exceptional cases
> >
> > Those HDA multi streaming feature are most users wanted in desktop
> > enviornment, are pulseaudio really designed for deskop or just only for
> > notebook and mobile ?
> >
> > The front panel green/pink jack can be used by one application while the
> > rear panel audio jacks can be used to another application for surround or
> > mic for karaoke
>
> I am not entirely convinced that this is really a common case.
>
VT17xx codec already support independent HP mode
http://git.alsa-project.org/?p=alsa-kernel.git;a=commit;h=cdc1784d49258198df600fbc1d37c07d7eee5ed6
**** List of PLAYBACK Hardware Devices ****
card 0: SB [HDA ATI SB], device 0: VT1708S Analog [VT1708S Analog]
Subdevices: 1/2
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
card 0: SB [HDA ATI SB], device 1: VT1708S Digital [VT1708S Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
**** List of CAPTURE Hardware Devices ****
card 0: SB [HDA ATI SB], device 0: VT1708S Analog [VT1708S Analog]
Subdevices: 2/2
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
AD1988B 10 channels codec on my ASUS P5BV already has 3 capture subdevices
**** List of CAPTURE Hardware Devices ****
card 0: Intel [HDA Intel], device 0: AD198x Analog [AD198x Analog]
Subdevices: 3/3
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
card 0: Intel [HDA Intel], device 1: AD198x Digital [AD198x Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
http://www.analog.com/en/audiovideo-products/audio-codecs/ad1988b/products/product.html
The AD1988A and AD1988B have 10 DACs and 6 ADCs,
Analog mixer supports recording and playback of signals from multiple
sources
ALC88x
**** List of CAPTURE Hardware Devices ****
card 0: VT82xx [HDA VIA VT82xx], device 0: ALC888 Analog [ALC888 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: VT82xx [HDA VIA VT82xx], device 2: ALC888 Analog [ALC888 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
Do any PA developer has a desktop computer with HDA audio ?
> But anyway, there is nothing in PA that would limit it to not use
> multiple parallel devices of a sound card at the same time, with the
> exception that ALSA currently has no enumeration API which could
> inform us which uses of the card are exclusive each other and which
> ones are not. PA currently tries to open the sound card in all
> combinations possible, assuming that EBUSY means it found an invalid
> combination. If one day ALSA gains an API that allows figuring out
> which combinations of streams are possible and which ones are not, I
> am happy to reinvestigate the whole issue.
>
> > Send a game's sound through 5.1 speakers while the Internet chatting
> audio
> > is sent through your headset.
>
> More often than not you'd probably use two seperate cards for that.
>
> > Send a DVD movie with 5.1 audio to a surround sound system in the living
> > room, while you listen to digital music and surf the Web on the PC.
>
> I somehow doubt that this is the most common of use cases we need to
> care about.
>
> > THe point is that PA release/close the device (suspend on idle) , if
> another
> > application using the subdevice 0 before PA resume/reopen, PA will open
> > subdevice 1 and cannot find the correct capture volume control and user
> will
> > complain they cannot record
> >
> > Since PA did not check the subdevice number to find the correct mixer
> > control
>
> I'd certainly check the subdevice id if the smixer API would supply me
> with it.
>
if ( snd_pcm_info_get_subdevices_count(pcm_info) > 1 ) && (
snd_pcm_info_get_subdevices_count(pcm_info) < 8 ))
snd_mixer_selem_id_set_index(sid, snd_pcm_info_get_subdevice(pcm_info));
>
> Lennart
>
>
More information about the Alsa-devel
mailing list