[pulseaudio-discuss] observations using 9.15 test2

Florian Demmer florian at demmer.org
Mon Feb 16 13:30:09 PST 2009


Lennart Poettering wrote:
> On Sun, 15.02.09 19:21, Florian Demmer (florian at demmer.org) wrote:
>
>   
>> - when using module-hal-detect front:0 is detected which is only 2ch
>>     
>
> Which is the right thing if you set default-sample-channels to 2.
>
>   

i have that set to 6... however i think it is still working correct,
because aplay -L lists "front" as "Front speakers", which sounds very
much stereo:

front:CARD=Intel,DEV=0
    HDA Intel, ALC888 Analog
    Front speakers

>> - when manually configuring hw:0 with the following line:
>> load-module module-alsa-sink device=hw:0 channels=6
>> channel_map=rear-left,rear-right,front-left,front-right,front-center,lfe
>> front-left and front-right are used correctly
>>     
>
> The correct way to do this is this:
>
> "load-module module-alsa-sink device_id=0 channels=6"
>
> or something like this.
>
>   
ah ok... that works too.

>> about the new profile detection:
>> - with hal-detect (detect lists 0 cards, that's by design i guess?)
>>     
>
> list 0 cards? what do you mean? Where does it list 0 cards?
>
>   
when using module-detect (which i know i should not ;) there is the alsa
raw "hw" sink detected, but no cards... and my guess was that the whole
cards/profile detection is something based on hal-detect

>>> list-sinks
1 sink(s) available.
    index: 0
    name: <alsa_output.hw_0>
    driver: <module-alsa-sink.c>
    flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY
FLAT_VOLUME
    state: IDLE
    volume: 0: 100% 1: 100%
            0: 0.00 dB 1: 0.00 dB
            balance 0.00
    base volume: 100%
                 0.00 dB
    volume steps: 65537
    muted: no
    current latency: 371.19 ms
    configured latency: 371.52 ms; range is 4.00 .. 371.52 ms
    max request: 64 KiB
    max rewind: 64 KiB
    monitor source: 0
    sample spec: s16le 2ch 44100Hz
    channel map: front-left,front-right
                 Stereo
    used by: 0
    linked by: 0
    module: 0
    properties:
        device.api = "alsa"
        device.class = "sound"
        alsa.class = "generic"
        alsa.subclass = "generic-mix"
        alsa.name = "ALC888 Analog"
        alsa.id = "ALC888 Analog"
        alsa.subdevice = "0"
        alsa.subdevice_name = "subdevice #0"
        alsa.device = "0"
        alsa.card = "0"
        alsa.card_name = "HDA Intel"
        alsa.long_card_name = "HDA Intel at 0xfdff4000 irq 22"
        alsa.driver_name = "snd_hda_intel"
        hal.udi = "/org/freedesktop/Hal/devices/pci_8086_284b_sound_card_0"
        hal.product = "HDA Intel Sound Card"
        hal.card_id = "HDA Intel"
        device.description = "HDA Intel - ALC888 Analog"
        device.string = "hw:0"
        device.buffering.buffer_size = "65536"
        device.buffering.fragment_size = "32768"
        device.access_mode = "mmap+timer"
>>> list-cards
0 card(s) available.


>> - why is there no "output-analog-surround-51+output-iec958-stereo"!?
>> only with input-iec958!
>>     
>
> We only check for one output plus one input. We don't check for two
> simultaneously usable outputs.
>
> Some cards do support using spdif and analog at the same time
> independantly. Some cards do not, however do support multiple opens,
> resulting in mixed audio. Since we cannot distuingish these two cases
> we only access the card for playback in one way at a time.
>
> Quite frankly I don't think allowing SPIDF and analog output at the
> same time would be of much realistic use, however it would confuse the
> user.
>
>   
you are probably right... i just through "i have both, i want to use
both" :)

>> - i can configure analog and digital output manually using:
>> load-module module-alsa-sink device=surround51:CARD=Intel,DEV=0
>> sink_name=analog_out
>> load-module module-alsa-sink device=iec958:CARD=Intel,DEV=0
>> sink_name=digital_out
>> .. and both outputs work (at least in stereo)
>>     
>
> Lucky you.  That works on your card, but won't work on others. And on
> even other cards this will work but have a different effect than you
> might expect (i.e. both sinks are always mixed). See above.
>
>   
>> - also why is the digital out only detected as 2ch? (manually configuring
>> to 6ch results in error)
>> .. is this an alsa limitiation? pulseaudio detection problem?
>> (hardware?)
>>     
>
> SPDIF PCM is generally only Stereo. Multichannel audio is only
> possible when passing encoded audio (AC3...) over SPDIF.
>   
i didn't know that only stereo pcm is possible via spdif. that explains
a lot!
and means that my hardware is detected absolutely correct by alsa and pa. :)

(and i need to get a52 encoding working, any chance/plans for a pa
module that could to that without the back and forth through alsa?)
>   
>> module-combine does not work anymore:
>> E: module-combine.c: failed to parse module arguments
>> E: module.c: Failed to load  module "module-combine" (argument:
>> "sink_name=combined master=analog_out slaves=digital_out"):
>> initialization failed.
>> E: main.c: Module load failed.
>> E: main.c: Failed to initialize daemon.
>> configured with:
>> load-module module-combine sink_name=combined master=analog_out
>> slaves=digital_out
>> (other sinks as above)
>> .. did the parameterlist change?
>>     
>
> Hmm, no, not really. Do you know if that worked in .13?
>
>
>   
checked the source and it looks like the master argument is gone! only
"slaves".
i can load the module like this:

load-module module-combine sink_name=combined slaves=digital_out,analog_out

however, while previously i was able to set different volumes on digital and analog, they are now locked (in pavucontrol). it seems it is not possible to eg. set digital to 60% while leaving analog to 100% (which would result in nearly same volume on my system)

oh well, since digital/analog dual operations has not much practical use anyway, it is not that important.


br
Florian






More information about the pulseaudio-discuss mailing list