Open Bug 1682213 Opened 4 years ago Updated 3 years ago

Firefox update to 78.3 on CentOS-6 breaks sound

Categories

(Core :: Audio/Video: Playback, defect, P3)

78 Branch
defect

Tracking

()

UNCONFIRMED

People

(Reporter: dheeraj.gupta4, Unassigned)

References

Details

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0

Steps to reproduce:

Updated to Firefox-78.3 ESR from 68.1-ESR from CentOS repo on a CentOS-6.10 32-bit machine

Actual results:

After update there is no sound while playing audio/video on firefox (e.g .youtube). Tried safe mode, restart and new profile. Sound works fine on system (Can play local audio files). When I play a video on youtube, the speaker icon also does not come up on the tab header.

There is an open bug in CentOS https://bugs.centos.org/view.php?id=17767 where user reports Firefox-78 is no longer compatible with pulseaudio shipped on CentOS6

Expected results:

Sound should have played.

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: Untriaged → Audio/Video: Playback
Product: Firefox → Core

From the info in https://bugzilla.redhat.com/show_bug.cgi?id=1889920, it seems Firefox fails to open a cubeb stream.

Would you mind sharing the information under Media section on the about:support page in Firefox?
Could you pass the log recorded by running firefox with MOZ_LOG="cubeb:4"? If you're using the release version, you can run MOZ_LOG="cubeb:4" firefox in your terminal to launch the Firefox and get the logs. (or MOZ_LOG="cubeb:4" <path>/<to>/<firefox>)

Flags: needinfo?(dheeraj.gupta4)

Would you mind sharing the information under Media section on the about:support page in Firefox?

Audio Backend	(remote error)
Max Channels	0
Preferred Sample Rate	44100
Roundtrip latency (standard deviation)	...

Rest is all blank

Could you pass the log recorded by running firefox with MOZ_LOG="cubeb:4"

$ MOZ_LOG="cubeb:4" firefox --new-instance
[Parent 10326: Main Thread]: D/cubeb Starting cubeb server...
[Child 10401: MediaPlayback #1]: I/cubeb media.cubeb.sandbox: true
[Child 10401: MediaPlayback #1]: D/cubeb media.audioipc.pool_size: 1
[Child 10401: MediaPlayback #1]: D/cubeb media.audioipc.stack_size: 262144
[Child 10401, MediaDecoderStateMachine #1] WARNING: 7f39dd0a7f30 OpenCubeb() failed to init cubeb: file /builddir/build/BUILD/firefox-78.4.0/dom/media/AudioStream.cpp, line 331
[Child 10401, MediaDecoderStateMachine #1] WARNING: Decoder=7f39dd2ad000 [OnMediaSinkAudioError]: file /builddir/build/BUILD/firefox-78.4.0/dom/media/MediaDecoderStateMachine.cpp, line 3891
Flags: needinfo?(dheeraj.gupta4)

(In reply to C.M.Chang[:chunmin] from comment #2)

From the info in https://bugzilla.redhat.com/show_bug.cgi?id=1889920, it seems Firefox fails to open a cubeb stream.

Would you mind sharing the information under Media section on the about:support page in Firefox?
Could you pass the log recorded by running firefox with MOZ_LOG="cubeb:4"? If you're using the release version, you can run MOZ_LOG="cubeb:4" firefox in your terminal to launch the Firefox and get the logs. (or MOZ_LOG="cubeb:4" <path>/<to>/<firefox>)

I have added the info in a comment above. There is another thing. If I change the setting media.cubeb.sandbox to false and then try to play sound, I get a small eror message in top bar "You may need to install the required PulseAudio software". I have the stock pulseaudio that ships with CentOS-6

$ rpm -qa | grep pulseaudio
pulseaudio-gdm-hooks-0.9.21-26.el6.x86_64
pulseaudio-module-bluetooth-0.9.21-26.el6.x86_64
pulseaudio-module-gconf-0.9.21-26.el6.x86_64
pulseaudio-libs-devel-0.9.21-26.el6.x86_64
pulseaudio-libs-0.9.21-26.el6.x86_64
pulseaudio-libs-zeroconf-0.9.21-26.el6.x86_64
alsa-plugins-pulseaudio-1.1.0-1.el6.x86_64
pulseaudio-0.9.21-26.el6.x86_64
pulseaudio-utils-0.9.21-26.el6.x86_64
pulseaudio-libs-glib2-0.9.21-26.el6.x86_64
pulseaudio-module-x11-0.9.21-26.el6.x86_64

So I guess it is a pulseaudio version issue but it would nice to have a workaround.

Could you paste your log when running MOZ_LOG="cubeb:4" firefox --new-instance with media.cubeb.sandbox=false?

Flags: needinfo?(dheeraj.gupta4)
Severity: -- → S3
Priority: -- → P1
See Also: → 1682779

(In reply to C.M.Chang[:chunmin] from comment #5)

Could you paste your log when running MOZ_LOG="cubeb:4" firefox --new-instance with media.cubeb.sandbox=false?

I ran the command and then opened a youtube video and then closed the browser. Here are the logs

$ MOZ_LOG="cubeb:4" firefox --new-instance
[Child 4038: MediaPlayback #1]: I/cubeb media.cubeb.sandbox: false
[Child 4038: MediaDecoderStateMachine #1]: I/cubeb media.cubeb.sandbox: false
[Child 4038, MediaDecoderStateMachine #1] WARNING: 7f5f79ec7870 Can't get cubeb context!: file /builddir/build/BUILD/firefox-78.4.0/dom/media/AudioStream.cpp, line 298
[Child 4038, MediaDecoderStateMachine #1] WARNING: Decoder=7f5f79fc7000 [OnMediaSinkAudioError]: file /builddir/build/BUILD/firefox-78.4.0/dom/media/MediaDecoderStateMachine.cpp, line 3891
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[Child 4038, MediaDecoderStateMachine #1] WARNING: Decoder=7f5f79fc7000 Decode error: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005) - RefPtr<mozilla::MozPromise<RefPtr<mozilla::MediaTrackDemuxer::SamplesHolder>, mozilla::MediaResult, true> > mozilla::MediaSourceTrackDemuxer::DoGetSamples(int32_t): manager is detached.: file /builddir/build/BUILD/firefox-78.4.0/dom/media/MediaDecoderStateMachine.cpp, line 3470
IPDL protocol error: Handler returned error code!

###!!! [Parent][DispatchAsyncMessage] Error: PLayerTransaction::Msg_ReleaseLayer Processing error: message was deserialized, but the handler returned false (indicating failure)

IPDL protocol error: Handler returned error code!
Flags: needinfo?(dheeraj.gupta4)

An interesting observation is that sound is played correctly when playing flash games in the same browser (I know flash is EOL but some games are flash only and the sound works fine on them). The speaker icon also appears in the tab title which can be clicked to mute the sound. When playing flash, there are no logs logged to the console (if we repeat procedure in previous comment).

Priority: P1 → P3
You need to log in before you can comment on or make changes to this bug.