Hi folks, > Tanu Kaskinen <tanuk at iki.fi> writes: > > Hi Tanu, > >> On Fri, 2012-07-20 at 17:32 -0300, Flavio Ceolin wrote: >>> Tanu Kaskinen <tanuk at iki.fi> writes: >>> > There were problems with the code. I don't remember what exactly was >>> > broken, though. But at least I didn't like the concurrency handling: I >>> > really dislike doing inter-thread communication by using shared >>> > variables. Instead, message passing should be used, in my opinion. >>> >>> I'll investigate how to solve it. Btw, do you think it's better start >>> from the scratch or it's ok start from this code ? >> >> I really don't know. I'm not familiar enough with the code to know how >> much of it needs rewriting. >> >> I know that Jaska Uimonen has been working with volume envelopes too, >> and asked him yesterday about the status. He said he will post the code >> to the mailing list on Monday. I haven't seen the code, but if it's >> good, then it might be a good starting point too (Jaska said that it's >> lacking multichannel support, so work will be needed). >> > > It's really good to heard it. > >>> >> 2) How an application should use this code, AFAIK this code is not being >>> >> exported. >>> > >>> > What's your use case? If we are talking about sink volume ramping, I >>> > don't see the need for a client interface at all, because it should be >>> > done automatically by the server. >>> >>> Basically I want to set an envelope which apply a filter changing the >>> sound balance and/or the volume, it's easier demonstrating an idea of an >>> envelope: >> >> But what's the use case (user-visible feature) that you're interested >> in? My answer to the "how an application should use this code" depends >> on the use case. > > I want make possible an application associate an action with an audio > effect. For example, a dialog pops up and you want to keep that sample > pattern playing but you want to "fade it out" so its really quiet. So over > 2 seconds you fade it out. Another example would be you shift balance to > the left or right according with the mobile phone (or whatever you want) > position. > > Regards, > Flavio Ceolin Trying to continue this matter, the idea of make this funcionality so generic is facilitating for other applications. I believe several applications (like media players) that use PA are implementing it's own "basic" effects as crossfading or fade-in/out for pause. I think make it easier is a goal. Other benefit of supporting it, is make possible the ducking[1] effect on audio streams, as we've discussed on irc, a good example for this is the sms case (when a sms comes the others samples should fade-out). Another point to have it is the sample cache. If the sample is already in the cache and the application should do fade-in/out or change the balance, the only way to do that is re-uploading the sample. So guys, what you think about, it worth to implement ? If not, what you think should be changed ? I'm open to discuss it. [1] http://en.wikipedia.org/wiki/Ducking Regards, Flavio Ceolin