Bug 42137 - Edirol/Roland M-16DX not detected properly
Summary: Edirol/Roland M-16DX not detected properly
Status: RESOLVED MOVED
Alias: None
Product: PulseAudio
Classification: Unclassified
Component: alsa (show other bugs)
Version: unspecified
Hardware: All Linux (All)
: medium normal
Assignee: pulseaudio-bugs
QA Contact: pulseaudio-bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-10-23 14:31 UTC by Lasse Kärkkäinen
Modified: 2018-07-30 09:33 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Channel mappings (1.92 KB, application/octet-stream)
2012-03-22 19:13 UTC, Lasse Kärkkäinen
Details

Description Lasse Kärkkäinen 2011-10-23 14:31:51 UTC
3 [M16DX          ]: USB-Audio - M-16DX
                      EDIROL M-16DX at usb-0000:02:00.0-2, high speed

M-16DX is a studio mixer / capture device with 18-channel capture and 2-channel playback. Pulseaudio does not detect any capture functionality, probably due to the high channel count. For playback, separate analog and SPDIF outputs are detected by Pulseaudio (probably because ALSA exposes a iec958 device) but as far as I know, M-16DX is unable to do SPDIF pass-through. Also, playback is broken due to a known ALSA bug that is unlikely to get fixed.

I suggest detecting the device for capture only, using 18 channels as it doesn't support any less. The only sample format supported is S32_LE. The sample rate is configured on the hardware and cannot be changed by the host (44.1/48/96 kHz).

The capture channels should be labeled as follows:
Mono 1 (Mic/Line)
Mono 2 (Mic/Line)
Mono 3 (Mic/Line)
Mono 4 (Mic/Line)
Stereo 5L/6R (Line)
Stereo 7L/8R (Line)
Stereo 9L/10R (Line)
Stereo 11L/12R (Line / SPDIF)
Stereo 13L/14R (Aux Return 1 / USB)
Stereo 15L/16R (Aux Return 2)
Stereo Main Mix (Monitor)

The numbers (with L/R) and "MAIN MIX" are printed on the device itself.

The last two channels (17-18) return the master output of the device, right before the master volume control.

No capture or playback volume controls are exposed via alsamixer (instead, the device has hardware knobs).
Comment 1 Arun Raghavan 2012-03-14 23:02:53 UTC
I suspect we'll need a custom profile for this like the Native Instruments stuff we already have. Along with the existing profiles in src/modules/alsa/mixer, this documentation might help if you want to take a stab at it:

http://www.freedesktop.org/wiki/Software/PulseAudio/Backends/ALSA/Profiles
Comment 2 Lasse Kärkkäinen 2012-03-22 19:13:12 UTC
Created attachment 58894 [details]
Channel mappings

ATTRS{idVendor}=="0582", ATTRS{idProduct}=="00c4", ENV{PULSE_PROFILE_SET}="edirol-m16dx.conf"

It pretty much works with this config. Channel mapping is a bit problematic as PulseAudio clearly does not support this use case. AuxN with N corresponding to markings on the hardware were used for capture channels. Thus, aux0 is not used and the first one is aux1. Mapping to ALSA apps is broken (cannot capture aux channels properly).

Playback is broken because of ALSA bugs but I still provided profiles for it in case the bugs get fixed or in case the user wants to use it despite the distortion.
Comment 3 muranyia 2017-11-10 20:15:10 UTC
Both playback and capture work now in ALSA
http://mailman.alsa-project.org/pipermail/alsa-devel/2013-June/063478.html
Comment 4 Tanu Kaskinen 2017-12-02 14:30:30 UTC
Is this bug still present in PulseAudio (without Lasse's configuration)? It should nowadays be possible to sound cards with unusually high channel counts without custom configuration.
Comment 5 GitLab Migration User 2018-07-30 09:33:36 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/13.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.