[pulseaudio-discuss] pa_context_set_source_volume_by_index() failed
pfl
pfl at messofts.be
Fri Oct 28 17:58:28 UTC 2016
I tried to implement it but I cant connect anymore
"context_state_callback" is called only once with the state
PA_CONTEXT_CONNECTING and is never called back
I tried using pa_threaded_mainloop_lock(mainloop); and
pa_threaded_mainloop_unlock(mainloop); around my waiting loop but it
does not work either
Audio::Audio()
{
mainloop=pa_threaded_mainloop_new();
api = pa_threaded_mainloop_get_api(mainloop);
pa_proplist *proplist = pa_proplist_new();
pa_proplist_sets(proplist, PA_PROP_APPLICATION_NAME, "PulseAudio
Volume Control");
pa_proplist_sets(proplist, PA_PROP_APPLICATION_ID,
"org.PulseAudio.pavucontrol");
pa_proplist_sets(proplist, PA_PROP_APPLICATION_ICON_NAME,
"audio-card");
pa_proplist_sets(proplist, PA_PROP_APPLICATION_VERSION, "1.0");
context = pa_context_new_with_proplist(api, NULL, proplist);
pa_proplist_free(proplist);
pa_context_set_state_callback(context, context_state_callback, NULL);
pa_context_connect(context, NULL, PA_CONTEXT_NOFAIL, NULL);
pa_threaded_mainloop_start(mainloop);
do
{
}
while(toTreat!=0);
}
Le 28/10/2016 à 17:54, pfl a écrit :
> I'll check it out thanks :-)
>
>
> Le 28/10/2016 à 17:32, Tanu Kaskinen a écrit :
>> On Fri, 2016-10-28 at 17:20 +0200, pfl wrote:
>>> ah yes, I forgot the main loop
>>>
>>> the problem is that the set volume part is only a small part of my
>>> program
>>>
>>> so I'll have to put that lop in a thread
>> Note that libpulse is not thread-safe, so if you create a new thread
>> where you run pa_mainloop_run() and then call
>> pa_context_set_sink_volume_by_index() from another thread without first
>> somehow making sure that the mainloop thread is stopped, that's going
>> to break. One solution to this is to use the threaded main loop:
>> https://freedesktop.org/software/pulseaudio/doxygen/threaded_mainloop.html
>>
>>
>
>
> ---
> L'absence de virus dans ce courrier électronique a été vérifiée par le
> logiciel antivirus Avast.
> https://www.avast.com/antivirus
>
> _______________________________________________
> pulseaudio-discuss mailing list
> pulseaudio-discuss at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
More information about the pulseaudio-discuss
mailing list