Chrome HTML5 videos in fullscreen are black when Intel graphics are enabled OR hardware acceleration is enabled

  • Chrome: 51.0.2704.106 m (64-bit)
  • QUADRO M1000M NVIDIA supplied drivers, delivered via device manager force update (update did not affect the issue): 10.18.13.5474
  • Intel HD Graphics 530: 10.18.15.4285
  • Dual monitor, external connected via HDMI cable to DVI input.

When playing HTML5 videos on Chrome, fullscreen videos display fine in the built-in monitor, but if set to display on the external monitor it is just black (with sound).

This does not happen on MS Edge or Internet Explorer (both also current versions).

Workarounds (i.e., fullscreen video in external monitor works when I):

  1. Disable the built in graphics in the BIOS

  2. Disable "use hardware acceleration when available" in Chrome settings

I would like have built in graphics enabled (to conserve battery) AND I would like to use hardware acceleration in Chrome (to get better performance when needed).

Are there specific settings for Chrome in the NVIDIA Control Panel I need to play with? I tried setting Chrome to use the external GPU, but it doesn't solve the problem, so I left it at default (Chrome by default uses the internal GPU, according to NVIDIA's control panel).

Are specific settings in the Chrome flags I should play with?

What else could I try to enable fullscreen video in the external monitor while respecting 1 and 2 above?

PS: I don't play games, so I would actually rather disable the NVIDIA GPU entirely, but if I do that the external monitor doesn't work at all (I assume it is because the HDMI output is connected directly to the discrete graphics adapter)


Solution 1:

There's a chrome bug for this here: http://crbug.com/622167


Try upgrading to Chrome 52, via the beta channel (or wait for a few weeks for it to be released to stable).

I had what sounds like the same problem on Version 51.0.2704.106 m (64-bit), and after I upgraded to Version 52.0.2743.60 beta-m (64-bit) today it was fixed.

After restarting chrome it seems like my changes only fixed the issue temporarily, as a side-effect of starting chrome when the internal laptop screen was my main display.

I did a few experiments, and found the following:

  • It's not related to HTML5 video, it happens any time you enter full screen mode (by pressing F11 on any page).
  • It only happens when the external monitor is marked as the "main display" in Windows's display settings. Making the laptop's screen the main display and "extending" onto the external monitor made full-screen on the external monitor work.

Solution 2:

Quick fix: Startup chrome with this flag: --disable-direct-composition

Pop into the shortcut for running chrome and append that flag to the target like the image below:

Chrome Startup flag

Source [email protected](bugs.chromium.org/u/4122139466/) https://bugs.chromium.org/p/chromium/issues/detail?id=622167#c29