On 01/08/2014 02:33 PM, Takashi Sakamoto wrote: >> Thanks. To start somewhere, what type of playback/recording do you want >> to work? As in, what sample format, what number of channels etc? > > I apologize but currently I have no better answer for this question. > (It's an evidence that I'm a newbie for this project...) > > Let me describe about devices which the drivers enable: > - S32 for capture, S16/S32 for playback > - its range of the number of channels for playback/capture is between 2 > to 34 (depending on devices) > - some devices change its number of channels at the same sampling rate > according to settings > - Playback stream don't always go to fixed output port because the > devices have rich internal mixer. > > The device are not designed as a standard sound devices with > 2/3.1/4/4.1/5/5.1/7.1 positions. The devices are designed for studio use. PulseAudio was designed for consumer audio usage rather than pro audio usage, so we only test for the standard surround ones. You can look in /usr/share/pulseaudio/alsa-mixer/profile-sets/default.conf if you're curious about the details on what we probe and with which device strings. It's good that you can get things to work if you load module-alsa-sink/source manually. My question is: Assuming you have a device with 16ch for capture and 12ch for playback, can you still open the playback PCM for 2ch playback? E g, if you want to use the headphone output only, and keep other channels silent. Or will your driver refuse unless you set the channel count to exactly 12? > > Currently I load module-alsa-sink/module-alsa-source in my hand and > check PulseAudio can use the devices. For example, this device has 16ch > for capture and 12ch for playback at 44.1kHz: > > ###### > $ pactl list sources > ... > Source #3 > State: RUNNING > Name: alsa_input.hw_1_0 > Description: Motherboard > Driver: module-alsa-source.c > Sample Specification: s32le 16ch 44100Hz > Channel Map: > front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right,aux0,aux1,aux2,aux3,aux4,aux5,aux6,aux7 > > Owner Module: 27 > Mute: no > Volume: 0: 100% 1: 100% 2: 100% 3: 100% 4: 100% 5: 100% 6: 100% 7: > 100% 8: 100% 9: 100% 10: 100% 11: 100% 12: 100% 13: 100% 14: 100% 15: 100% > 0: -0.00 dB 1: -0.00 dB 2: -0.00 dB 3: -0.00 dB 4: -0.00 dB > 5: -0.00 dB 6: -0.00 dB 7: -0.00 dB 8: -0.00 dB 9: -0.00 dB 10: -0.00 dB > 11: -0.00 dB 12: -0.00 dB 13: -0.00 dB 14: -0.00 dB 15: -0.00 dB > balance 0.00 > Base Volume: 100% > 0.00 dB > Monitor of Sink: n/a > Latency: 1448 usec, configured 20000 usec > Flags: HARDWARE DECIBEL_VOLUME LATENCY > Properties: > alsa.resolution_bits = "24" > device.api = "alsa" > device.class = "sound" > alsa.class = "generic" > alsa.subclass = "generic-mix" > alsa.name = "FW 1814 PCM" > alsa.id = "BeBoB" > alsa.subdevice = "0" > alsa.subdevice_name = "subdevice #0" > alsa.device = "0" > alsa.card = "1" > alsa.card_name = "FW 1814" > alsa.long_card_name = "M-AUDIO FW 1814 (id:131, rev:1), GUID > 000d6c04007feef8 at fw1.0, S400" > alsa.driver_name = "snd_bebob" > device.bus_path = "pci-0000:0c:06.0" > sysfs.path = > "/devices/pci0000:00/0000:00:1e.0/0000:0c:06.0/fw1/fw1.0/sound/card1" > udev.id = "firewire-0x000d6c04007feef8" > device.bus = "firewire" > device.vendor.name = "Texas Instruments" > device.product.name = "Motherboard" > device.string = "hw:1,0" > device.buffering.buffer_size = "5644800" > device.buffering.fragment_size = "2822400" > device.access_mode = "mmap+timer" > device.description = "Motherboard" > device.icon_name = "audio-input-microphone-firewire" > Formats: > pcm > > $ pactl list sinks > Sink #1 > State: IDLE > Name: alsa_output.hw_1_0 > Description: Motherboard > Driver: module-alsa-sink.c > Sample Specification: s16le 12ch 44100Hz > Channel Map: > front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right,aux0,aux1,aux2,aux3 > > Owner Module: 26 > Mute: no > Volume: 0: 100% 1: 100% 2: 100% 3: 100% 4: 100% 5: 100% 6: 100% 7: > 100% 8: 100% 9: 100% 10: 100% 11: 100% > 0: 0.00 dB 1: 0.00 dB 2: 0.00 dB 3: 0.00 dB 4: 0.00 dB 5: > 0.00 dB 6: 0.00 dB 7: 0.00 dB 8: 0.00 dB 9: 0.00 dB 10: 0.00 dB 11: 0.00 dB > balance 0.00 > Base Volume: 100% > 0.00 dB > Monitor Source: alsa_output.hw_1_0.monitor > Latency: 20078 usec, configured 20000 usec > Flags: HARDWARE DECIBEL_VOLUME LATENCY > Properties: > alsa.resolution_bits = "16" > device.api = "alsa" > device.class = "sound" > alsa.class = "generic" > alsa.subclass = "generic-mix" > alsa.name = "FW 1814 PCM" > alsa.id = "BeBoB" > alsa.subdevice = "0" > alsa.subdevice_name = "subdevice #0" > alsa.device = "0" > alsa.card = "1" > alsa.card_name = "FW 1814" > alsa.long_card_name = "M-AUDIO FW 1814 (id:131, rev:1), GUID > 000d6c04007feef8 at fw1.0, S400" > alsa.driver_name = "snd_bebob" > device.bus_path = "pci-0000:0c:06.0" > sysfs.path = > "/devices/pci0000:00/0000:00:1e.0/0000:0c:06.0/fw1/fw1.0/sound/card1" > udev.id = "firewire-0x000d6c04007feef8" > device.bus = "firewire" > device.vendor.name = "Texas Instruments" > device.product.name = "Motherboard" > device.string = "hw:1,0" > device.buffering.buffer_size = "2116800" > device.buffering.fragment_size = "1058400" > device.access_mode = "mmap+timer" > device.description = "Motherboard" > device.icon_name = "audio-card-firewire" > Formats: > pcm > ###### > > I must consider about how PulseAudio handle these devices but I have a > little knowledgement about PulseAudio. So I need your help. > > > Thanks > > Takashi Sakamoto > -- David Henningsson, Canonical Ltd. https://launchpad.net/~diwic