Closed Bug 1329386 Opened 3 years ago Closed 3 years ago

BBCiPlayerTV HTML5 broken (again!) in Firefox-52+

Categories

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

52 Branch
defect

Tracking

()

VERIFIED FIXED
mozilla53
Tracking Status
firefox50 --- unaffected
firefox51 --- unaffected
firefox52 + verified
firefox53 + verified
firefox54 --- verified

People

(Reporter: ashughes, Assigned: mattwoodrow, NeedInfo)

Details

(Keywords: regression)

Attachments

(2 files)

Filing this on behalf of a Nightly Tester's mailing list post:
==============================================================
{The "(again!)" part refers to a previous iPlayer bug
I filed in the list back in September 2016.

https://mail.mozilla.org/pipermail/nightly-testers/2016-September/004141.html }

OS: Windows Vista SP2 32bit, with all MS updates
(including Platform Update Supplement for Vista, i.e. KB KB2117917).
Thus, the system has native H264/AAC decoding support
(via WMF/MSE) for HTML5 MP4 video files.

BBC iPlayer TV HTML5 Requirements

1. As far as this bug is concerned, the
following test page can be used:

http://www.bbc.co.uk/html5

The embedded Media Player is either the
Flash one (AdobeHDS streams) or the
HTML5 one (MPEG-DASH streams),
depending on OS, browser version and
browser plugin configuration.
This test page is not geo-blocked (but separate
streams exist for UK and non-UK clients),
nor does it require a UK TV licence.
The browser behaviour in this test page
is expected to be identical to the behaviour
exhibited on the main BBC iPlayer TV site:

http://www.bbc.co.uk/iplayer

which is UK-only, requires a valid UK TV licence
and (pretty soon) will also require a BBCid (login).

STR

1. Use Firefox Developer Editon 52.0a2
(any build of 52.0a2).
2. about:addons => Plugins =>
Shockwave Flash => Never Activate
(if Flash NPAPI is installed, else disregard)

Though not strictly required, also

about:addons => Plugins =>
Primetime Content Decryption Module => Never Activate

so we're sure H264/AAC decoding is
delegated to system codecs...
3. Visit about:support to verify e10s is ON

Multiprocess Windows  1/1 (Enabled by user)

If it's OFF, visit about:preferences#general => Startup
=> tick "Enable multi-process Firefox Developer Editon"

4. Restart DevEd-52.0a2
5. Visit  http://www.bbc.co.uk/html5
"We think this page has embedded the HTML5 player, as seen below:"
should appear above embedded player.

6. Click the black/pink "PLAY" square;
Expected behaviour: Video clip should start playing
Actual behaviour: Playback fails, player shows
http://i.imgur.com/5Qo03rg.jpg

Additional Info:

1. Browser Console reports something along this line:

Media resource blob:http://emp.bbc.co.uk/e1b07582-61d5-46c4-96a2-95e8d632c4f2 could not be decoded. 1 iframe.html

2.This bug is only present when e10s is turned ON:

Flash Player + e10sON = OK
Flash Player + e10sOFF = OK

HTML5 Player + e10sON = NW (this bug)
HTML5 Player + e10sOFF = OK

DISSECTION

Firefox Developer Edition

Last good: DevEd-51.0a2.win32[20161114004005], LAST of the 51.0a2 cycle
First bad: DevEd-52.0a2.win32[20161114043455], FIRST of the 52.0a2 cycle

REGRESSION RANGE
https://hg.mozilla.org/releases/mozilla-aurora/pushloghtml?fromchange=263190e20543&tochange=7e29173b1641

So, the bad cs came upstream from the 52.0a1 codebase.
Fortunately, I can still run 52.0a1 on Vista, so here it goes:

m-c (52.0a1) repo:

Last good: Nightly-52.0a1.en-US.win32[20161109030210]
https://hg.mozilla.org/mozilla-central/rev/783356f1476eafd8e4d6fa5f3919cf6167e84f8d
First bad: Nightly-52.0a1.en-US.win32[20161110030211]
https://hg.mozilla.org/mozilla-central/rev/336759fad4621dfcd0a3293840edbed67018accd

REGRESSION RANGE
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=783356f1476e&tochange=336759fad462

m-c (52.0a1) hourly win32 (tinderbox builds) repo:

Last good: Nightly-52.0a1.en-US.t-b.m-c.win32[1478705843=20161109073723]
https://hg.mozilla.org/mozilla-central/rev/6b7f1acfbb4b3fab041817a7dfbe39743416181f
First bad: Nightly-52.0a1.en-US.t-b.m-c.win32[1478705964=20161109073924]
https://hg.mozilla.org/mozilla-central/rev/336759fad4621dfcd0a3293840edbed67018accd

REGRESSION RANGE
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=6b7f1acfbb4b&tochange=336759fad462

m-i (52.0a1) repo:

Last good: Nightly-52.0a1.en-US.t-b.m-i.win32[1478659139=20161108183859]
https://hg.mozilla.org/integration/mozilla-inbound/rev/c6d5c06685a248fd8eaa01d695e4509392db9209
First bad: Nightly-52.0a1.en-US.t-b.m-c.win32[1478659822=20161108185022]
https://hg.mozilla.org/integration/mozilla-inbound/rev/d76e0d2be865f40a4bf86fddd1d5430f74b7b5bf

REGRESSION RANGE
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=c6d5c06685a2&tochange=d76e0d2be865

CULPRIT CHANGESETS (either one/both):

https://hg.mozilla.org/integration/mozilla-inbound/rev/95ab9f05b980
https://bugzilla.mozilla.org/show_bug.cgi?id=1315510

https://hg.mozilla.org/integration/mozilla-inbound/rev/d76e0d2be865
https://bugzilla.mozilla.org/show_bug.cgi?id=1315144

Tracking is also requested, because BBC iPlayer is a very
popular media platform (in the UK and globally)

Firefox 50.1.0: unaffected
Firefox 51.0b12: unaffected
Firefox 52.0a2: affected
Firefox 53.0a1 : Can't test, because of OS deprecation;
last build of 53.0a1 that can run on Vista and still has WMF
support is 20161218030213; this is "affected"

Since v52.0 would be the last major version (in the ESR)
channel) that would support Vista, I have a vested interest
in this bug getting fixed as soon as possible.

I don't possess the necessary Bugzilla skills to file this properly,
but I think I shall post a comment on bug 1315144 to alert
the devs about this; they should know how to proceed further... 
==============================================================

I've not personally tried to reproduce this yet but flagging Matt Woodrow since the work the original reporter has done seems to point to one of his patches.
[Tracking Requested - why for this release]: regression in video playback.

Matt, the regression window would seem to implicate bug 1315510 or bug 1315144. Can you please take a look?
Flags: needinfo?(matt.woodrow)
Keywords: regression
Version: unspecified → 52 Branch
Tracking this new regression for 52/53 (though if it turns out to be vista-only, it won't be a concern for 53).
(In reply to Julien Cristau [:jcristau] from comment #2)
> (though if it turns out to be vista-only, it won't be a concern for 53).

I have tested this on sister's Win7 SP1 64bit laptop, 
it's reproducible there, too...
Please, users on Windows OSes test and report back here!

BTW, I am the original reporter on the Nightly Testers Mailing List: 
https://mail.mozilla.org/pipermail/nightly-testers/2017-January/004176.html
(In reply to Vangelis from comment #3)
> (In reply to Julien Cristau [:jcristau] from comment #2)
> > (though if it turns out to be vista-only, it won't be a concern for 53).
> 
> I have tested this on sister's Win7 SP1 64bit laptop, 
> it's reproducible there, too...
> Please, users on Windows OSes test and report back here!
> 
> BTW, I am the original reporter on the Nightly Testers Mailing List: 
> https://mail.mozilla.org/pipermail/nightly-testers/2017-January/004176.html

Which firefox versions is it broken on for Win7?

I can't reproduce on Win10, Firefox 53 Nightly.
Flags: needinfo?(matt.woodrow)
Ok, but I can reproduce it in Firefox52.

I haven't done a local build of Aurora yet, but I'm pretty sure the problem is that we create an H264Converter which doesn't actually call CreateVideoDecoder on the underlying PDM (since not enough data is available yet).

When we do call CreateVideoDecoder it fails (since RemoteDecoderModule is disabled), but we've now missed the opportunity to recreate decoders so we just error instead.

I think jya's work to combine CreateVideoDecoder and Init might fix this even better, but for now we can make CreateVideoDecoder fall back to WMF.
Assignee: nobody → matt.woodrow
Attachment #8825267 - Flags: review?(jyavenard)
(In reply to Matt Woodrow (:mattwoodrow) from comment #4)
> Which firefox versions is it broken on for Win7?

OS: Win7 SP1 64 bit, fully updated (Dec 2016 MS updates, 
I understand more are due today Tue Jan 10th 2017). 

I just tried 

Nightly-53.0a1.en-US.m-c.win32[20170109030209]

Application Basics
------------------

Name: Firefox
Version: 53.0a1
Build ID: 20170109030209
Update Channel: nightly
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0
OS: Windows_NT 6.1
Multiprocess Windows: 1/1 (Enabled by user)
Safe Mode: false

and the bug does not manifest itself 
(as posted originally in my bug report,
I couldn't test latest 53.0a1 on Vista)

Then tried latest greek locale of 52.0a2: 

DevEd-52.0a2.el.win32[20170109004008]

Βασικά εφαρμογής
----------------

Όνομα: Firefox
Έκδοση: 52.0a2
ID έκδοσης: 20170109004008
Κανάλι ενημερώσεων: aurora
Λειτουργία χρήσης: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
ΛΣ: Windows_NT 6.1
Παράθυρα πολυδιεργασιών: 1/1 (Ενεργοποιήθηκε από το χρήστη)
Ασφαλής λειτουργία: false

and the bug is there: 

http://i.imgur.com/G79dhbI.jpg
Ryan, I'm preemptively requesting qe-verification on this bug once fixed. Since this isn't the first time we've regressed behaviour on BBCiPlayer I suggest we get this into our regular Aurora/Beta sign-off checklist.
Has Regression Range: --- → yes
Has STR: --- → yes
Flags: qe-verify?
Flags: needinfo?(ryanvm)
Flags: needinfo?(ryanvm) → needinfo?(andrei.vaida)
Off topic, I know, but: 

While I was checking this bug on a borrowed (just for an hour) Win7 SP1 laptop, 
I discovered another unrelated bug on latest Nightly 53.0a1 (buildID=20170109030209).

STR

1. Open in a tab "about:support"
(or Menu bar => Help => Troubleshooting Information)
2. Middle-clicking on any of the blue-lettered links 
in the "Application Basics" section 

about:plugins
about:buildconfig
about:memory
about:performance
about:serviceworkers
about:profiles
All Crash Reports

results in blank background tabs, 
with empty tab titles.

Left-clicking works for some of them (same tab):
about:buildconfig
about:memory
about:performance
about:profiles
about:crashes

but for the rest:
about:plugins
about:serviceworkers
results in an ever loading tab...

Clean profile with no addons, e10s is not relevant (bug occurs regardless).

But don't expect me to pursue this any further, 
the Win7 laptop is back to its owner, my own Vista one 
can't run Nightly-53.0a1 anymore (thanks to Mozilla Foundation...).
So I guess this is the ultimate firefox nightly bug I'm reporting, enjoy!
(In reply to Anthony Hughes (:ashughes) [GFX][QA][Mentor] from comment #7)
> Ryan, I'm preemptively requesting qe-verification on this bug once fixed.
> Since this isn't the first time we've regressed behaviour on BBCiPlayer I
> suggest we get this into our regular Aurora/Beta sign-off checklist.

We'll keep an eye on this and start working on a testcase suitable for a once-per-cycle check, once that a fix for this issue lands.

(keeping the ni? in place as a reminder)
Flags: qe-verify? → qe-verify+
Comment on attachment 8825267 [details] [diff] [review]
fallback-create-decoder

Review of attachment 8825267 [details] [diff] [review]:
-----------------------------------------------------------------

I'm puzzled with your explanation however. The only time the h264convertrr won't immediately create a decoder is with avc3 which YouTube doesn't use. By the time the h264convertrr is created, we always have the sps/pps and so it creates the decoder immediately.
Attachment #8825267 - Flags: review?(jyavenard) → review+
Oh, my bad, this is BBC which does use avc3
Priority: -- → P1
Pushed by mwoodrow@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/94e48b834d82
Fallback to WMF decoding if the OOP decoder fails. r=jya
Backout by ryanvm@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b82f877993b7
Backed out changeset 94e48b834d82 for bustage on a CLOSED TREE.
Hello

 The initial patch for this bug was backed out on 20170112024900Z, yet there appears no additional 
activity from then on; it is, of course, still present in today's build (20170117004014) of 
DevEd-52.0a2 on Vista x86 and the merge date is only 6 days away... 
 If it isn't fixed by then, that will leave a bugged final build of 52.0a2 on Vista (53.0a2 won't 
run on this OS) and the bug will be inherited down to Beta-52.0b1; Release-51.0 will stay unaffected
(from what I have understood in previous comments, on Win7+, Nightly-54.0a1 and DevEd-53.0a2 will 
become unaffected, but Beta-52.0b1 will, too, become affected).
I am sure there's a good reason behind the bug's inactivity, still it makes the uninitiated ones wonder...
Pushed by mwoodrow@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/53c968150a5e
Fallback to WMF decoding if the OOP decoder fails. r=jya
https://hg.mozilla.org/mozilla-central/rev/53c968150a5e
https://hg.mozilla.org/mozilla-central/rev/eff25b386cb7
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
Please request Aurora approval on this when you're comfortable doing so.
Flags: needinfo?(matt.woodrow)
Comment on attachment 8825267 [details] [diff] [review]
fallback-create-decoder

Approval Request Comment
[Feature/Bug causing the regression]: Bug 1315510
[User impact if declined]: Broken MP4 video on some websites (not including YouTube).
[Is this code covered by automated tests?]: No
[Has the fix been verified in Nightly?]: Yes
[Needs manual test from QE? If yes, steps to reproduce]: No
[List of other uplifts needed for the feature/fix]: None
[Is the change risky?]: No, very low risk.
[Why is the change risky/not risky?]: Just makes sure the new code (which is disabled) correctly falls through to the old code.
[String changes made/needed]: None
Flags: needinfo?(matt.woodrow)
Attachment #8825267 - Flags: approval-mozilla-aurora?
Today is Mon Jan 23rd 2017, i.e. merge day; despite my plea, the fix in comment 17 hasn't been uplifted to the aurora channel (as per comment 18) :-(

Today's win32 build of DevEd-52.0a2 has just been installed on my VistaSP2 laptop, its buildID is 20170123004004 and will probably be the very last build of Developer Edition that would run on my OS; it's based on changeset

https://hg.mozilla.org/releases/mozilla-aurora/rev/24a81d93e07cc96300f8e1f5c69034dd4743bd63

tagged as "FIREFOX_BETA_52_BASE", which indicates that my previous comment 14 stands true: 
1. The bug will forever remain in the very last build of DevEd-52.0a2 that is Vista compatible
2. The bug will be carried over to the 52.0beta channel and will have to be fixed there...
I had thought I reported it early enough to avoid the above, alas I was mistaken :-{
As a Vista user, thank you, once again, Mozilla Foundation...
(Yes, I have read the "No obligation" clause of the Bugzilla Etiquette, still I chose to be optimistic 
about a timely fix...)
Comment on attachment 8825267 [details] [diff] [review]
fallback-create-decoder

fix mp4 video issue affecting bbc iplayer, beta52+
Attachment #8825267 - Flags: approval-mozilla-aurora? → approval-mozilla-beta+
During our today Firefox 52 beta 2 validation we included a test for this issue and can confirm it's fixed across platforms (Windows 8.1 x64, Mac OS X 10.10 and Ubuntu 12.04 x86). 

On the other hand we also tested on Windows XP SP3 x86 and it seems that the issue still occurs on this OS.
More information regarding the issue:
 - Shockwave Flash (latest version: 24.0.0.194) is set to Never Activate. (Only Open H.264 Video Codec provided by Cisco Systems, Inc. is enabled in plugins)
 - Visiting https://www.youtube.com/html5 it shows that H.264 and MSE & H.264 is missing).
 - Visiting http://www.bbc.co.uk/html5 and clicking on the video will show "Sorry, you need Flash to play this. Enable it in your browser of download Flash Player here." message.
 - e10s is enabled by forcing 'browser.tabs.remote.autostart' to 'true'.

Anthony, do you know if this fix should affect Windows XP as well? Or it's aimed to Vista and upwards.

This is now a part of our Web Compatibility testing so we should catch this next time it happens.
Flags: needinfo?(andrei.vaida) → needinfo?(anthony.s.hughes)
(In reply to Bogdan Maris, QA [:bogdan_maris] from comment #23)
> During our today Firefox 52 beta 2 validation we included a test for this
> issue and can confirm it's fixed across platforms (Windows 8.1 x64, Mac OS X
> 10.10 and Ubuntu 12.04 x86).

Confirmed fixed also on Windows Vista SP2 x86 fully updated by Microsoft 
 
> On the other hand we also tested on Windows XP SP3 x86 and it seems that the
> issue still occurs on this OS.
> (snip)
> Anthony, do you know if this fix should affect Windows XP as well?

Anthony will surely be able to elaborate more, but AFAIK Windows XP SP3 does not have 
Windows Media Foundation support
https://msdn.microsoft.com/en-us/library/windows/desktop/ms694197(v=vs.85).aspx
(... for using digital media on Windows Vista and later.)
and lacks system codecs to support HTML5 playback of MP4 files (h.264 video codec, 
aac audio codec). 
Additionally, for the same reason, BBC iPlayer HTML5 (that this bug refers to), 
which is using MPEG-DASH stream methodology, is not supported on Firefox on XP. 

> Or it's aimed to Vista and upwards.

In the case of Vista, the Platform Update Supplement should be also installed 
on top of SP1 + SP2 (this update installs system decoders for h264/aac).
I would concur with comment 24.
Flags: needinfo?(anthony.s.hughes)
Thanks guys for the clarification. I will go ahead and mark this as verified on Fx 52.
Flags: qe-verify+
I reproduced this issue using 52.0a2, build ID: 20161211004007, on Windows 10 x64.
I can confirm this issue is fixed, I verified Fx 53.0a2, build ID: 20170201004003 and Fx54.0a1, build ID: 20170201030207, on Windows 10 x64, Ubuntu 14.04 LTS and Mac OS X 10.11.

Cheers!
Status: RESOLVED → VERIFIED
It seems broken again.  Not sure if related to issue here or if this a different problem:

The dropwdown menus on iplayer do not drop down ("Categories" and "Channels") - selected movie also fails to play,
used WITH and WITHOUT "opt out" from html5 player (www.bbc.co.uk/html5)

Firefox 53.0.2
Mac OSX 10.10.5 - 3.2 GHz Quad-Core Intel Xeon 2012 Mac Pro
Flash NPAPI Plug-in version 25.0.0.171 is installed.

It plays correctly on Safari (V 10.1.1 (10603.2.4))
NB:  I think I found the problem:  It's firefox itself.  Removal of Java.  I wished users would not be dictated.  Please re-issue the optional plugin to run java.
Attached image BBC.png
Hi Matt ! 

It seems that on Ubuntu 16.04 32bit the http://www.bbc.co.uk/html5 video fails to load.

I have attached an image for further details (Note that the "Sorry, you need flash to play this" message is displayed for a short time).

Could you please take a quick look into this?

Thanks a lot!
Flags: needinfo?(matt.woodrow)
You need to log in before you can comment on or make changes to this bug.