Video playback doesn't work when e10s is enabled

RESOLVED FIXED in Firefox 41

Status

()

--
major
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: dqeswn, Assigned: mattwoodrow)

Tracking

(Blocks: 1 bug)

Trunk
mozilla41
x86_64
Windows 8.1
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(e10s+, firefox41 fixed)

Details

Attachments

(2 attachments)

(Reporter)

Description

4 years ago
When e10s is enabled (default now on nightly) videos won't play. This is a recent breakage, it was working for a long time before.
Naturally I first noticed on youtube's HTML5 player. Where I get an infinite throbber. Not even the advertisement plays.
But dropping videos from my desktop won't play either. I get a message that the file is corrupted/damaged. (Don't know the exact wording in english)
The files can be played by firefox normally.
After disabling browser.tabs.remote.autostart.2 videos play normally.
(Reporter)

Updated

4 years ago
Blocks: 516752, 778617

Comment 1

4 years ago
WFM (YT HTML5 player or webm loaded locally) with the latest Nightly and e10s on/off.

Could you test with a fresh profile?
https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles
Flags: needinfo?(dqeswn)
(Reporter)

Comment 2

4 years ago
(In reply to Loic from comment #1)
> WFM (YT HTML5 player or webm loaded locally) with the latest Nightly and
> e10s on/off.

Win64? win8.1?

> Could you test with a fresh profile?

I did already.
Flags: needinfo?(dqeswn)

Comment 3

4 years ago
Win 7 64-bits
Can you post your about:support text please?
Flags: needinfo?(dqeswn)
(Reporter)

Comment 5

4 years ago
Okay:

{
  "application": {
    "name": "Firefox",
    "version": "40.0a1",
    "buildID": "20150428030209",
    "userAgent": "Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:40.0) Gecko/20100101 Firefox/40.0",
    "updateChannel": "nightly",
    "supportURL": "https://support.mozilla.org/1/firefox/40.0a1/WINNT/hu/",
    "numTotalWindows": 1,
    "numRemoteWindows": 1,
    "remoteAutoStart": true
  },
  "modifiedPreferences": {
    "browser.cache.disk.smart_size.first_run": false,
    "browser.cache.disk.capacity": 276480,
    "browser.cache.disk.filesystem_reported": 1,
    "browser.cache.frecency_experiment": 3,
    "browser.download.importedFromSqlite": true,
    "browser.places.smartBookmarksVersion": 7,
    "browser.startup.homepage_override.mstone": "40.0a1",
    "browser.startup.homepage_override.buildID": "20150428030209",
    "dom.apps.reset-permissions": true,
    "dom.mozApps.used": true,
    "extensions.lastAppVersion": "40.0a1",
    "font.language.group": "x-western",
    "gfx.direct3d.last_used_feature_level_idx": 0,
    "media.gmp-gmpopenh264.lastUpdate": 1430302056,
    "media.gmp-gmpopenh264.version": "1.4",
    "media.gmp-manager.lastCheck": 1430302056,
    "media.gmp-manager.buildID": "20150428030209",
    "network.cookie.prefsMigrated": true,
    "places.history.expiration.transient_current_max_pages": 25648,
    "plugin.disable_full_page_plugin_for_types": "application/pdf",
    "privacy.sanitize.migrateFx3Prefs": true
  },
  "lockedPreferences": {},
  "graphics": {
    "numTotalWindows": 1,
    "numAcceleratedWindows": 1,
    "windowLayerManagerType": "Direct3D 11",
    "windowLayerManagerRemote": true,
    "adapterDescription": "NVIDIA GeForce GTS 450   ",
    "adapterVendorID": "0x10de",
    "adapterDeviceID": "0x1245",
    "adapterSubsysID": "00000000",
    "adapterRAM": "1024",
    "adapterDrivers": "nvd3dumx,nvwgf2umx,nvwgf2umx nvd3dum,nvwgf2um,nvwgf2um",
    "driverVersion": "9.18.13.4709",
    "driverDate": "12-13-2014",
    "adapterDescription2": "",
    "adapterVendorID2": "",
    "adapterDeviceID2": "",
    "adapterSubsysID2": "",
    "adapterRAM2": "",
    "adapterDrivers2": "",
    "driverVersion2": "",
    "driverDate2": "",
    "isGPU2Active": false,
    "direct2DEnabled": true,
    "directWriteEnabled": true,
    "directWriteVersion": "6.3.9600.17111",
    "webglRenderer": "Google Inc. -- ANGLE (NVIDIA GeForce GTS 450    Direct3D11 vs_5_0 ps_5_0)",
    "info": {
      "AzureCanvasBackend": "direct2d 1.1",
      "AzureSkiaAccelerated": 0,
      "AzureFallbackCanvasBackend": "cairo",
      "AzureContentBackend": "direct2d 1.1"
    }
  },
  "javaScript": {
    "incrementalGCEnabled": true
  },
  "accessibility": {
    "isActive": false,
    "forceDisabled": 0
  },
  "libraryVersions": {
    "NSPR": {
      "minVersion": "4.10.8",
      "version": "4.10.8"
    },
    "NSS": {
      "minVersion": "3.19 Basic ECC Beta",
      "version": "3.19 Basic ECC Beta"
    },
    "NSSUTIL": {
      "minVersion": "3.19 Beta",
      "version": "3.19 Beta"
    },
    "NSSSSL": {
      "minVersion": "3.19 Basic ECC Beta",
      "version": "3.19 Basic ECC Beta"
    },
    "NSSSMIME": {
      "minVersion": "3.19 Basic ECC Beta",
      "version": "3.19 Basic ECC Beta"
    }
  },
  "userJS": {
    "exists": false
  },
  "crashes": {
    "submitted": [
      {
        "id": "bp-2ee3e364-17f3-4c5d-a0a3-1fb032150427",
        "date": 1430140086432,
        "pending": false
      }
    ],
    "pending": 6
  },
  "extensions": [],
  "experiments": []
}
Flags: needinfo?(dqeswn)
Tracy, can you work with the reporter to determine what's going on here?
Flags: needinfo?(twalker)
avada: Can you attempt to track down the regressions range?  That is, find the last Nightly build that works for you.
Flags: needinfo?(twalker) → needinfo?(dqeswn)
(Reporter)

Comment 8

4 years ago
(In reply to [:tracy] Tracy Walker - QA Mentor from comment #7)
> avada: Can you attempt to track down the regressions range?  That is, find
> the last Nightly build that works for you.

Yes, though I really hate it.

Good:
2015-04-14-03-02-05-mozilla-central
https://hg.mozilla.org/mozilla-central/rev/7f343964210b

Bad:
2015-04-14-13-09-09-mozilla-central
https://hg.mozilla.org/mozilla-central/rev/2ee2da378d12
Flags: needinfo?(dqeswn)
Thank you for digging that out.

I am unable to reproduce the bug on say youtube.com.  Can you point me to a specific video this is failing for you.
Flags: needinfo?(dqeswn)
(Reporter)

Comment 10

4 years ago
All of them actually...

Anyway here's one I actually tried:
https://www.youtube.com/watch?v=hicBgE6XndM
(Reporter)

Comment 11

4 years ago
I've tried updating the gpu driver and now the videos start.
So this can only mean some sort of incompatibility was added with the older version. I've been using that version since last year.
Flags: needinfo?(dqeswn)
(In reply to avada from comment #11)
> I've tried updating the gpu driver and now the videos start.
> So this can only mean some sort of incompatibility was added with the older
> version. I've been using that version since last year.

That's quite possible.  Thank you for investigating.  

I am going to mark this invalid since it appears to have been due to an outdated driver.
Status: UNCONFIRMED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → INVALID
Matt - can we blacklist the offending driver?
Status: RESOLVED → UNCONFIRMED
Flags: needinfo?(matt.woodrow)
Resolution: INVALID → ---
(Reporter)

Comment 14

4 years ago
(In reply to [:tracy] Tracy Walker - QA Mentor from comment #12)
> That's quite possible.  Thank you for investigating.  
> 
> I am going to mark this invalid since it appears to have been due to an
> outdated driver.

(In reply to Anthony Jones (:kentuckyfriedtakahe, :k17e) from comment #13)
> Matt - can we blacklist the offending driver?

I used that driver from december until yesterday and it was working just fine. Clearly it didn't change but firefox did. So why is the assumption that the driver is the one doing something wrong? Or better yet why is there no desire to figure out what exactly caused this, to prevent further driver incompatibilities?
(Assignee)

Comment 15

4 years ago
That regression range includes bug 875247, which seems like a likely candidate.

Switching to a different API could easily hit different driver bugs.

If we're showing the throbber rather than just playing black video, then it sounds like the decoder actually failed, so we should be able to detect that and fall back to the old code.

Can you still reproduce this? I can have a go at fixing this, but I don't have any way to test it.

I'd also be interested to see your about:support when e10s is disabled, since it's not obvious why this would make a difference.
Flags: needinfo?(matt.woodrow)
(Assignee)

Comment 16

4 years ago
Created attachment 8602466 [details] [diff] [review]
Fallback to d3d9 DXVA if d3d11 init fails

Hopefully the failure occured during initialization, not during decoder, so this should fix the problem.
Assignee: nobody → matt.woodrow
Attachment #8602466 - Flags: review?(cpearce)
(Assignee)

Comment 17

4 years ago
Created attachment 8602468 [details] [diff] [review]
Remove LAYERS_D3D10

This is dead code
Attachment #8602468 - Flags: review?(bas)
Comment on attachment 8602466 [details] [diff] [review]
Fallback to d3d9 DXVA if d3d11 init fails

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

::: dom/media/fmp4/wmf/WMFVideoMFTManager.cpp
@@ +175,5 @@
>  
>  TemporaryRef<MFTDecoder>
>  WMFVideoMFTManager::Init()
>  {
> +  RefPtr<MFTDecoder> decoder = InitInternal(false);

InitInternal(/* aForceD3D9 */ false);
Attachment #8602466 - Flags: review?(cpearce) → review+
(Reporter)

Comment 19

4 years ago
(In reply to Matt Woodrow (:mattwoodrow) from comment #15)
> If we're showing the throbber rather than just playing black video, then it
> sounds like the decoder actually failed, so we should be able to detect that
> and fall back to the old code.

I'm quite sure there was no throbber at all.
 
> Can you still reproduce this? I can have a go at fixing this, but I don't
> have any way to test it.
> 
> I'd also be interested to see your about:support when e10s is disabled,
> since it's not obvious why this would make a difference.

I'm not sure if it's directed at me but I'd rather not go back to an older driver if I'm not forced to.
Attachment #8602468 - Flags: review?(bas) → review+

Updated

4 years ago
tracking-e10s: --- → +
https://hg.mozilla.org/mozilla-central/rev/c61b05d0af51
https://hg.mozilla.org/mozilla-central/rev/5ec60cbf124c
Status: UNCONFIRMED → RESOLVED
Last Resolved: 4 years ago4 years ago
status-firefox41: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla41
You need to log in before you can comment on or make changes to this bug.