On Wed, 2 Oct 2002, James Courtier-Dutton wrote:
> Hello
> It would be nice if there was a feature in alsa that would let the user
> tell alsa which speakers are plugged into which sound card sockets.
> E.g. On sound card 0, I have: -
> Left speaker in Stereo Jack 1-Left
> Right speaker in Stereo Jack 1-Right
> Rear Left in Stereo Jack 2 - Left
> Rear Right in Stereo Jack 2 - Right
> Center in Stereo Jack 3 - Right
> LFE in Stereo Jack 3 - Left.
>
>
> This would tell alsa-lib that if it was sent 5.1 channel audio, it would
> not change it.
> If it was send 2-channel PCM, it would up-mix it using the dolby 2->4
> channel sound method and also generate the Center and LFE channels.
>
> If the user did not have 6 speakers, they could tell alsa :-
> Left speaker in Stereo Jack 1-Left
> Right speaker in Stereo Jack 1-Right
> LFE in Stereo Jack 2 - Left.
>
> alsa-lib would then accept 6 channels from the user's application and
> automatically downmix it for the 3 speakers the user had.
> The user could also have 2 sound cards, with Front speakers on one sound
> card, and rear speakers on another sound card.
Note that user could do all things you've described though configuration
files. Application should only generate a stream and it's up to user, how
it the PCM device / virtual PCM device configured.
We're missing probably only some dolby enhancements from 2 to 4 channels,
or you had in your mind a simple copying?
> Another feature for alsa-lib could be adding volume and delay controls in.
> For example, the user might want to adjust the volume of the LFE without
> changing the volume of the other channels.
It's possible with modern hardware, but I agree, it would be a really goot
to add real-time possibility to drive the real-time behaviour of various
plugins. If I have unlimited time to do my work... ;-(
> Also, depending on where the speakers are in the room, the user might
> want to add certain delays to certain channels so that the sound is in
> sync when it gets to the user's ears.
It's no problem to write this plugin.
> The reason I think that this would be good to have in alsa-lib is so it
> would only have to be implemented once, and then all audio applications
> could use the features.
>
> I am currently helping to write a media application in linux that plays
> DVDs that have 5.1(e.g 6 channels) audio tracks. It would be nice if my
> audio application did not have to care about what speakers the user has,
> and just output 6 channels every time and let alsa-lib adjust. Also, if
> I used another audio application that could play CD-Digital Audio,
> alsa-lib could automatically upmix it to 5.1 using dolby surround 2->4
> upmix, and alsa-lib could then fill in the center and lfe channels. This
> way, all the current linux applications that use ALSA would not have to
> be changed, but the user would get much better sound output as alsa-lib
> would convert the sound to make full use of the users speaker layout.
>
> Supported speaker formats needed are: -
> 1) Center (Mono)
a) we can add this definition: 'center' and 'plug:center'
> 2) Front Right, Front Left. (Stereo)
'front' is the implemented device name, or 'plug:front' to hide hardware constraints
> 3) Front Right, Front Left, Center (3 Channel front.)
no problem, see a), suggested name = 'front3_center'
> 4) Front Right, Front Left, LFE (3 channel front/LFE)
no problem, suggested name = 'front3_lfe'
> 5) Front Right, Front Left, Rear Right, Rear Left (4 channel front/rear)
implemented as 'surround40'
> 6) Front Right, Front Left, Center, Rear Right, Rear Left (5 Channel
>front/rear/center)
no problem, suggested name = 'surround50'
> 7) Front Right, Front Left, Rear Right, Rear Left, LFE (5 Channel front/rear/LFE)
no problem, suggested name = 'surround41'
> 8) Front Right, Front Left, Center, Rear Right, Rear Left, LFE (6 channel "5.1")
implemented as 'surround51'
> 9) Future setups with maybe 7,8 or 9 speakers for home real cinema setups. DTS 6.1
>etc.
we can implement this later
Jaroslav
-----
Jaroslav Kysela <[EMAIL PROTECTED]>
Linux Kernel Sound Maintainer
ALSA Project http://www.alsa-project.org
SuSE Linux http://www.suse.com
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel