On Mon, Mar 30, 2015 at 3:23 PM, Victor Toso <victortoso@xxxxxxxxxx> wrote:
This is done only once in order to get the last volume/mute/channels
value of each stream. The main pourpose of it is when we want to
volume-sync when the client connects.
The volume events are handy for all the other volume-sync possibilities
like migration. Without it, we may send the wrong value to the guest.
Even when using volume restore only?
> > channel-main:
> > - use g_idle_add in audio-sync functions to work around the delay of getting
> > this values of pulseaudio. This is not significantly high in my enviroment
> > (three function calls). Using gstreamer backend it did not fail as it start
> > the pipeline to get the values.
>
> What's the guarantee that volume has been received when that idle is run?
Well, you are right. If gstreamer/pulse backend fails for whatever
reason this will not stop. Do you think a trying a fix number of times
is fine?
No :) But I would rather make get_volume() async to properly sync when volume is received (and wait sync before playback/record start to avoid glitch)
--
Marc-André Lureau
_______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel