Open Bug 1474189 Opened 6 years ago Updated 2 years ago

Embedded video resets full volume audio upon changing window focus - still broken after 10 years and counting

Categories

(Core :: Audio/Video: cubeb, defect, P2)

61 Branch
Unspecified
Linux
defect

Tracking

()

People

(Reporter: james, Unassigned)

References

Details

(Keywords: regression)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0
Build ID: 20180705213349

Steps to reproduce:

Arch Linux
Firefox Quantum
firefox 61.0.1-1
firefox-developer-edition 62.0b5-1


Actual results:

448680  Starting <video> playback causes master volume to jump to max                           "10 years ago"
962560  Audio volume UI resets to full volume after toggling the screen size of a video         "5 years ago"
1223413 Audio level control loses state when switching to/from fullscreen                       "3 years ago"
1361265 Switching default audio output device in Windows 10 resets Firefox volume to 100%       "a year ago"

HEY!  See a pattern there?  How about somebody actually bothering to fix this?

NOT ACTUALLY FIXED!  Please stop marking this bug as "Fixed" after applying some incomplete hack.  If you don't understand what the common element is here, you have not fixed the problem!  Obviously someone has failed to create a centralized modular and comprehensible audio interface for firefox.  After 10 years, it might be a good time to put this at the top of the priority list.  If you cannot completely articulate the state variables for the audio interface, there is a big problem.


Expected results:

People involved in NOT fixing this bug:
Carsten Book [:Tomcat]
Jared Wein [:jaws]
Chun-Min Chang[:chunmin]

Do this:
Make sure you have multiple displays.
Open firefox in one display.
Open volume control/mixer in another display.  I'm using PulseAudio pavucontrol.
Start a YouTube video in firefox.
Pause the video.
Set some low audio volume level for the video from the mixer, shown in the mixer as "AudioIPC Sever: AudioStream".
Then, select "Play", play the video.

Notice that the existing "AudioIPC Sever: AudioStream" is deleted, and that a new "AudioIPC Sever: AudioStream" is created, running at FULL VOLUME.

It seems to be the act of pausing the video, selecting a different window focus, and then selecting "Play", that causes the volume interface to restart, at full volume.

Sometimes, doing this in succession, you can leave a trail of multiple inactive Audio Streams in pavucontrol, with firefox audio only connected to the most recently created stream interface.

Obviously, do not delete and recreate the audio stream associated with an audio source that has not actually been truly destroyed.  "Paused" is not the same as "destroyed".

Note also that "about:config" "media.default_volume" has no effect on the playback volume, but that "media.volume_scale" does effect the volume.

Also note that the variable name "media.default_volume" is uselessly misleading, and that the variable name "media.volume_scale" is uselessly uninterpretable.  

Seriously - find someone who speaks English, and try again with these variable names.  What are these variables actually suppose to do?  This is not suppose to be a game of "Hide and Seek".  There is no published "Firefox Audio Interface Model" with which to associate these variable names.  The only recourse is to make these variable names explicitly descriptive.
Component: Untriaged → Audio/Video: cubeb
OS: Unspecified → Linux
Product: Firefox → Core
"minimize memory use" in about:memory while the video is paused seems to be a reliable way to reproduce.

52.0.2 only returns full volume on new videos.
53.0.3 returns to full volume after "minimize memory use" while paused.

Reproduced with kmix 17.12.3 and pavucontrol 3.0.

I remembered the volume being applied even to new streams more recently that 53.
I wonder whether an earlier version of kmix or something else in KDE was applying the initial volume.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: regression
Priority: -- → P2
(In reply to James from comment #0)
> Actual results:
> 
> 448680  Starting <video> playback causes master volume to jump to max       
> "10 years ago"
This was about media element volume affecting the os-global volume.

> 962560  Audio volume UI resets to full volume after toggling the screen size
> of a video         "5 years ago"
This was purely a UI issue not affecting actual sound level.

> 1223413 Audio level control loses state when switching to/from fullscreen   
> "3 years ago"
This was a dupe of the above UI issue.

> 1361265 Switching default audio output device in Windows 10 resets Firefox
> volume to 100%       "a year ago"
This was about changing the default output device in the OS, in this case Windows, and is not fixed yet.


> HEY!  See a pattern there?  How about somebody actually bothering to fix
> this?
No I don't see a pattern there. They look like separate bugs from what you are reporting, so please cut down on the hate and frustration. It's not helping you achieve anything.

Good that you finally got a bug filed for the issue you are experiencing. It can hopefully lead to a quick fix.
See Also: → 1515549
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.