[vlc-devel] [vlc-commits] Audio: Core Audio: Initialize starting volume for analog devices.

Jon Stacey jon at jonsview.com
Thu Mar 8 21:50:10 CET 2012


> We don't document the internals of PulseAudio, CoreAudio or whatever 
> in
> VLC, obviously. Please refer to PulseAudio if you really care; I 
> don't even
> know the exact details because I don't (need to) care.

That's fine, but that is not the documentation that I need or am asking 
for. I need VLCs documentation, and there appears to be none (or very 
little).

> This is very well documented. You're making assumptions and they're 
> wrong.
> That's your problem.
>
> The documentation has everything there is to the VLC core volume 
> handling.

With all due respect, no, it is not well documented. Here is the trace 
I just did by hand:

Interface/GUI -> aout_VolumeSet() -> aout_VolumeSet() in intf.c ->

	prepareVolume()

	commitVolume()
		pf_volume_set()
			VolumeSet() called as specified by aout_VolumeHardInit()
			"volume" and "mute" variables set/updated


None of these functions are documented. This code shows that whenever 
the user changes the volume that the callback is called that was 
specified by the audio module when it first called 
aout_VolumeHardInit(). That is, the function stored pv_volume_set is 
called in commitVolume(). To me, this implies that pf_volume_set should 
also be called when VLC is initialized with the starting volume, as I 
said before, but this does not appear to be happening. The current 
behavior does not seem consistent to me.

I am not making the case for my initial patch to aout_VolumeHardInit(). 
That is incomplete. I am talking about the patch to auhal.c. If there is 
a missing link then please feel free to enlighten me. Otherwise, I leave 
the patch to auhal.c as it stands until a better solution is devised.



Jon



More information about the vlc-devel mailing list