Last Comment Bug 475110 - Non PCM encoded Wave files do not play
: Non PCM encoded Wave files do not play
: verified1.9.1
Product: Core
Classification: Components
Component: Audio/Video (show other bugs)
: 1.9.1 Branch
: All All
: -- normal with 1 vote (vote)
: mozilla1.9.2a1
Assigned To: Matthew Gregan [:kinetik]
: Maire Reavy [:mreavy]
: 470518 491385 (view as bug list)
Depends on:
  Show dependency treegraph
Reported: 2009-01-23 15:56 PST by Gary [:streetwolf]
Modified: 2014-04-12 20:59 PDT (History)
12 users (show)
benjamin: blocking1.9.1-
roc: wanted1.9.1+
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

example WAVE file from voice mail app (3.87 KB, audio/x-wav)
2009-05-18 08:37 PDT, Manu Sridharan
no flags Details
fix (5.45 KB, patch)
2009-05-21 19:38 PDT, Robert O'Callahan (:roc) (email my personal email if necessary)
cajbir.bugzilla: review+
Details | Diff | Splinter Review
additional patch v0 (1.13 KB, patch)
2009-05-27 20:06 PDT, Matthew Gregan [:kinetik]
roc: review+
roc: superreview+
shaver: approval1.9.1+
Details | Diff | Splinter Review

Description Gary [:streetwolf] 2009-01-23 15:56:23 PST
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b3pre) Gecko/20090123 Shiretoko/3.1b3pre (.NET CLR 3.5.30729)
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b3pre) Gecko/20090123 Shiretoko/3.1b3pre (.NET CLR 3.5.30729)

The URL I specified contains wave files which are encoded in several different ways.  The files designated as PCM play natively.  All the others do not play.

I specified that wave files play in WMP but the non-PCM files do not open WMP or any other program I put in the Applications option.  However, I discovered that if I change it to a plugin for audio/x-wav such as the Quicktime plugin and then change it back to WMP all the files open in WMP.  I just have to move my pointer to the plugin then move it to WMP and click OK.  

This only lasts for the life of the session.  Once I exit FF the problem happens again.  This 'workaround' only works if there is a plugin associated with this MIME.  

Reproducible: Always

Steps to Reproduce:
1.see details
Actual Results:  
Non-PCM encoded wave files don't play

Expected Results:  
All Wave files should play.
Comment 1 Matthias Versen [:Matti] 2009-01-23 16:55:42 PST
confirmed with Seamonkey 1.9.1 branch.
The internal video/audio component takes the wav files, doesn't display any controls which is really ugly in the case of such a standalone file and it doesn't play non-pcm wave files.
Comment 2 cajbir (:cajbir) 2009-01-23 17:05:59 PST
The HTML5 specification only requires the internal audio element to playback PCM encoded wav files:

"User agents must support the WAVE container format with audio encoded using the PCM format."
Comment 3 Gary [:streetwolf] 2009-01-23 17:11:53 PST
As I said I can't set another application to handle waves unless I use my workaround as described.  So this might be an additional problem.
Comment 4 Gary [:streetwolf] 2009-01-24 12:04:32 PST
I just want to add that in my case my online VOIP voice mail is a GSM wave file. It does not play.  I can accept the HTML5 specification but non-PCM wave files should at least open in the Program I specify in the Applications options. 

I didn't mention that the controls become visible when I move my pointer to the upper left hand side of the blank screen.  They don't do anything however.

So the problem might not be that non-PCM wave files are not being played natively but that they aren't being played by external programs or plugins without using my workaround.

Perhaps a new problem report should be created for this?
Comment 5 Gary [:streetwolf] 2009-04-10 04:30:24 PDT
I don't understand why my bug appears to be dead in the water.  There are so many sites that use non PCM encoding.  FF at it stand now won't even let me play them in another application such as WMP.  Also, HTML5 states that it must support PCM format not that other formats can't exist.

Please rethink this.

Comment 6 Matthias Versen [:Matti] 2009-04-10 08:07:55 PDT
>I don't understand why my bug appears to be dead in the water.
To give you a feeling about timeframes in bugzilla : this 3 month old bug is a very, very young bug, we have thousands of open bugs that are 2 years or older.
Comment 7 cajbir (:cajbir) 2009-04-10 08:42:30 PDT
I think a new bug should be created for comment 4. Could you be more specific about what non-pcm based formats you want supported?
Comment 8 Gary [:streetwolf] 2009-04-10 09:09:31 PDT
The URL I provided at the top contains just about all the ways a Wave file can be encoded.  I'd like to see all of them supported either natively or at the least be able to click on a non-PCM wave and have it opened in my media player which used to work but doesn't work now.  All other browsers can play all the wave files, btw.

The GSM encoded waves I believe are used to record my voice mail I listen to online.  Clicking on it just produces a screen with the video controls which is also seems shouldn't happen.

In a nutshell sites use all of the methods above to encode their waves so why not support them all?  Even if HTML5 says no more non-PCM encoded wave files you can't just stop all the sites that use them dead in their tracks so to speak.
Comment 9 Sylvain Pasche 2009-05-04 16:57:05 PDT
*** Bug 491385 has been marked as a duplicate of this bug. ***
Comment 10 Sylvain Pasche 2009-05-04 17:03:31 PDT
Apparently the formats of the .wav files on that website are:

file 8kulaw.wav 
RIFF (little-endian) data, WAVE audio, ITU G.711 mu-law, mono 8000 Hz
Comment 11 Manu Sridharan 2009-05-05 06:52:46 PDT
How will Firefox 3.5 handle non-PCM .wav files?  If the files are not played, IMO that is a significant regression over the out-of-the-box experience of Firefox 3.0 on Mac, which uses the QuickTime plugin.  (From Gary's comments above, it sounds like it's a regression on Windows as well.)  I can confirm that our web-based voice mail system at work uses non-PCM .wav files:

Listening to messages works by default with Firefox 3.0 and with Safari, but it's broken in Firefox 3.5 Beta 4.  At the least, I think that when Firefox 3.5 encounters a non-PCM .wav file, it should provide an easy way for the user to switch back to the Firefox 3.0 behavior (i.e., the use of the QuickTime plugin).  Otherwise, I think many novice users will get very frustrated.
Comment 12 Sylvain Pasche 2009-05-05 07:10:58 PDT
I think that when a natively handled mime type is loaded and it contains an unsupported format (audio/x-wav with a compressed encoding, or a video/ogg with an mp3 audio stream if that's possible) it should fall back to plugins if available. Please file a new bug for that (see comment 7 and comment 4).
Comment 13 Manu Sridharan 2009-05-05 07:32:43 PDT
I submitted bug 491487 on the fall back behavior.  I'll leave it to someone else to decide if it should be blocking-1.9.1.
Comment 14 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-17 21:10:56 PDT
It's very difficult to hand off playback to another application after we've decoded some quantity of the data and discover that we don't understand the particular codec used.

You can set the media.wave.enabled pref to false, but that's not a great solution. I'm not really sure what to do here.

Manu, what Wave codec is IBM using?
Comment 15 Manu Sridharan 2009-05-18 08:37:16 PDT
Created attachment 378061 [details]
example WAVE file from voice mail app

This is an example WAVE file from my work's web-based voice mail system that doesn't play in Firefox 3.5.
Comment 16 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-21 18:44:13 PDT
Is this served via an <object> element? Or as a link that opens an external app?
Comment 17 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-21 19:38:49 PDT
Created attachment 379028 [details] [diff] [review]

This patch stops us from loading Wave files as stand-alone documents (in <object> or top-level documents). Wave files can still work in <audio> and <video> elements.
Comment 18 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-21 20:13:40 PDT
Comment on attachment 379028 [details] [diff] [review]

This patch fixes a regression for people using Wave files on the Web with codecs we don't support. For Wave files appearing in <object> or loaded directly into a tab, We're just going to pretend the browser doesn't understand Wave files and hand them off to a plugin or helper app, like Firefox 3 did. Apparently some products depend on this.

It doesn't affect <audio> and <video> elements, we'll still use our own Wave codec there, but there are no issues of compatibility with existing content there, of course.

There's not real loss of functionality for users since almost all systems can play Wave files one way or another.
Comment 19 Manu Sridharan 2009-05-22 05:13:28 PDT
In response to comment 16, in the voice mail app there are direct links to the .wav files; there is no <object> element involved AFAIK.  If I'm wrong I'll post another comment.
Comment 20 Gary [:streetwolf] 2009-05-22 19:29:36 PDT
Please, please fix this.  All the other browsers will play any encoded wav file PCM or not.  To lose this functionality in FF is not acceptable.
Comment 21 Mike Beltzner [:beltzner, not reading bugmail] 2009-05-22 21:16:38 PDT
Comment on attachment 379028 [details] [diff] [review]

Comment 22 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-24 17:55:39 PDT
Comment 23 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-25 16:09:32 PDT
Comment 24 Henrik Skupin (:whimboo) 2009-05-27 07:30:30 PDT
Roc, I cannot get it to work on XP with all the listed wav files on Nothing gets played with todays nightly builds of Minefield and Shiretoko. There is even not a save as dialog.

For me this is not fixed. Or am I doing something wrong?
Comment 25 Matthew Gregan [:kinetik] 2009-05-27 08:46:59 PDT
Henrik, do you have appropriate plugins to play the files?  With a build including this patch, visiting the URLs linked from the bug URL play the media files back via the QT plugin on OS X.

Since we're reverting to platform-specific behaviour in this case, you should see the same behaviour that you see in Firefox 3.0.
Comment 26 Sylvain Pasche 2009-05-27 08:55:20 PDT
I see the same thing as Henrik, no save as dialog when clicking on one of the wave file. But with Firefox 3.0, the save as dialog appears.

I have no plugin installed that can handle audio/x-wav
Comment 27 Henrik Skupin (:whimboo) 2009-05-27 10:37:39 PDT
Matthew, given by the os/platform I thought this is Windows only so I haven't give an UA. Everything works fine on OS X and Linux but not with Shiretoko and Minefield on Windows.

Reopening bug for clarification and further work.
Comment 28 Gary [:streetwolf] 2009-05-27 15:39:00 PDT
Doesn't appear to be working as I expected. I have both media player and QT on the application list for wav files.  Even though I have Media Player as the default all wav files are played in QT.

Secondly QT plays all wav files including PCM.  I thought PCM waves would be played natively.  If I disable the QT plugin I get native PCM playback and Media Player is ignored so all I get is the throbber for non-PCM files.

Definitely something is askew.
Comment 29 Mike Beltzner [:beltzner, not reading bugmail] 2009-05-27 15:56:54 PDT
Comment on attachment 379028 [details] [diff] [review]

(clearing flag for query-sanity; the patch can stay, as it's obviously better if not yet fully fixed)
Comment 30 Matthew Gregan [:kinetik] 2009-05-27 18:37:39 PDT
Got a fix, but I'm not sure why it's only broken on Windows.
Comment 31 Matthew Gregan [:kinetik] 2009-05-27 20:06:27 PDT
Created attachment 380029 [details] [diff] [review]
additional patch v0

Don't register Wave MIME types with the doc loader.  I don't know why this bug only occurs on Windows (differences in content sniffing?), but it's clear that we shouldn't be registering these MIME types when we have no intention of handling them.
Comment 32 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-27 20:15:50 PDT
Comment on attachment 380029 [details] [diff] [review]
additional patch v0

very safe followup fix
Comment 33 Matthias Versen [:Matti] 2009-05-28 06:46:32 PDT
re comment #28:
The 2 plugins case which are handling the same mime-type is the old behavior.
You can not control which plugin plays the mime-type, there is no default and it depends on which plugin is found first (?) on the hdd. The plugin manager bug is for setting a default in such cases.
Comment 34 Benjamin Smedberg [:bsmedberg] 2009-05-28 10:01:32 PDT
Pre-approved to bake on trunk.
Comment 35 Robert O'Callahan (:roc) (email my personal email if necessary) 2009-05-31 03:49:30 PDT
Comment 36 Henrik Skupin (:whimboo) 2009-06-01 14:55:54 PDT
Ok, I've checked with Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2a1pre) Gecko/20090601 Minefield/3.6a1pre (.NET CLR 3.5.30729) ID:20090601041706 and everything is fine on Windows now.
Comment 37 Mike Shaver (:shaver -- probably not reading bugmail closely) 2009-06-03 06:55:42 PDT
Comment on attachment 380029 [details] [diff] [review]
additional patch v0

a191=shaver, please land ASAP!
Comment 38 Ted Mielczarek [:ted.mielczarek] 2009-06-03 07:04:39 PDT
Comment 39 mdew 2009-06-03 16:55:09 PDT
can someone look at this, (sorta related)
Comment 40 Henrik Skupin (:whimboo) 2009-06-04 05:04:51 PDT
*** Bug 470518 has been marked as a duplicate of this bug. ***
Comment 41 Henrik Skupin (:whimboo) 2009-06-04 08:37:55 PDT
Verified fixed with a 1.9.1 build on Windows Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1pre) Gecko/20090604 Shiretoko/3.5pre (.NET CLR 3.5.30729) ID:20090604045218

Note You need to log in before you can comment on or make changes to this bug.