"Volume element PCM has 6 channels. That's too much!" - PA doesn't support elements with more than two channels
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
PulseAudio |
Unknown
|
Medium
|
|||
pulseaudio (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
When connecting the Terratec PHASE26 in 16/48 mode (6 channels) I get the error "Volume element PCM has 6 channels. That's too much! I can't handle that!" and the card fails to show up in Sound Settings.
Everything is fine with 24/48 mode (2 channels).
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #15 |
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #16 |
do you mean multichannel profile still not fix your problem?
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #17 |
you have to post pulseaudio verbose log, output of alsa-info.sh if tje multichannel profile still not work
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #18 |
Created attachment 107567
Pulseaudio verbose log
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #19 |
Created attachment 107568
alsa-info.sh output
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #20 |
Hi,
I only use pulseaudio 5.0 from Debian testing. If the multichannel profile has been added to the 5.0 release then I have it, otherwise I need some help on how to use it. I've attached what you asked for.
I should probably add that pulseaudio itself runs fine, but doesn't give me any audio output at all, I've checked this via hdspmixer.
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #21 |
2014-08-23 alsa: Remove four channel input profile
2014-08-01 alsa: Add a multichannel fallback mapping
2014-08-01 alsa: Allow "fallback" configuration for mappings and profiles
2014-08-01 alsa: Add "exact-channels" mapping configurability
those patches were supposed to support firewire audio which don't support mono, stereo surround40,
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #22 |
http://
http://
you need to follow up if it still not fix your problem
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #23 |
Hey Raymond,
again, is the multichannel profile included in pulseaduio 5.0? It seems to me that these commits are more recent, and I don't build pulseaudio from source.
In freedesktop.org Bugzilla #84804, Tanu Kaskinen (tanuk) wrote : | #24 |
Yes, the multichannel fix is newer than 5.0.
If you feel adventurous enough to install pulseaudio from source, here are steps for installing the current git version:
git clone git://anongit.
cd pulseaudio
./bootstrap.sh
make
sudo make install
sudo ldconfig
The bootstrap.sh script will probably give you all kinds of errors, if you don't have the development tools and the headers of various dependecy libraries already installed. I think debian has some tool for installing the build dependencies, which should make it pretty painless to get everything installed, something like "apt-get build-dependencies pulseaudio". I don't know the exact command, google will help you.
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #25 |
your driver seem need to set autosync source
1992.311070] snd_hdsp 0000:04:07.0: No AutoSync source for requested rate
[ 2007.259919] snd_hdsp 0000:04:07.0: No AutoSync source for requested rate
[ 2029.877275] snd_hdsp 0000:04:07.0: No AutoSync source for requested rate
[ 2050.904205] snd_hdsp 0000:04:07.0: No AutoSync source for requested rate
[ 2072.123263] snd_hdsp 0000:04:07.0: No AutoSync source for requested rate
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #26 |
That's true, I use an external autosync source with 44100hz, so that's the only possible rate. Alsa has no issues with this.
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #27 |
seem no active ports/ports
Card #3
Name: alsa_card.
Driver: module-alsa-card.c
Owner Module: 8
Properties:
alsa.card = "0"
alsa.card_name = "PHASE 88 Rack FW"
alsa.
alsa.driver_name = "snd_bebob"
device.bus_path = "pci-0000:01:09.0"
sysfs.path = "/devices/
udev.id = "firewire-
device.bus = "firewire"
device.
device.
device.string = "0"
device.
module-
device.icon_name = "audio-
Profiles:
input:
output:
output:
off: Off (sinks: 0, sources: 0, priority. 0)
Active Profile: output:
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #28 |
why did pulseaidio still probe channels higher than channels_max ?
( 2.896| 0.000) I: [pulseaudio] alsa-util.c: Device hw:0 doesn't support sample format s16le, changed to s32le.
( 2.909| 0.012) D: [pulseaudio] alsa-mixer.c: Profile output:
( 2.909| 0.000) D: [pulseaudio] alsa-mixer.c: Skipping profile output:
( 2.910| 0.000) D: [pulseaudio] alsa-mixer.c: Skipping profile output:
( 2.910| 0.000) D: [pulseaudio] alsa-mixer.c: Skipping profile output:
( 2.910| 0.000) D: [pulseaudio] alsa-mixer.c: Skipping profile output:
( 2.911| 0.000) D: [pulseaudio] alsa-mixer.c: Looking at profile output:12-channels
( 2.911| 0.000) D: [pulseaudio] alsa-mixer.c: Checking for playback on 12 Channels (12-channels)
( 2.911| 0.000) D: [pulseaudio] alsa-util.c: Trying hw:0 with SND_PCM_
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #29 |
I finally tried out the multichannel fallback patch (with the help of the Debian pulseaudio maintenance team) but it doesn't solve my problem.
I have no clue why there are no active ports or why pa probes higher channels.
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #30 |
http://
you can try build and run pulseaudio from git without install
and post the verbose log if it still not work
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #31 |
post the output of
aplay -v --dump-hw-params -Dhw:0,0 test.wav
arecord -v --dump-hw-params -Dhw:0,0 test.wav
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #32 |
---
$ arecord -v --dump-hw-params -Dhw:0,0 test.wav
Aufnahme: WAVE 'test.wav' : Unsigned 8 bit, Rate: 8000 Hz, mono
HW Params of device "hw:0,0":
-------
ACCESS: MMAP_NONINTERLEAVED RW_NONINTERLEAVED
FORMAT: S32_LE
SUBFORMAT: STD
SAMPLE_BITS: 32
FRAME_BITS: [448 832]
CHANNELS: [14 26]
RATE: [32000 96000]
PERIOD_TIME: (666 256000]
PERIOD_SIZE: [64 8192]
PERIOD_BYTES: [3584 851968]
PERIODS: 2
BUFFER_TIME: (1333 512000]
BUFFER_SIZE: [128 16384]
BUFFER_BYTES: [7168 1703936]
TICK_TIME: ALL
-------
arecord: set_params:1228: Zugriffs-Modus nicht unterstützt
--
The last message means "Access-mode not supported"
---
aplay -v --dump-hw-params -Dhw:0,0 music.wav
Wiedergabe: WAVE 'music.wav' : Signed 16 bit Little Endian, Rate: 44100 Hz, stereo
HW Params of device "hw:0,0":
-------
ACCESS: MMAP_NONINTERLEAVED RW_NONINTERLEAVED
FORMAT: S32_LE
SUBFORMAT: STD
SAMPLE_BITS: 32
FRAME_BITS: [448 832]
CHANNELS: [14 26]
RATE: [32000 96000]
PERIOD_TIME: (666 256000]
PERIOD_SIZE: [64 8192]
PERIOD_BYTES: [3584 851968]
PERIODS: 2
BUFFER_TIME: (1333 512000]
BUFFER_SIZE: [128 16384]
BUFFER_BYTES: [7168 1703936]
TICK_TIME: ALL
-------
aplay: set_params:1228: Zugriffs-Modus nicht unterstützt
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #33 |
those pa_log_debug() should be pa_log_error() to indicate both MMAP_NONINTERLEAVED RW_NONINTERLEAVED are not supported
if (_use_mmap) {
if (snd_pcm_
/* mmap() didn't work, fall back to interleaved */
if ((ret = snd_pcm_
}
}
} else if ((ret = snd_pcm_
goto finish;
}
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #34 |
need to test whether sound card only support non interleaved mode by using snd_pcm_
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #35 |
http://
/** PCM access type */
typedef enum _snd_pcm_access {
/** mmap access with simple interleaved channels */
SND_PCM_
/** mmap access with simple non interleaved channels */
SND_PCM_
/** mmap access with complex placement */
SND_PCM_
/** snd_pcm_
SND_PCM_
/** snd_pcm_
SND_PCM_
SND_PCM_
} snd_pcm_access_t;
there are five pcm access type but pulseaudio only support two and does not report any error when the sound card does not support interleaved modes
Andras Muranyi (muranyia) wrote : | #1 |
Raymond (superquad-vortex2) wrote : | #2 |
send email to the author of the patch
Andras Muranyi (muranyia) wrote : Fwd: [Bug 1390474] Re: "Volume element PCM has 6 channels. That's too much!" with Terratec PHASE26 | #3 |
Kindly forwarding this bug, please express your thoughts on Launchpad.
---------- Forwarded message ----------
From: Raymond <email address hidden>
Date: Sat, Nov 8, 2014 at 4:06 PM
Subject: [Bug 1390474] Re: "Volume element PCM has 6 channels. That's too
much!" with Terratec PHASE26
To: <email address hidden>
http://
/alsa-mixer.
send email to the author of the patch
--
You received this bug notification because you are subscribed to the bug
report.
https:/
Title:
"Volume element PCM has 6 channels. That's too much!" with Terratec
PHASE26
Status in “pulseaudio” package in Ubuntu:
New
Bug description:
When connecting the Terratec PHASE26 in 16/48 mode (6 channels) I get the
error "Volume element PCM has 6 channels. That's too much! I can't handle
that!" and the card fails to show up in Sound Settings.
Everything is fine with 24/48 mode (2 channels).
To manage notifications about this bug go to:
https:/
Raymond (superquad-vortex2) wrote : Re: "Volume element PCM has 6 channels. That's too much!" with Terratec PHASE26 | #4 |
this mean your usb audio have a 6 channel playbacck volume control similar to
Tanu Kaskinen (tanuk) wrote : | #5 |
"Kindly forwarding this bug, please express your thoughts on Launchpad."
I believe that was a direct request for me. My thoughts: it's unfortunate that PulseAudio doesn't support mixer elements with more than 2 volume channels. It would be nice if someone would fix that. Due to lack of time, I won't be that someone, at least in the short (or even medium) term.
In freedesktop.org Bugzilla #84804, pmeerw (pmeerw) wrote : | #36 |
Created attachment 109516
logging when only non-interleaved PCM available
patch which adds logging if no suitable access format found; non-interleaved PCM is still unsupported
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #37 |
(In reply to Peter Meerwald from comment #21)
> Created attachment 109516 [details] [review]
> logging when only non-interleaved PCM available
>
> patch which adds logging if no suitable access format found; non-interleaved
> PCM is still unsupported
did your patch really works ?
if you want to test different accesses, you need to use test_access to find out whether the access is support before you use set_access which is destructive when error ocurrs
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #38 |
try
snd-dummy model=rme9652
https:/
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #39 |
(In reply to Peter Meerwald from comment #21)
> Created attachment 109516 [details] [review]
> logging when only non-interleaved PCM available
>
> patch which adds logging if no suitable access format found; non-interleaved
> PCM is still unsupported
this is a fatal error when the interleaced access is not supported by the alsa driver the card is unusable by pulseaudio
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #40 |
Read / Write transfer
There are two versions of read / write routines. The first expects the interleaved samples at input (SND_PCM_
this mean pulseaudio still need snd_pcm_writen() and snd_pcm_readn() to support SND_PCM_
Andras Muranyi (muranyia) wrote : | #6 |
> this mean your usb audio have a 6 channel playbacck volume control similar to
> https:/
Does this mean that bug #936539 (Freedesktop bug 84983 on Launchpad) involves all devices with more than 2 volume channels?
In that case, shall I suggest to change the description of #936539 to something more general and mark this one as a duplicate?
Raymond (superquad-vortex2) wrote : | #7 |
https:/
bug#96539
both are related to xonar sound card which have a multi channl volume control which is not supported by pulseaudio
Andras Muranyi (muranyia) wrote : | #8 |
Is any sound card with multi channel volume control supported by pulseaudio?
Changed in pulseaudio (Ubuntu): | |
status: | New → Incomplete |
Andras Muranyi (muranyia) wrote : | #9 |
Please tell me what to send in order to triage this bug, thanks
Raymond (superquad-vortex2) wrote : | #10 |
https:/
seem usb audio devices build the multi volume control in the same way
so you should file an up stream pulseaudio bug report for usb audio device
have you ask Arun how to revert his patch ?
https:/
Simple mixer control 'Speaker',0
Capabilities: pvolume pswitch pswitch-joined penum
Playback channels: Front Left - Front Right - Rear Left - Rear Right - Front Center - Woofer - Side Left - Side Right
Limits: Playback 0 - 197
Mono:
Front Left: Playback 90 [46%] [-20.06dB] [on]
Front Right: Playback 90 [46%] [-20.06dB] [on]
Rear Left: Playback 90 [46%] [-20.06dB] [on]
Rear Right: Playback 90 [46%] [-20.06dB] [on]
Front Center: Playback 90 [46%] [-20.06dB] [on]
Woofer: Playback 90 [46%] [-20.06dB] [on]
Side Left: Playback 90 [46%] [-20.06dB] [on]
Side Right: Playback 90 [46%] [-20.06dB] [on]
Andras Muranyi (muranyia) wrote : | #11 |
> have you ask Arun how to revert his patch ?
No, I am just an end user so I don't feel I shall ask someone to revert their patch.
However... Arun? The patch was registered by Tanu Kaskinen and Colin Guthrie. I have forwarded this bug to them. Colin did not reply, Tanu's reply is above. https:/
I would appreciate if, in case you think that is the best solution for the moment, you proposed reverting the patch to the appropriate personnel. Thanks.
Anyway, shall we triage this bug, shan't we? Otherwise it will just expire.
summary: |
- "Volume element PCM has 6 channels. That's too much!" with Terratec - PHASE26 + "Volume element PCM has 6 channels. That's too much!" - PA doesn't + support elements with more than two channels |
Raymond (superquad-vortex2) wrote : | #12 |
+ if (e->n_channels > 2) {
+ /* FIXME: In some places code like this is used:
+ *
+ * e->masks[
+ *
+ * The definition of e->masks is
+ *
+ * pa_channel_
+ *
+ * Since the array size is fixed at 2, we obviously
+ * don't support elements with more than two
+ * channels... */
+ pa_log_warn("Volume element %s has %u channels. That's too much! I can't handle that!", e->alsa_name, e->n_channels);
+ return -1;
+ }
+
the answer was aleady stated in the patch
you need to change alsa-mixer.h
-pa_channel_
+pa_channel_
and
- if (e->n_channels > 2) {
+ if (e->n_channels > 8) {
Andras Muranyi (muranyia) wrote : | #13 |
Thanks Raymond for the info.
I would like to get this bug ironed out in Pulseaudio not only locally.
Can we go on with triaging? Right the the bug is New. Could we eventually change to Conformed?
Andras Muranyi (muranyia) wrote : | #14 |
According to comment 5
Changed in pulseaudio (Ubuntu): | |
status: | Incomplete → Confirmed |
Changed in pulseaudio: | |
importance: | Unknown → Medium |
status: | Unknown → Confirmed |
In freedesktop.org Bugzilla #84804, David Henningsson (diwic) wrote : | #41 |
Hi benjamin,
PulseAudio 6.0 has now been released and it includes the multichannel fallback, which should have solved your issue, but apparently it has not.
Could you submit a new PulseAudio verbose log with PA 6.0? Thanks.
In freedesktop.org Bugzilla #84804, David Henningsson (diwic) wrote : | #42 |
Comment on attachment 109516
logging when only non-interleaved PCM available
Review of attachment 109516:
-------
Well, that is a truth with modification, I believe - PulseAudio as a last resort tries to open plug:hw:* and that should auto-convert from noninterleaved to interleaved. So this should not be an issue.
In freedesktop.org Bugzilla #84804, David Henningsson (diwic) wrote : | #43 |
Peter, forget the last comment. I read your patch again and it looks good, so I've pushed it now.
(This does not change the fact that we still need a new verbose log from Benjamin with PA 6.0.)
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #44 |
Hi,
I built PA 6 from git and got the exact same verbose output of aplay and arecord than I posted on 2014-10-27.
The apps are working though - partly. Browsers and music apps like aqualung play sounds now, but there are a lot of dropouts in the sound. Sometimes, it even plays back at the wrong speed.
I started PA, fired up a browser, played back the beginning of a youtube video and closed everything again:
http://
Changed in pulseaudio: | |
status: | Confirmed → Incomplete |
In freedesktop.org Bugzilla #84804, David Henningsson (diwic) wrote : | #45 |
Thanks, so in fact the card is detected now.
The crackling looks like a driver problem but I'm not sure. You could try to change this line in default.pa:
load-module module-udev-detect
to this:
load-module module-udev-detect tsched=0
...and try again.
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #46 |
tsched=0 !!!
That seems to do the trick! Pulseaudio 6.0 is running with every app simultaneously without a glitch! I will do more testing, but it looks perfect right now!
Thank you all!
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #47 |
refer rme9652_
if (!rme9652-
return (status & RME9652_buffer_id) ? period_size : 0;
if precise_ptr is not enabled by module parameter, it just return pointer value as period_size or zero, this mean time scheduling should be disabled since driver can only use two periods (impossible to rewind)
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #48 |
Created attachment 113564
add SNDRV_PCM_
rme9652 driver need to specify SNDRV_PCM_
In freedesktop.org Bugzilla #84804, David Henningsson (diwic) wrote : | #49 |
Ok. So the "high channel count" part is fixed with 6.0.
The "non interleaved access" was never a problem (emulated by alsa plug layer).
Tsched=0 workarounds.
Changed in pulseaudio: | |
status: | Incomplete → Fix Released |
Raymond (superquad-vortex2) wrote : | #50 |
https:/
do the patch fix your bug ?
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #51 |
Hi,
I'm not sure if this is 100% the same issue, but my problems started again when Debian upgraded from pulseaudio 8 to 9 recently.
Even though I still use tsched=0, I hear huge amounts of clicks and pops while playing back (everything sounds like a very old vinyl recording now...). Enabling tsched makes no difference, in fact I think that it is still of even though I tried tsched=1.
I'll attach the verbose log.
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #52 |
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #53 |
pulseaudio does not support non-interlaved mode
static void check_access(
if ((use_mmap && !snd_pcm_
+
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #54 |
Created attachment 125150
attachment-
Meaning what exactly?
It worked with previous versions. And even if it doesn't work - what is the recommended step here? Remove pulseaudio?
Thanks & best regards
Benjamin
Am 19. Juli 2016 16:09:10 MESZ, schrieb <email address hidden>:
>https:/
>
>--- Comment #37 from Raymond <email address hidden> ---
>https:/
>
>
>pulseaudio does not support non-interlaved mode
>
>
>static void check_access(
>*hwparams,
>bool use_mmap) {
> if ((use_mmap && !snd_pcm_
>SND_PCM_
> !snd_pcm_
>SND_PCM_
> pa_log_
>snd_pcm_
>+
>
>--
>You are receiving this mail because:
>You reported the bug.
In freedesktop.org Bugzilla #84804, Tanu Kaskinen (tanuk) wrote : | #55 |
The log shows that you're not using module-udev-detect. I don't know if that's why things stopped working, but that would anyway be the first thing to fix. Debian changed the packaging so that "pulseaudio-
In freedesktop.org Bugzilla #84804, Raymond (superquad-vortex2) wrote : | #56 |
https:/
static struct snd_pcm_hardware snd_hdsp_
{
.info = (SNDRV_
SNDRV_
SNDRV_
SNDRV_
#ifdef SNDRV_BIG_ENDIAN
.formats = SNDRV_PCM_
#else
.formats = SNDRV_PCM_
#endif
.rates = (SNDRV_
SNDRV_
SNDRV_
SNDRV_
SNDRV_
SNDRV_
.rate_min = 32000,
.rate_max = 96000,
.channels_min = 5,
.channels_max = HDSP_MAX_CHANNELS,
.buffer_bytes_max = HDSP_CHANNEL_
.period_bytes_min = (64 * 4) * 10,
.period_bytes_max = (8192 * 4) * HDSP_MAX_CHANNELS,
.periods_min = 2,
.periods_max = 2,
.fifo_size = 0
};
only support 2 periods and non-interleaved access mode
pulseaudio cannot use 4 fragments
this mean one period of channel 1 , follow by one period of channel 2 ,..., one period of channel n
seem has flag to control the precision of hw pointer
static snd_pcm_uframes_t hdsp_hw_
{
int position;
position = hdsp_read(hdsp, HDSP_statusRegi
if (!hdsp-
return (position & HDSP_BufferID) ? (hdsp->period_bytes / 4) : 0;
position &= HDSP_BufferPosi
position /= 4;
position &= (hdsp->
return position;
}
In freedesktop.org Bugzilla #84804, Bejjamin (bejjamin) wrote : | #57 |
(In reply to Tanu Kaskinen from comment #39)
> The log shows that you're not using module-udev-detect. I don't know if
> that's why things stopped working, but that would anyway be the first thing
> to fix. Debian changed the packaging so that "pulseaudio-
> a separate package. You have probably disabled automatic installation of
> recommended packages, because by default that package should get installed
> automatically.
Thanks a lot! My system really didn't install module-udev-detect (package pulseaudio-
Changed in pulseaudio (Ubuntu): | |
status: | Confirmed → Fix Released |
In freedesktop.org Bugzilla #84804, Gitlab-migration (gitlab-migration) wrote : | #58 |
-- 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:/
Changed in pulseaudio: | |
status: | Fix Released → Unknown |
Pulseaudio doesn't know how to handle soundcards like the RME HDSP 9652 I use (26 channels, 24bit only). I tried to alter the default.pa file since there are some soundcard specific workarounds available* but I had no success. This is pretty frustrating because pulseaudio is the standard soundsystem of most distros nowadays and the only real workaround is to remove it and use plain alsa.
I use Debian testing (Jessie/Sid) with pulseaudio 5.0.
* ccrma-mail. stanford. edu/pipermail/ planetccrma/ 2011-April/ 017566. html ubuntuforums. org/showthread. php?t=1871685
http://
http://
Thanks,
Benjamin