[pulseaudio-discuss] [PATCH] alsa-util: don't crash on devices with more than 32 channels
Arun Raghavan
arun at arunraghavan.net
Thu Mar 23 09:59:51 UTC 2017
On Thu, 23 Mar 2017, at 03:27 PM, Arun Raghavan wrote:
>
>
> On Tue, 31 Jan 2017, at 07:39 PM, Tanu Kaskinen wrote:
> > On Sun, 2017-01-29 at 10:36 +0900, Takashi Sakamoto wrote:
> > > On Jan 29 2017 01:08, Tanu Kaskinen wrote:
> > > > The pa_channel_map_init_extend() call later in the function crashes if
> > > > if ss->channels is greater than PA_CHANNELS_MAX.
> > > >
> > > > Reported here:
> > > > https://lists.freedesktop.org/archives/pulseaudio-discuss/2017-January/027404.html
> > > > ---
> > > > src/modules/alsa/alsa-util.c | 7 +++++++
> > > > 1 file changed, 7 insertions(+)
> > >
> > > Reviewed-by: Takashi Sakamoto <o-takashi at sakamocchi.jp>
> > > Tested-by: Takashi Sakamoto <o-takashi at sakamocchi.jp>
> >
> > Thanks! I pushed the patch now.
> >
> > > I tested with a device which has 34ch capture and 30ch playback.
> > > PulseAudio adds a sink for the playback PCM substream with multichannel
> > > profile, and ignores the capture PCM substream.
> > >
> > > But I think there's a space to discuss this issue more. In this world,
> > > we have some devices with over-32ch, or users can add virtual sound card
> > > with over-32ch. Although such users seem to work without PulseAudio,
> > > it's better to drop this kind of restriction for better future of this
> > > sound server.
> >
> > Being able to use a 32-channel subset of the available channels would
> > be a very welcome addition for the alsa modules, but without concrete
> > use cases I don't think it makes sense to implement support for more
> > channels outside the internals of the alsa modules, due to the
> > invasiveness of the required changes.
> >
> > Another idea: it would be generally useful to split alsa devices into
> > multiple sinks more easily than by fiddling with module-remap-sink.
> > Such splitting feature could perhaps also be used to split e.g. a 64-
> > channel device into two 32-channel sinks.
> >
> > --
>
> In the mean time, should we bump up PA_CHANNELS_MAX so that these cards
> work out of the box?
Hmm, I forgot that we probably can't do that without breaking channel
map and cvolume tagstructs.
-- Arun
More information about the pulseaudio-discuss
mailing list