<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Sat, Sep 22, 2018 at 9:17 PM Arun Raghavan <<a href="mailto:arun@arunraghavan.net">arun@arunraghavan.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
On Sat, 22 Sep 2018, at 10:03 PM, wellington wallace wrote:<br>
> Hi PA developers!<br>
> <br>
> As you can see here <a href="https://github.com/wwmm/pulseeffects/issues/288" rel="noreferrer" target="_blank">https://github.com/wwmm/pulseeffects/issues/288</a> there<br>
> are users that would like to have avoid-resampling supported in<br>
> PulseEffects(and I would like it too). But honestly I am out of good ideas<br>
> about how to do this. At this moment I am using null sinks to do the audio<br>
> routing and there is a Gstreamer pipeline that records from it. I can<br>
> change the format and rate of the GStreamer pipiline to the ones used by<br>
> the audio application being processed but as I can't do the same to the<br>
> null sink it would be pointless. The resampling would happen anyway.<br>
> <br>
> At this moment the only way I see to support avoid-resampling would be to<br>
> reload the null sink with the new rate and format. But this is really<br>
> annoying because as soon as I kill the null sink Pulseaudio will move the<br>
> audio application back to the default device. It is not impossible to deal<br>
> with this. But it may require major changes in the code.<br>
> <br>
> Is reloading the null sink the only way to deal with this? It crossed my<br>
> mind to try to make a custom null sink that could change these parameters<br>
> on the fly. But besides the fact that Arch Linux packages do not have<br>
> Pulseaudio developement headers I don't even know if it is possible to make<br>
> any null sink that would accept this.<br>
<br>
I have patches in the queue to enable reconfiguration for module-null-sink. <a href="https://gitlab.freedesktop.org/pulseaudio/pulseaudio/merge_requests/14" rel="noreferrer" target="_blank">https://gitlab.freedesktop.org/pulseaudio/pulseaudio/merge_requests/14</a><br>
<br>
Should be easy enough to add a modarg like we have for ALSA to make it also just request support at module load time.<br>
<br>
-- Arun<br></blockquote><div> </div></div>Hi Arun! These are very good news! So is the null sink going to automatically update its rate like it happens with the sound card sink when avoid-resampling is enabled? Or will it be necessary to take action using the libpulse api? Based on what I could understand of alsa-sink code it seems the first option. Assuming this to be the case is the sampling rate update going to trigger the "sink changed" event?<div><br></div><div>An automatic reconfiguration would welcome. This way I can focus only on the GStreamer pipeline and I wouldn't have different code paths for different Pulseaudio versions.</div><div><br></div><div>Best regards,<br clear="all"><div>                  Wellington</div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Prof.° Wellington Wallace Miguel Melo<br><br><div>CEFET/RJ Uned Nova Iguaçu<br><br></div></div></div></div></div>