Re: Disable conversions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 25 Nov 2007, Lennart Poettering wrote:

> On Wed, 21.11.07 12:40, Takashi Iwai (tiwai@xxxxxxx) wrote:
> 
> > At Tue, 20 Nov 2007 01:51:51 +0100,
> > Lennart Poettering wrote:
> > > 
> > > 4) If I open an audio device with "plughw:" i can disable the software
> > >    resampling that takes place via
> > >    "snd_pcm_hw_params_get_rate_resample()". However, there is no
> > >    equivalent for disabling the channel number adjustment or the
> > >    sample format conversion. This would be very useful in PA however,
> > >    since this would allow me to use only the parts of plughw I am
> > >    interested in (softvol), and disable all the rest (resampling,
> > >    conversion, channel remixing).
> > 
> > Hmm..  It's a bit difficult to implement in a clean way.
> > For example, what would be the reason to disable softvol?  
> 
> Hmm, I think there's some kind of misunderstand here: softvol is the
> only part I am interested in to use. It's the resampling, the sample
> type conversion, and the channel map changing I want to disable. Right
> now, I can only disable the resampling, but the type conversion and
> channel conversion always stay enabled. Or did I miss something?

I though about this idea again. Resampling is a bit exception, because we 
have no very good implementation in alsa-lib and there are rounding 
problems regarding period sizes due to nature of ALSA API, so it's better 
to resample on bytestream if possible.

I think that Takashi already proposed to handle "disabling" using
a configuration file (interface). We can even create an argument for 
plughw device:

1) Proposal - one argument specifying multiple disabled conversions:

   plughw:CARD=0,DEV=0,DISABLECONV=cfr

   c = channels
   f = format
   r = rate

   And add 'disableconv' to pcm/pcm_plug.c configuration parser.

2) Proposal - multiple arguments

   plughw:CARD=0,DEV=0,DISABLECHANNELS=1,DISABLERATE=1,DISABLEFORMAT=1

I prefer first proposal (I don't think that it will be widely used), but I 
have no objections for second, too.

This can be applied to plug: device as well.

						Jaroslav

-----
Jaroslav Kysela <perex@xxxxxxxx>
Linux Kernel Sound Maintainer
ALSA Project
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux