[vlc-devel] [PATCH] mmdevice: use IAudioStreamVolume to change volume

Thomas Guillem thomas at gllm.fr
Mon Apr 9 09:39:54 CEST 2018

On Fri, Apr 6, 2018, at 17:53, Rémi Denis-Courmont wrote:
> Le perjantaina 6. huhtikuuta 2018, 16.48.01 EEST Thomas Guillem a écrit :
> > Since mmdevice doesn't respect the following ISimpleAudioVolume rule, cf 
> [1]:
> > > As an option, an application window can display a volume slider. The
> > > application slider should reflect the state of the corresponding Sndvol
> > > slider at all times.
> There are two aspects to this. You already have posted a fix for the first 
> aspect, the scale.
> The other aspect is the maximum, and this patch is not addressing it. The only 
> way to address that is obviously to set the actual maximum to 100%, and that 
> was rejected in earlier discussions.

Here is a simple way to fix the maximum and the delay after > 100%: https://paste.gnome.org/pdmwrwlyb

What can be the (bad) consequences of such patch ?
Since ISimpleAudioVolume/IAudioStreamVolume seems to be arleady software volume mixer...

> This patch is just removing the session integration features I implemented for 
> no obvious reasons, and reintroducing the user confusion from mismatching 
> mixer and VLC.

no obvious reason ? cf. https://msdn.microsoft.com/fr-fr/library/windows/desktop/dd316531(v=vs.85).aspx

"Typical audio applications do not modify the volume levels of sessions. Instead, they rely on users to set these volume levels through the Sndvol program. Sndvol modifies only the master volume levels of sessions. By default, the session manager sets the master volume level to 1.0 at the initial activation of a session. Subsequent volume changes by Sndvol or other clients are persistent across computer restarts."

> -- 
> 雷米‧德尼-库尔蒙
> https://www.remlab.net/
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel

More information about the vlc-devel mailing list