Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
asoundrc configuration file documentation
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Multimedia
View previous topic :: View next topic  
Author Message
Akkara
Administrator
Administrator


Joined: 28 Mar 2006
Posts: 4314
Location: &akkara

PostPosted: Thu Jul 12, 2012 9:46 am    Post subject: asoundrc configuration file documentation Reply with quote

At the risk of sounding like a total idiot, where is this thing documented?

I see configurations posted around, like here or here, among many others. And it all looks like black magic to me.

Excuse me while I rant a little: "ttable" - what's that do? Sounds to me like "translation table" i.e., some sort of routing. But then how's that different from input.bindings.0 "Input", which also looks like a routing sort of directive. When would I use one vs the other? Why is slave.channels 3 but yet there are four things in the ttable?

Or better yet, "id 1672 # 4 Pole Low-Pass Filter with Resonance". Oh, but of course! Plug-in number 1672. Why didn't I think of that. Seriously - I have never seen a more arcane, obtuse way of identifying and configuring stuff. Numeric module IDs? I thought that went out of fashion 'round the time of Fortran-77. If it weren't for the comment, there's not the tiniest smidgen of a hint as to what's going on. Does 1672 imply there's a plug-in id#1671? What's that one do? Or #1670? How high do the numbers go? Is there a list somewhere? Is my Google-foo such total fail when it comes to this?

And what's this "policy" thing mean? "Duplicate" I can imagine, but none? That like /dev/null? Is policy required? When? All modules? Just some? What about "type ladspa" - what does this signify? What other types are there? Is there a list? How does one choose? How does one begin to structure a configuration? It all looks like pulling magic words and numbers out of thin air.

...
Thanks for letting me vent. I'd like to learn more. I don't have a specific immediate need so no worries about specific replies. Reading lists will suffice. I've gotten sound mostly to my liking by using jack and avoiding alsa. This means I can't use many programs to output audio but that's a secondary issue for me. Accurate auditioning and mastering are the primary concerns.

The soundcard is a M-audio ice1712 24/96. It shows up as a 10-channel card even though it only has 4 I/Os: a stereo output, a stereo input, and a spdif input and output (and a midi port). And most programs throw their virtual hands up and say "I have no idea how to output to 10 channels" and quit with an error. (Why not default to using the first two?) The card has no "hardware mixing" a-la Creative style that alsa seems to understand, even tho it does have a DSP on board running a digital matrix mixer. I've tried dmix on and off but have never been satisfied with the quality nor the latency of that configuration.

Also: there are times where I _want_ the ability to lock out other programs. E.g., when recording audio, I don't want a web-page to start playing stuff at me.

I generally understand signal processing and I ought to be able to figure it out, if I knew the incantations. But the configuration language is like ancient elder scrolls full of dark magic to me and I'm having the darndest of time figuring out how to get ideas in my head written in a way that alsa will parse and act on.
Back to top
View user's profile Send private message
aCOSwt
Advocate
Advocate


Joined: 19 Oct 2007
Posts: 2041
Location: Between the keyboard and the chair

PostPosted: Thu Jul 12, 2012 12:16 pm    Post subject: Re: asoundrc configuration file documentation Reply with quote

Akkara wrote:
...Thanks for letting me vent...

As admin, you are the only one concerned. Well... I mean... for posting a DUPE !
Well, I mean posting a n+1 rant about asoundrc language... :lol:
Akkara wrote:
I've gotten sound mostly to my liking by using jack and avoiding alsa.

8O How did you manage to use jack AND avoid alsa ?

Do you mean that the only packages you get sound with are jack-aware packages ?
Do you mean that (as a secondary need) you would like to get your non-jack-aware applications outputting to jack ?
If that is the case then I can help you with this using Paul Davis' preferred method.
Akkara wrote:
The soundcard is a M-audio ice1712 24/96. It shows up as a 10-channel card even though it only has 4 I/Os: a stereo output, a stereo input, and a spdif input and output (and a midi port).

OK then, I own that kind of devices myself. It indeed shows as a 10 channel card (under envy24control among others) because the converting chip and surrounding hardware are actually capable of driving 8 PCM channels... These channels are just... not wired to any physical I/O plug. Of course, no driver can be aware of this.
Akkara wrote:
The card has no "hardware mixing" a-la Creative style that alsa seems to understand

This card does get hardware mixing capabilities this including a patchbay router. I agree that you cannot access this facility via alsamixer, but you defintely can under envy24control (media-sound/alsa-tools). envy24control being part of the alsa-tools package, I believe one cannot rightly say that alsa does not understand the M AUDIO 2496 facilities.
Akkara wrote:
Also: there are times where I _want_ the ability to lock out other programs. E.g., when recording audio, I don't want a web-page to start playing stuff at me.

You told us you were using jack. Cannot you simply connect / disconnect what you wish through qjackctl ?

You could also think your audio subsystem differently, I believe that you also get some basic HDA on board. I cannot believe that it is bad enough to significantly degrade the quality of sound as played by Opera's gstreamer (for example) or an adobe flash-player.
Well, I mean, does this kind of sound quality actually deserve being routed to some actually-audiophile device ?
What I do on my system is that all my consumer grade applications (or whenever playing 44/48K - 16bits) are routed to the HDA while all my "professional" apps (or whenever playing / recording 96K - 24 bits) are routed to some higher quality hardware.
Akkara wrote:
I generally understand signal processing

I make no doubt that you do but... But ranting apparently does not help.
Well does not help me understanding what you exactly want to achieve I mean.
Akkara wrote:
I'd like to learn more. I don't have a specific immediate need

OK, I understand that you don't exactly need something in particular. But, as you rightly noticed, the asoundrc language has got no user manual, something you can read when going to bed. Instead, there is a rather well documented function reference, that wont mean anything to anybody except if you get a particular, dedicated need.
=> Do not want to document yourself about asoundrc language. Start with having some particular need.

As in the authentic UNIX spirit, the asoundrc language is a tool. Not a policy. As a tool it offers a collection of functionalities you might want to use; serving some dedicated purpose.
As not a policy, there is no spirit, general idea / orientation compulsory to get as a key for a global understanding.

If you still absolutely want to start with a global understanding, this is the best article I've read : http://www.volkerschatz.com/noise/alsa.html
_________________
In theory there are no differences between theory and practice. In practice, there are.
Don't try to understand my posts. Immanuel Kant never did, he thinks that only music and laughter do not have to mean anything.


Last edited by aCOSwt on Fri Jul 13, 2012 9:56 am; edited 3 times in total
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7022

PostPosted: Thu Jul 12, 2012 3:00 pm    Post subject: Re: asoundrc configuration file documentation Reply with quote

Akkara wrote:
Is there a list somewhere?

To show the installed LADSPA plugins:
Code:
listplugins


Quote:
(Why not default to using the first two?)

What apps are you talking about? The PCM named "default", which is simple stereo, is the *default*. It's what apps should default their output to.
Back to top
View user's profile Send private message
_itsme_
n00b
n00b


Joined: 02 Dec 2010
Posts: 11

PostPosted: Wed Jul 18, 2012 7:58 pm    Post subject: Reply with quote

I was just looking at this yesterday trying to figure out why I couldn't have multiple simultaneous playback streams if ALSA supports software mixing via dmix. The asoundrc documentation is bad and people should feel bad about it.

I found some useful info at these places:
http://www.volkerschatz.com/noise/alsa.html
http://www.alsa-project.org/main/index.php/Asoundrc
http://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html

Good luck with it. It seems to be mainly copy-paste and hope for the best unless you're a developer on the project who can actually understand this mess.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Multimedia All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum