#585149 iceweasel: No sound in videos using the html5 <video> tag

Package:
iceweasel
Source:
firefox-esr
Submitter:
Jad Zoghaib
Date:
2013-08-26 09:45:16 UTC
Severity:
normal
Tags:
#585149#5
Date:
2010-06-09 15:13:31 UTC
From:
To:
Videos using the new html5 <video> tag such as the one on http://www.mozilla-europe.org/fr/firefox/video/ are played correctly by iceweasel 3.5.9 except there is no sound at all. The problem does not occur when playing a "flash" video through the gnash plugin or an embedded video played through the gecko-mediaplayer-plugin.
When downloading the Ogg/Theora video and playing it through a media player (such as mplayer), sound is working flawlessly.

Moreover, browsing local files with iceweasel (with file:///home/ in the address bar) and opening either an Ogg/Vorbis music file or an Ogg/Theora video shows the same problem.
This problem was identified only on the debian-ppc version of iceweasel 3.5.9, the same version installed on my debian-amd64 works correctly.

Please tell me if you need more information.

Best regards.

Jad

#585149#10
Date:
2010-06-10 01:38:32 UTC
From:
To:
Am 2010-06-09 17:13:31, schrieb Jad Zoghaib:

It seems the Iceweasel sound problem becomes more and more weird because
here, mplayer and vlc are working with Video/Audio, but with  flash  and
gnash only Video without Audio works

Thanks, Greetings and nice Day/Evening
    Michelle Konzack

#585149#15
Date:
2010-06-10 08:45:13 UTC
From:
To:
What does /etc/iceweasel/iceweaselrc have to say about ICEWEASEL_DSP?
Is it "none"? If so, can you try "auto"?

Mike

#585149#22
Date:
2010-06-10 14:56:59 UTC
From:
To:
----- Message d'origine ----
I have also checked on my debian-amd64 box: ICEWEASEL_DSP is also set as "none" but sound is working.

Best regards.
--
Jad Zoghaïb

#585149#27
Date:
2010-06-11 08:23:51 UTC
From:
To:
Is there any other process using /dev/dsp or /dev/snd/pcm* ?

Mike

#585149#32
Date:
2010-06-11 09:38:09 UTC
From:
To:
----- Message d'origine ----
I don't think so but if you know a specific way to be sure, I'll be glad to test it.

I have no sound in iceweasel under Xfce (my regular desktop manager) but I have also tried it with fluxbox right after the session started with no other program launched and all iceweasel addons disabled (gnash-plugin, etc).

As a side note, I have also checked that my system seems to be able to handle sound mixing properly since I can have something played in audacious media player while playing something else through ogg123 for example.

Jad

#585149#39
Date:
2011-08-06 09:16:19 UTC
From:
To:
Dit it get any better with more recent versions of iceweasel (like,
version 5.0 from unstable or http://mozilla.debian.net)

Mike

#585149#46
Date:
2012-02-05 18:31:24 UTC
From:
To:
I am experiencing the same difficulties with Sid.  I tried playing a
video at linux.com, on this page for example:

http://video.linux.com/videos

and all of the videos play fine except for lack of sound.  If I choose a
particular video, say

http://video.linux.com/videos/allison-randal-fallacy-of-the-zero-sum-game

then I can get more info from Iceweasel by clicking Tools -> Page Info,
then the Media tab.  I can scroll down, looking for type "Video" until I
find this

http://video.linux.com/media/com_lfvideos/videos/linuxcon-vancouver-day-3-1-1322879147/Day3-1.webm

The info for Location, Type ("video/webm"), Size, and Dimensions looks fine, but the
entry for Associated Text has this:

    Sorry, your browser can't play this video


I Googled a bit, and found a page

http://www.chipwreck.de/blog/2010/03/01/html-5-video-dom-attributes-and-events

which lists some error codes related to HTML5

    Error codes

    If an error occured, you can read the error code to react — these error
    codes are currently supported:

    MEDIA_ERR_ABORTED (1) User aborted video playback

    MEDIA_ERR_NETWORK (2) Network error (could not read the stream)

    MEDIA_ERR_DECODE (3) Decoding error, video is broken or the codec makes
    problems

    MEDIA_ERR_SRC_NOT_SUPPORTED (4) The format is not supported

There is a block of example code which explains why Google found this
page:

    var myvid = document.getElementById('vid');
    if (myvid.error) {
     switch (myvid.error.code) {
[...]
       case MEDIA_ERR_SRC_NOT_SUPPORTED:
	  alert("Sorry, your browser can't play this video.");
	  break;
     }
    }

I have been able to play WebM on other sites, having tested it by
searching for HTML5 video test pages.  At first I thought they were NOT
working, until I realized that the volume level was defaulting to 0;
when I right-clicked and made the controls visible, then slid the volume
up, sound was fine.  The problem with the linux.com videos is not the
volume control, though, as would seem apparent from the error message
printed by the Page Info -> Media dialog window; adjusting the volume
has no effect.

I see that you have asked folks for their system-wide 'iceweaselrc'
contents; here is mine

    $ cat /etc/iceweasel/iceweaselrc
    # which /dev/dsp wrapper to use
    ICEWEASEL_DSP="none"

I only use ALSA for my sound (no PulseAudio or other sound daemon),
though I do have 'alsa-oss' installed.  My understanding was that
Firefox/Iceweasel moved its default sound system to ALSA long ago.  I
doubt that it is significant, but I seem to have "dsp" and "dsp1"
devices, but no "dsp0":

    $ ls -d /dev/dsp*
    /dev/dsp
    /dev/dsp1

Seems strange that linux.com results in no sound on Debian Iceweasel,
but the HTML5 test pages work fine.


HTH,
Dave W.

#585149#51
Date:
2012-02-10 02:37:52 UTC
From:
To:
I'm also finding that OGV video will play without sound; picture is
fine, but cannot hear anything -- with this, for example:

http://meetings-archive.debian.net/pub/debian-meetings/2011/debconf11/high/836_Packaging_for_beginners.ogv

Sound is otherwise working fine on my system:  I can play a music on
'xine' and have a YouTube video open in another tab while the above
OGV video is playing, and sound works everywhere except in the OGV
tab.


DW

#585149#56
Date:
2012-02-10 07:08:09 UTC
From:
To:
Sound works for me on that url. Are you using a dsp wrapper?

Mike

#585149#61
Date:
2012-02-10 12:22:53 UTC
From:
To:
No wrapper, though 'alsa-oss' package is installed.  See output in
message #46 of this bug report:

     $ cat /etc/iceweasel/iceweaselrc
     # which /dev/dsp wrapper to use
     ICEWEASEL_DSP="none"

May I ask if sound is working for you with the linux.com video mentioned
in message #46?


Thanks,
Dave W.

#585149#66
Date:
2012-02-10 16:01:05 UTC
From:
To:
It is working for me.

Mike

#585149#71
Date:
2012-02-10 16:46:40 UTC
From:
To:
OK, time (for me) to start ruling out causes for the problem.  There are
many things on my end that could be involved:

0) Architecture:  I'm using amd64; what are you running?

1) I am using a very old Sid install, constantly updated -- through
many permutations of hardware -- since 2007.  I could easily have some
bad config cruft somewhere.  (An old config file totally broke VLC for
me about a year ago, for example.)

2) I use a locally-built kernel, and a locally-built X stack.

3) I use an /etc/asound.conf file to make my system default to card 1
instead of card 0.  (The complicated device which is detected as card 0
on my machine caused 'audacity' to stop working about 1.5 years ago, due
to some updated device initialization code which was written poorly and
failed to check for error codes returned by library routines.  Does the
'iceweasel' sound code honor the default PCM device if /etc/asound.conf
is present, or does it assume hardware device 0 is its output?

4) I use debian-multimedia.org packages.  Not sure if any 'iceweasel'
dependencies touch those packages, however.

So, I have quite a few things to try.  I also have a "server" (actually
made from desktop parts) which has no X software installed, and where
sound currently is not even configured.  I've been meaning to test the
status of X support on that hardware anyway (it is a newish AMD Llano
CPU/GPU combo), so if I can get sound working on that box I can test the
problem videos with 'iceweasel' there.

If I discover anything useful, I'll report back here.  Not sure what
time frame in which I will get to this testing, however.  I have some
higher priorities at the moment....


Thanks,
Dave W.

#585149#76
Date:
2012-02-10 16:53:00 UTC
From:
To:
That is something i'd investigate if i were you.

Mike

#585149#81
Date:
2012-02-12 20:49:04 UTC
From:
To:
I found some time to take out of few items on my checklist.  First, I
found that two different user accounts on my desktop machine behaved
differently depending on the website.  This gave me some hope that old
cruft in my configuration might be breaking things for me.

So, I moved .mozilla out of the way and ran 'iceweasel' to create a
new configuration directory.  Now I find that I can sometimes play
WebM video with sound.  For example, this test site

http://camendesign.com/code/video_for_everybody/test.html

defaults to this media file

http://clips.vorwaerts-gmbh.de/VfE.webm

for me, and it plays with sound correctly.


Unfortunately, bringing up the DebConf video

http://meetings-archive.debian.net/pub/debian-meetings/2011/debconf11/high/836_Packaging_for_beginners.ogv

in a tab still plays video with no sound.  The Tools->Page Info->Media
dialog lists the Type as "Video", and there is no Associated Text
field shown.

This is slightly different than the camendesign.com WebM video which
works for me, which shows Type as "video/webm".  The video at
linux.com (mentioned in msg #46 above) still does not play:  though it
is a WebM video, it's Type comes up as "Video".  If the linux.com
pages were written to mark the video as "video/webm", I wonder if they
would play on my system?

So now I'm in a bind; all sound works on my system -- local software
(incl. games and media players), websites using Flash, and even some
sites hosting WebM video -- so it seems impossible that the Firefox/
Iceweasel code that initializes ALSA is broken.  (I took a quick look
at the source code, and I see that upstream has included an very old
source copy of libsydneyaudio to provide ALSA support on Linux, so it
is still possible that there is breakage there.)

What a bummer.  I'm going to try some packages that spawn external
media players for video files, too see if that can be used as a
workaround.


DW

#585149#86
Date:
2012-02-12 21:00:16 UTC
From:
To:
After updating to the latest 'iceweasel' in Sid, I had to restore my
old bookmarks and toolbar settings.  The clean .mozilla directory
caused a "Getting Started" button to appear on the toolbar, and I
found that mozilla.org is using WebM videos for their tutorials at
that link:

http://www.mozilla.org/en-US/firefox/central

Clicking "Getting Started", then "Browsing Basics" runs a WebM
video... and I get no sound again.  Frustratingly, the Page Info here
lists the Type as "video/webm", but the Associated Text says "This
video requires a browser with support for open video or Flash."

By comparison, the WebM video at

http://camendesign.com/code/video_for_everybody/test.html

(which works for me) lists Type as "video/webm" and Associated Text as
"Big Buck Bunny".

I have no idea why some WebM videos play for me, and why some do not!


DW

#585149#91
Date:
2012-02-13 01:31:01 UTC
From:
To:
In message #5 of this bug, Jad Zoghaib directs our attention to this
video (which will not play with audio in the case of that PPC system):

http://videos.mozilla.org/firefox/3.5/meet/meet.ogv

On my system, that plays audio (and video) just fine.  And yet, on my
system, none of the OGV videos from DebConf 11 will play sound (only
video):

http://ftp.acc.umu.se/pub/debian-meetings/2011/debconf11/high

Since some WebM and OGV files will play (with sound) in the Iceweasel
browser, I can rule out some possible causes I mentioned in
message #71:

0)  It's not specifically related to architecture (amd64, in my case).

1)  It's not caused by cruft in my .mozilla config directory -- I blew
that away today, but the problem with no sound in some WebM and OGV
videos (while sound plays fine in others) remained.

2)  I use a custom kernel and custom X stack, so I thought this might
be breaking things.  But sound works in general -- including 5.1
surround, simultaneous playback of as many sound sources as I like via
ALSA dmix, Flash videos in Iceweasel, and other files with sound in
Iceweasel -- so it cannot be my custom packages causing this problem.
(Besides, other users started this bug report, and they are not using
custom built packages AFAICS.)

3)  I have a custom, system-wide /etc/asound.conf file, and because of
problems I had with previous software I guessed that either this (or
initialization of sound in Iceweasel) would be the problem.  I was
wrong:  if any of the breakage was caused by this, sound would never
have worked with any of the videos... but I have found many that _do_
work.

4)  This cannot be blamed on debian-multimedia.org, since sound will
play correctly with some videos.  (I've had conflicts resulting from
mixing Sid and d-m.o before, and that usually results in total
breakage.)

I spent some time on bugzilla.mozilla.org, and could not find recent
bugs which involve video playback without audio.  My impression is
that Linux gets secondary attention in this area, likely because of
the history of confusion in Linux sound support; however, this seems
less like a problem with sound so much as some sort of confusion in
the browser about whether it can support playback of the problem
videos (or, at least the audio part of those videos).

Not sure how to proceed at this point.


DW

#585149#96
Date:
2012-02-14 09:25:05 UTC
From:
To:
Hi,

I may by facing the same error (or at least similar one). In my case I'm
unable to play audio on Iceweasel (10.0.1-1) on two different XWindow
sessions.

How to reproduce (I've checked it on two Debian installations):
Run Iceweasel as a one user, check youtube html5 video - it's working
(audio/video). Now start another xwindow sessions (startx -- :1) as
different user, run Iceweasel and html5 video won't event start to play
- just circle is spinning on the middle.

I've checked with just ogg audio - result is the same. While flash video
are working ok. Other applications (opera/chrome/alsaplayer/amarok) can
work simultaneously on both users/xwindow sessions.

On the beginning I thought it's pulseaudio - and made system wide
pulseserver configuration, everything worked ok, just I've stucked with
IW (Iceweasel). After few hours of fight I gave up with pulseaudio and
moved back on Alsa - and surprise - is that it's still not working..

Really strange thing is that even if I terminate IW on the first
account/xsession - second does still not work (even if both are
restarted). Xsession restart does not help either! It looks like that
first user that runs IW have audio/video only :/ - restart of system
helps (I've checked few times).

ii  iceweasel         10.0.1-1   Web browser based on Firefox
ii  iceweasel-l10n-pl 1:10.0.1-1 Polish language package for Iceweasel
ii  xulrunner-10.0    10.0.1-1   XUL + XPCOM application runner

# cat /etc/iceweasel/iceweaselrc
# which /dev/dsp wrapper to use
ICEWEASEL_DSP="none"

# uname -a
Linux sauron 3.2.1-vs2.3.2.5 #4 SMP Tue Jan 24 22:49:25 CET 2012 x86_64
GNU/Linux

I'm not sure how long this problem is present since second user uses
mostly flash and could not seen the problem before. I've recently
reinstalled this system to 64bit version - so it's quite fresh. But I've
reproduced it on another system (also sid/64bit) - much more mature (few
years of updates).

I did also some straces and It looks like second IW does net even read
asound.conf (like the first one).

#585149#101
Date:
2012-03-07 21:50:39 UTC
From:
To:
Madness!

I was checking videos at linux.com today.  Many have been added since I
last checked.  The first one I clicked on worked fine -- video and
sound!  But, when I checked Tools->Page Info, I found that it was a
*.swf (Flash) video.

Then I checked the Allison Randal webm video that was not working
before... and it still doesn't work:  video, but no sound.

Then I tried this one:

http://video.linux.com/videos/the-kernel-report

Video and sound both work!  According to Tools->Page Info->Media, this
is a webm video:

http://d17mmld7179ppq.cloudfront.net/the-kernel-report_66c085/
     hd_ready.webm

Totally baffling.  It looks like there is something at each site (or
page) which can be misconfigured and cause Iceweasel to refuse to play
the video.  Or can sound be encoded in different formats inside a webm
video, resulting in no audio output?  (But others seem to be able to
play the videos with sound that I cannot, so that cannot be an
explanation....)


Bummer,
Dave W.

#585149#106
Date:
2012-10-07 14:52:01 UTC
From:
To:
Hi,

I was facing an issue that seemed similar. Indeed

http://videos.mozilla.org/firefox/3.5/meet/meet.ogv

would play silently. After some fiddling I noticed that removing ~/.asoundrc
fixes the issue for me. This is kind of surprising, because that file only
contained one line:

  pcm.!default hw:0

But removing it definitely makes the problem go away. My original problem,
silent coursera.org lectures, was also fixed by this change.

This problem does not appear to be entirely Iceweasel-specific: in Chromium,
audio would initially work, but seeking in the video would cause the audio to
drop out (only to return after restarting the browser). Removing ~/.asoundrc
also fixes that issue.


Kind regards,

Arnout

#585149#111
Date:
2013-05-22 00:47:24 UTC
From:
To:
Hi

I'm hit by this bug as well in version 17.0.6esr-1 of iceweasel. The
problem for me is that I cannot easily go without an asound
configuration since audio is forwarded to a receiver via optical S/PDIF:

$ cat /etc/asound.conf
# default to optical/digital
pcm.!default iec958

If I comment out the line above to have audio passed to the system
default (analog out), then html5 audio works just fine.

This leads me to believe the problem is somewhere in iceweasel/firefox
audio source code since all other applications are able to conform to
the system-wide asound.conf above.

That, or the way I'm configuring alsa to default to optical out may be
wrong. The alsa wiki mentions asound.conf should not be necessary, but
I'm not sure how else to tell the system to default to a different
output attached to the same audio chip:

from http://alsa.opensrc.org/.asoundrc

Neither .asoundrc or /etc/asound.conf is normally required. You should
be able to play and record sound without either (assuming your mic and
speakers are hooked up properly). If your system won't work without one,
and you are running the most current version of ALSA, you probably
should file a bug report.

#585149#116
Date:
2013-07-29 00:58:06 UTC
From:
To:
As a follow-up to my previous comment I'm pleased to note that the issue
for me is fixed with any or all of the following (I'm not sure what
exactly fixed):

linux 3.9
alsa-base 1.0.25+3
alsa-utils 1.0.27.1-1

With the above, not only does iceweasel play sound for html5 videos, but
an asound.conf file is no longer required to get sound to default to
optical S/PDIF. Thanks to upstream and thanks to debian for fixing both
of these problems for me at least :)

#585149#121
Date:
2013-08-26 09:42:42 UTC
From:
To:
Hello,

I'd like to come back on this bug as it's flagged 'more info'. I found
out that 2 different pages on the same server and, obviously, the same
browser and browser environment show different behaviors depending on
the procedure used to produce sound.

If you go to the page http://www.heise.de/ct/Mitmachen/Browserdemo/ and
open the first (1. Platz/Landschaft) and the third (3. Platz/Doc Snyder)
demos and click on the blue button labeled "Demo öffnen", you'll notice the
following:

* I hear the sound of the 1st demo, whereas it's playing sound using
  JavaScript function (in demo.js using code like
  'audio = new Audio("music.wav"); etc...').
  (Side note: you can click either "Ohne Schatten" or "Mit Schatten",
  it's just to get the demo without or with shadows).
* But I don't hear the sound of the 2nd demo where it's rendered using
  the <audio> tag as in
  	<audio id="soundtrack" preload="auto" loop="loop">
            <source src="audio/ct_intro.ogg" type="audio/ogg"/>
            <source src="audio/ct_intro.mp3" type="audio/mpeg"/>
        </audio>

So, if it's not the desktop environment and not the server environment,
there must be something wrong with the browser, which should be able to
render sound independently from the method used to make it render this
sound.

Hope this helps,
Eric