All of lore.kernel.org
 help / color / mirror / Atom feed
* New mixer api.
@ 2003-06-23 15:36 James Courtier-Dutton
  2003-06-23 16:11 ` Mark Knecht
  2003-06-24  9:50 ` Takashi Iwai
  0 siblings, 2 replies; 5+ messages in thread
From: James Courtier-Dutton @ 2003-06-23 15:36 UTC (permalink / raw)
  To: ALSA development

Hi,

If a user has a 5.1 sound card, but only has 2 speakers connected, it 
would be nice if the user could tell alsa this fact.
Then the amount of sliders in the mixer could be reduced, and also, an 
application could detect what the user has set up.
It would be nice for the user to only have to tell one application(maybe 
the mixer app) that they only have 2 speakers connected to a 5.1 sound 
card, and then all other applications run by the user would 
automatically pick up that information.
It seems to me, that the best place to store this infomation is in alsa 
somewhere.
It would also be nicer to have a better description language for the 
mixer elements, so that a single GUI mixer, could draw a diagram of how 
each mixer element effects which other ones. This idea could probably be 
expanded for some sound cards, whereby the mixer GUI could be used to 
let the user design their own mixer setup. E.g. The SB Live could be 
programmed for all sorts of different mixing setups.
So, as a suggestion, each mixer element should have extra meta info like 
this: -
Entry: 1
Type: output
Description: Front Speakers.

Entry: 2
Type: Mixer
Description: Volume
Range: 1-100
Channels: Left and Right
Input comes from (3)
Output goes to (1).

Entry: 3
Type: input
Description: PCM stream from computer.

One could have multiple "Input comes from" and "output goes to" for each 
mixer element.

With this sort of information, a GUI could draw a nice diagram of the mixer.



-------------------------------------------------------
This SF.Net email is sponsored by: INetU
Attention Web Developers & Consultants: Become An INetU Hosting Partner.
Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission!
INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: New mixer api.
  2003-06-23 15:36 New mixer api James Courtier-Dutton
@ 2003-06-23 16:11 ` Mark Knecht
  2003-06-24  9:50 ` Takashi Iwai
  1 sibling, 0 replies; 5+ messages in thread
From: Mark Knecht @ 2003-06-23 16:11 UTC (permalink / raw)
  To: James Courtier-Dutton, ALSA development

>
> Hi,
>
> If a user has a 5.1 sound card, but only has 2 speakers connected, it
> would be nice if the user could tell alsa this fact.

One of my SACD players has this feature built in. It's nice in that I can
listen to a 5.1 SACD through stereo headphones and hear all 6 of the
channels mixed in a more or less normal way.

I know this isn't exactly what you are proposing, but I think it's similar.
One of these days you are going to have an audio DVD in your PC, and maybe
be using a stereo sound card, and you'll run into the same issue.

Cheers,
Mark




-------------------------------------------------------
This SF.Net email is sponsored by: INetU
Attention Web Developers & Consultants: Become An INetU Hosting Partner.
Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission!
INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: New mixer api.
  2003-06-23 15:36 New mixer api James Courtier-Dutton
  2003-06-23 16:11 ` Mark Knecht
@ 2003-06-24  9:50 ` Takashi Iwai
  1 sibling, 0 replies; 5+ messages in thread
From: Takashi Iwai @ 2003-06-24  9:50 UTC (permalink / raw)
  To: James Courtier-Dutton; +Cc: ALSA development

At Mon, 23 Jun 2003 16:36:22 +0100,
James Courtier-Dutton wrote:
> 
> Hi,
> 
> If a user has a 5.1 sound card, but only has 2 speakers connected, it 
> would be nice if the user could tell alsa this fact.
> Then the amount of sliders in the mixer could be reduced, and also, an 
> application could detect what the user has set up.
> It would be nice for the user to only have to tell one application(maybe 
> the mixer app) that they only have 2 speakers connected to a 5.1 sound 
> card, and then all other applications run by the user would 
> automatically pick up that information.
> It seems to me, that the best place to store this infomation is in alsa 
> somewhere.

yes, the information should be stored in a place which all
applications can refer.  perhaps we can add "user-defined" controls
based on the existing ALSA control API for such a purpose, so that the
elements can be accessed uniformly from every application, and even
the status can be saved/restored by alsactl.

> It would also be nicer to have a better description language for the 
> mixer elements, so that a single GUI mixer, could draw a diagram of how 
> each mixer element effects which other ones. This idea could probably be 
> expanded for some sound cards, whereby the mixer GUI could be used to 
> let the user design their own mixer setup. E.g. The SB Live could be 
> programmed for all sorts of different mixing setups.

a similar idea was implemented on the ALSA 0.5.x mixer.
but it was dropped because of complexity of driver codes.

yes, we need sorting and grouping the small mixer elements.  the
name-based grouping rule (currently used) seems not enough functional
for all cards.

i agree with the idea of the extra meta information.
for example, the corresponding dB to the mixer values.
i think the routing info can be optional, not mandantory.
this can be given only when the routing is really important, i.e. an
element has strong effects to others.

the question is whether these information should go into the driver or
be provided as the external database.


Takashi


-------------------------------------------------------
This SF.Net email is sponsored by: INetU
Attention Web Developers & Consultants: Become An INetU Hosting Partner.
Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission!
INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php

^ permalink raw reply	[flat|nested] 5+ messages in thread

* New mixer api.
@ 2003-11-08 23:20 James Courtier-Dutton
  2003-11-09  8:00 ` Jaroslav Kysela
  0 siblings, 1 reply; 5+ messages in thread
From: James Courtier-Dutton @ 2003-11-08 23:20 UTC (permalink / raw)
  To: ALSA development

Hi,

I saw cvs checkins for a mixer interface with dB levels. Is this useable 
yet?

Cheers
James



-------------------------------------------------------
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: New mixer api.
  2003-11-08 23:20 James Courtier-Dutton
@ 2003-11-09  8:00 ` Jaroslav Kysela
  0 siblings, 0 replies; 5+ messages in thread
From: Jaroslav Kysela @ 2003-11-09  8:00 UTC (permalink / raw)
  To: James Courtier-Dutton; +Cc: ALSA development

On Sat, 8 Nov 2003, James Courtier-Dutton wrote:

> Hi,
>
> I saw cvs checkins for a mixer interface with dB levels. Is this useable
> yet?

Nope. It's work in progress. I will announce when it's useable.

						Jaroslav

-----
Jaroslav Kysela <perex@suse.cz>
Linux Kernel Sound Maintainer
ALSA Project, SuSE Labs


-------------------------------------------------------
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-11-09  8:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-06-23 15:36 New mixer api James Courtier-Dutton
2003-06-23 16:11 ` Mark Knecht
2003-06-24  9:50 ` Takashi Iwai
  -- strict thread matches above, loose matches on Subject: below --
2003-11-08 23:20 James Courtier-Dutton
2003-11-09  8:00 ` Jaroslav Kysela

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.