Closed
Bug 1417435
Opened 8 years ago
Closed 2 years ago
[FF57|Linux] Any kind of media file won't play at all when using apulse
Categories
(Core :: Security: Process Sandboxing, defect, P5)
Tracking
()
RESOLVED
INVALID
People
(Reporter: bil_94, Unassigned)
Details
(Whiteboard: sb+)
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0
Build ID: 20171112125346
Steps to reproduce:
I updated today to FF57 and now any videos won't play at all, either the "Quantum vs Chrome" from the update dossier, or Youtube, which now is useless to me. The videos show "buffer" so it's not my connection, it's a "media player" issue within firefox and who knows what else.
Also, Spotify Web Player won't play any music either. Same issue
Actual results:
Well, when you press play, in youtube videos the play button changes shape, but the video doesn't play.
In Spotify Web Browser the issue is different, the play button doesn't even change shape and the music well, also won't play
Expected results:
Time in video advances, I can see the video on my screen as I was able to do on FF<=56
Music in Spotify Web was able to advance and the play button changed shape.
As a matter of expanding upon my issue, I have to run Firefox under Apulse because of poor decisions on development where ALSA was left out, so until FF56 I was able to run apulse and firefox just fine, and now I can't, I would like to have some help either with pulse audio support or better apulse integration.
If I run firefox with no apulse, the videos play but there's no sound because of this decision that was made.
Comment 2•8 years ago
|
||
The issue is caused by sandboxing. We support PulseAudio, or when Firefox was compiled with ALSA enabled (not maintained by us but AFAIK still works), ALSA.
When you use apulse, you are using a build without ALSA support, but with an audio driver that uses ALSA, and talks to ALSA devices, so it will be blocked by the sandbox. The recommended fix would be to use PulseAudio, which is actively supported and maintained.
If you are unwilling to do that too, then you can still work around it by going to about:config and setting
security.sandbox.content.write_path_whitelist=/dev/snd
Which will open up a hole in the sandbox that allows apulse to talk to ALSA. Alternatively, use a Firefox build that supports ALSA natively, which has this setting built-in.
Component: Untriaged → Security: Process Sandboxing
Product: Firefox → Core
Comment 3•8 years ago
|
||
Bug 1362220 deals with removing audio playback from the content process, which will decouple sandboxing from the audio backends. For Linux that should land in the Firefox 59 timeframe.
Comment 4•8 years ago
|
||
(In reply to Gian-Carlo Pascutto [:gcp] from comment #2)
> If you are unwilling to do that too, then you can still work around it by
> going to about:config and setting
>
> security.sandbox.content.write_path_whitelist=/dev/snd
>
> Which will open up a hole in the sandbox that allows apulse to talk to ALSA.
I forgot to mention this, but you need to restart the browser for that setting to take effect.
Updated•8 years ago
|
Priority: -- → P5
Whiteboard: sb+
Hi @Gian-Carlo(In reply to Gian-Carlo Pascutto [:gcp] from comment #4)
> (In reply to Gian-Carlo Pascutto [:gcp] from comment #2)
> > If you are unwilling to do that too, then you can still work around it by
> > going to about:config and setting
> >
> > security.sandbox.content.write_path_whitelist=/dev/snd
> >
> > Which will open up a hole in the sandbox that allows apulse to talk to ALSA.
>
> I forgot to mention this, but you need to restart the browser for that
> setting to take effect.
Hi gian Carlo, thanks a lot for your comprehensive answer, I really don't know how to get PulseAudio to work under my current OS (I'm using a Puppy Linux pup Named TahrPup v6.0.5 so there's some... complications on what I can and can't do under certain things like drivers, they tend to... break things).
But I will try out this option to see if it works, and I'll report back.
I did get an error that was like this (when running with Apulse firefox):
ALSA lib confmisc.c:768:(parse_card) cannot find card '0'
ALSA lib conf.c:4248:(_snd_config_evaluate) function snd_func_card_driver returned error: Permission denied
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4248:(_snd_config_evaluate) function snd_func_concat returned error: Permission denied
ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name
ALSA lib conf.c:4248:(_snd_config_evaluate) function snd_func_refer returned error: Permission denied
ALSA lib conf.c:4727:(snd_config_expand) Evaluate error: Permission denied
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM default
[apulse] [error] do_connect_pcm: can't open playback device "default". Error code -13 (Permission denied)
[apulse] [error] do_connect_pcm: failed to open ALSA device. Apulse does no resampling or format conversion, leaving that task to ALSA plugins. Ensure that selected device is capable of playing a particular sample format at a particular rate. They have to be supported by either hardware directly, or by "plug" and "dmix" ALSA plugins which will perform required
I guess it is solved by doing what you said, as stated by the Apulse Maintainer:
https://github.com/i-rinat/apulse/issues/70#issuecomment-344810073
Will test it out.
And report back, thanks.
I tested out updating to FF57 once again, and modified that config option.
It didn't work as the issue persisted.
Will have to fall back to a previous version once again.
Comment 7•8 years ago
|
||
Make sure you use security.sandbox.content.write_path_whitelist not syscall_whitelist.
I used the one that you posted here, now I'll try this solution, as Pulse Audio is impossible to be run on my OS:
http://www.murga-linux.com/puppy/viewtopic.php?p=974476#974476
Comment 9•8 years ago
|
||
syscall_whitelist takes numbers, not paths. All of this is actually explained correctly in the apulse README.
Comment 10•8 years ago
|
||
1.solution: use apulse and set with about:config the security.sandbox.content.level to 0.
2.solution: use pulseaudio (from the repository) and edit /etc/pulse/default.pa.
comment all lines with .fail (30, 70, 107 from .fail to #.fail)
uncomment the lines :load-module module-alsa-sink (and the following)
load-module module-alsa-source device=hw:1,0
start with pulseaudio -D
that worked for me.
Updated•3 years ago
|
Severity: normal → S3
Comment 11•2 years ago
|
||
Not sure how to classify this but given that apulse docs explain how to configure this correctly, I guess calling it user error is reasonable.
Status: UNCONFIRMED → RESOLVED
Closed: 2 years ago
Resolution: --- → INVALID
Summary: [FF57|Linux] Any kind of media file won't play at all. → [FF57|Linux] Any kind of media file won't play at all when using apulse
| Reporter | ||
Comment 12•2 years ago
|
||
Hey there, absolutely.
I was a moron and knew nothing better on how even pulseaudio or alsa worked, the thought of pulse still gives me nightmares.
I was absolutely out of my league in this issue and I never traced back to make it work, decided that switching the distro all together was a better solution, lol.
Anyways, thanks Gian-Carlo! I must say that you at least tried with me haha.
Bests,
You need to log in
before you can comment on or make changes to this bug.
Description
•