Re: [pulseaudio-discuss] [PATCH] bluetooth: Allow frame length changes when decoding a2dp

2011-03-05 Thread Colin Guthrie
'Twas brillig, and Luiz Augusto von Dentz at 04/03/11 23:24 did gyre and
gimble:
 Hi,
 
 On Fri, Mar 4, 2011 at 10:48 AM, Maarten Lankhorst
 m.b.lankho...@gmail.com wrote:
 My android phone sends packets with a different frame length than the
 decoder initially expects, since libsbc already allows this case, just check
 the current frame length.
 
 I believe Ive send you a patch to fix this already, the patch is here:
 
 http://gitorious.org/pulseaudio/mainline/commit/b3595d00331961164b3acf6be89c459758b47738

Luiz,

Should this either/both your master or bluetooth trees be pulled into
upstream master?

I've I've messed up doing this earlier, I apologise... :s

Col

-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Volume algorithm

2011-03-05 Thread Colin Guthrie
'Twas brillig, and Tarantism at 04/03/11 22:23 did gyre and gimble:
 I need to implement a volume scaling in a pulse module.
 I have 0-100 input values.
 What algorithm does pulse usually implement for this so that I can match
 it?

Can you explain a little more what you're trying to do? You shouldn't
generally need to worry about volume scaling in PA modules.

But ultimately PA scales volumes between PA_VOLUME_MIN (aka 0%, aka -inf
dB) and PA_VOLUME_NORM (aka 100%, aka 0dB) typically, but really the
upper volume is PA_VOLUME_MAX (aka Lots%, aka +Lots dB).

But if you explain in a bit more detail we can probably advise you
better. I don't think you'll need to do any specific volume handling
unless you are writing a very specific module.

Col


-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Configuring PulseAudio to use ALSA PCM plugin

2011-03-05 Thread Colin Guthrie
'Twas brillig, and Ben C at 04/03/11 19:44 did gyre and gimble:
 Thank you for your help Colin,
 
 The reason I'm doing this is I'm researching audio processing effects. So I 
 need 
 to intercept the PCM audio stream somewhere along the chain. Currently what 
 we 
 have already coded is an ALSA PCM plugin framework, so we would like to use 
 that 
 to intercept the PCM audio stream to apply effects as opposed to starting 
 over 
 and writing something new.
 
 The parameter we have to adhere to is that the original sound source could 
 come 
 from ALSA or PA. We need to satisfy both. So currently we have the generic 
 setup 
 where ALSA is defaulted to use the pulse plugin and redirecting everything to 
 PA. Then PA would use the ALSA sink my_sink, and goes back to ALSA, where 
 we 
 could insert our PCM plugin. And it turned out due to the hogging of my_sink, 
 we'd need to add dmix after.
 
 And I understand PA has additional benefits over dmix, so if there's a better 
 way to configure this that's more natural to PA, please let me know.

OK, so this seems reasonably sensible. I guess my next question is why
is it a problem that my_sink is hogged?

You stated that two different sources are supported: from alsa, and from
PA. Assuming PA is hogging my_sink, when apps play via pulse protocol
directly and uses my_sink, so all is well. When apps play via alsa, they
use the default device which maps through to PA via the alsa-pulse
plugin, which then uses my_sink, so all is well too.

So I don't really see where the hogging problem comes in to practical
effect?



Just in case a random, left-field suggestion would be appreciated, a
totally different approach is of course to write the filtering stuff
you're doing as either a ladspa plugin and use module-ladspa-sink or
even write it directly in PA based of module-virtual-sink.c code.


Food for thought maybe :)

Col








-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Volume algorithm

2011-03-05 Thread Tarantism
On Sat, 2011-03-05 at 11:08 +, Colin Guthrie wrote:
 'Twas brillig, and Tarantism at 04/03/11 22:23 did gyre and gimble:
  I need to implement a volume scaling in a pulse module.
  I have 0-100 input values.
  What algorithm does pulse usually implement for this so that I can match
  it?
 
 Can you explain a little more what you're trying to do? You shouldn't
 generally need to worry about volume scaling in PA modules.
The module is a signal source for the default sink (based on
module-sine.c) so it creates a sink_input and provides pop (etc)
callbacks for that. I'm using it to produce low latency sound on Maemo.

I had expected that system volume would be handled downstream of the
sink_input but changing system volume has no effect. I've managed to
hook up to the system volume level by dbus and just want to know how to
scale my data correctly.

At the moment I'm getting reasonable results by y = y * x^4 where 0 = x
= 100 but I wondered if pulse has some other algorithm available?


___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Volume algorithm

2011-03-05 Thread Colin Guthrie
'Twas brillig, and Tarantism at 05/03/11 11:29 did gyre and gimble:
 On Sat, 2011-03-05 at 11:08 +, Colin Guthrie wrote:
 'Twas brillig, and Tarantism at 04/03/11 22:23 did gyre and gimble:
 I need to implement a volume scaling in a pulse module.
 I have 0-100 input values.
 What algorithm does pulse usually implement for this so that I can match
 it?

 Can you explain a little more what you're trying to do? You shouldn't
 generally need to worry about volume scaling in PA modules.
 The module is a signal source for the default sink (based on
 module-sine.c) so it creates a sink_input and provides pop (etc)
 callbacks for that. I'm using it to produce low latency sound on Maemo.
 
 I had expected that system volume would be handled downstream of the
 sink_input but changing system volume has no effect. I've managed to
 hook up to the system volume level by dbus and just want to know how to
 scale my data correctly.
 
 At the moment I'm getting reasonable results by y = y * x^4 where 0 = x
 = 100 but I wondered if pulse has some other algorithm available?

If you have a sink_input in your code, can you not simply use:
pa_sink_input_set_volume() ?

With regards to a the %age mapping we use a cubic scale to map dBs to %.

I'm still not 100% sure what you're meaning tho'. If your system volume
is totally busted, then pa_sink_input_set_volume() wont work by default
as it will use flat volumes which ultimately cause the system volume to
change if it's the only stream. If this is the case, then it's likely
just a problem with your system volume using the correct ALSA kcontrols
to make adjustments (e.g. I've noticed some problems recently with the
Speakers element)

In order to test this, you could disable flat-volumes in daemon.conf and
then pa_sink_input_set_volume() should be 100% software and should work.
If this is the case, please let us know and we can debug things further.

Does the system volume affect other sounds OK or is it totally busted?

Col


-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Volume algorithm

2011-03-05 Thread Tarantism
On Sat, 2011-03-05 at 12:00 +, Colin Guthrie wrote:
 If you have a sink_input in your code, can you not simply use:
 pa_sink_input_set_volume() ?
I'll try that.

 I'm still not 100% sure what you're meaning tho'. If your system volume
 is totally busted, then pa_sink_input_set_volume() wont work by default
 as it will use flat volumes which ultimately cause the system volume to
 change if it's the only stream. If this is the case, then it's likely
 just a problem with your system volume using the correct ALSA kcontrols
 to make adjustments (e.g. I've noticed some problems recently with the
 Speakers element)
 
 In order to test this, you could disable flat-volumes in daemon.conf and
 then pa_sink_input_set_volume() should be 100% software and should work.
 If this is the case, please let us know and we can debug things further.
 
 Does the system volume affect other sounds OK or is it totally busted?
System volume works fine with music player and games but I note that if
I run module-sine, that takes no notice of system volume either.

I'm running that with: pactl load-module module-sine

Do I need to specify a sink maybe?

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Nvidia hdmi passthrough

2011-03-05 Thread Arun Raghavan
On Fri, 2011-03-04 at 20:47 -0700, Kelly Anderson wrote:
 diff --git a/src/Makefile.am b/src/Makefile.am
 index 24e2f82..bb501fb 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
 @@ -1131,7 +1131,9 @@ dist_alsapaths_DATA = \
   modules/alsa/mixer/paths/analog-output-lfe-on-mono.conf \
   modules/alsa/mixer/paths/analog-output-mono.conf \
   modules/alsa/mixer/paths/iec958-stereo-output.conf \
 - modules/alsa/mixer/paths/iec958-passthrough-output.conf
 + modules/alsa/mixer/paths/iec958-passthrough-output.conf \
 + modules/alsa/mixer/paths/hdmi-stereo-output.conf \
 + modules/alsa/mixer/paths/hdmi-passthrough-output.conf

The additional passthrough profile will become moot once my branch is
ready to merge. Please hold off merging this for now. I should have
something for you to rebase on before long.

-- Arun

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] [PATCH] bluetooth: Allow frame length changes when decoding a2dp

2011-03-05 Thread Maarten Lankhorst

Hey,

Op 05-03-11 12:04, Colin Guthrie schreef:

'Twas brillig, and Luiz Augusto von Dentz at 04/03/11 23:24 did gyre and
gimble:

Hi,

On Fri, Mar 4, 2011 at 10:48 AM, Maarten Lankhorst
m.b.lankho...@gmail.com  wrote:

My android phone sends packets with a different frame length than the
decoder initially expects, since libsbc already allows this case, just check
the current frame length.


I believe Ive send you a patch to fix this already, the patch is here:

http://gitorious.org/pulseaudio/mainline/commit/b3595d00331961164b3acf6be89c459758b47738


Luiz,

Should this either/both your master or bluetooth trees be pulled into
upstream master?

I've I've messed up doing this earlier, I apologise... :s
On a slightly related note, can sbc be upgraded using the bluez-git 
version? I seem to be hit by a clipping bug on maximum volume.


Cheers,
Maarten
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss