Poor performance of playing of fullscreen videos

UNCONFIRMED
Unassigned

Status

()

Core
Graphics
P2
normal
UNCONFIRMED
10 months ago
4 months ago

People

(Reporter: Michal K, Unassigned)

Tracking

(Depends on: 1 bug)

56 Branch
x86_64
Mac OS X
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox56 wontfix, firefox57 wontfix, firefox58 wontfix, firefox59 ?)

Details

(Whiteboard: [gfx-noted], URL)

Attachments

(2 attachments)

(Reporter)

Description

10 months ago
Browser's version: 

Nightly 56.0a1 (2017-07-21) (64-bit)

Description: 

Playing of

* fullscreen videos (trailers) on https://www.csfd.cz/
* fullscreen advertisements on https://www.youtube.com/ 

is very poor - low FPS performance, tearing videos. Audio is ok. Also playing becomes ok if I exit fullscreen and play it on page only.

Steps to Reproduce on https://www.csfd.cz/: 

0. I have iMac (Retina 5K, 27-inch, Late 2015) hardware, maybe it is prerequisite.

1. Visit https://www.csfd.cz/
2. Click on "play" of some trailer (video)
3. Go to "fullscreen" during playing of trailer/video

Steps to Reproduce on https://www.youtube.com/: 

0. I have iMac (Retina 5K, 27-inch, Late 2015) hardware, maybe it is prerequisite.

1. Visit https://www.youtube.com/
2. Click on "play" of some video and go to "fullscreen"
3. Wait until some advertisement shows up, then the performance is poor. During of playing normal video the performance is ok.

Actual Results:

Playing of fullscreen video is very poor / low FPS. Video is tearing because of low FPS. Audio is ok. After exitting of fullscreen, FPS of video returns to normal state, probably 60 fps.

Expected Results:

At least 30 FPS of playing of fullscreen videos and no tearing of videos during fullscreen playing.

I made performance profiles of the issue: 

* https://www.csfd.cz/  >>  https://perfht.ml/2vJAdAB
* https://www.youtube.com/ >>  https://perfht.ml/2vta7m4

I would estimate, that the problem is related to high amount of pixels of retina display. 

If you would like to receive more information, please let me know. Thank you in advance.

Updated

10 months ago
Component: General → Untriaged

Updated

10 months ago
Component: Untriaged → Audio/Video: Playback
Product: Firefox → Core
Can you please provide the graphics section of about:support?
(Reporter)

Comment 2

9 months ago
(In reply to Anthony Jones (:kentuckyfriedtakahe, :k17e) from comment #1)
> Can you please provide the graphics section of about:support?

Yes. Here is it: 

Graphics 


Features 


Compositing
OpenGL 

Asynchronous Pan/Zoom
wheel input enabled; scrollbar drag enabled 

WebGL 1 Driver WSI Info
CGL 

WebGL 1 Driver Renderer
ATI Technologies Inc. -- AMD Radeon R9 M395 OpenGL Engine 

WebGL 1 Driver Version
4.1 ATI-1.51.8 

WebGL 1 Driver Extensions
GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier 

WebGL 1 Extensions
ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_frag_depth EXT_sRGB EXT_shader_texture_lod EXT_texture_filter_anisotropic EXT_disjoint_timer_query MOZ_debug OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc MOZ_WEBGL_depth_texture 

WebGL 2 Driver WSI Info
CGL 

WebGL 2 Driver Renderer
ATI Technologies Inc. -- AMD Radeon R9 M395 OpenGL Engine 

WebGL 2 Driver Version
4.1 ATI-1.51.8 

WebGL 2 Driver Extensions
GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier 

WebGL 2 Extensions
EXT_color_buffer_float EXT_texture_filter_anisotropic EXT_disjoint_timer_query MOZ_debug OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc 




GPU #1 


Active
Yes 

Vendor ID
0x1002 

Device ID
0x6920 


GPU #2 



Diagnostics 


AzureCanvasAccelerated
1 

AzureCanvasBackend
skia 

AzureContentBackend
skia 

AzureFallbackCanvasBackend
none 

TileHeight
1024 

TileWidth
1024 


Decision Log 


WEBRENDER
opt-in by default: WebRender is an opt-in feature 
 


Crash Guard Disabled Features 



Workarounds 



Failure Log
Priority: -- → P1
Mass change P1->P2 to align with new Mozilla triage process
Priority: P1 → P2
Could not reproduce the issue on both Firefox release 56.0 and Nightly 58.0a1 on OSX 10.11.4.
Do you still get this issue now?
Thanks!
Flags: needinfo?(mkem)
(Reporter)

Comment 5

8 months ago
(In reply to Alastor Wu [:alwu][please needinfo me][GMT+8] from comment #4)
> Could not reproduce the issue on both Firefox release 56.0 and Nightly
> 58.0a1 on OSX 10.11.4.
> Do you still get this issue now?
> Thanks!

I made some testing and there is result for Firefox 56.0 release: NO ISSUE:

Stručně o aplikaci
------------------

Název: Firefox
Verze: 56.0
Id buildu: 20170926190823
Kanál aktualizací: release
Identifikace prohlížeče: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:56.0) Gecko/20100101 Firefox/56.0
OS: Darwin 16.7.0
Multiprocesová okna: 0/1 (Zakázáno)
Procesy pro webový obsah:
Stylo: false (zakázáno ve výchozím nastavení)
Klíč Google: Nalezeno
Klíč Mozilla Location Service: Nalezeno
Nouzový režim: false

Hlášení o pádech za poslední 3 dny
----------------------------------

Všechna hlášení o pádech

Funkce aplikace Firefox
-----------------------

Rozšíření
---------

Grafika
-------

Vlastnosti
GPU #1
GPU #2
Diagnostika
Protokol rozhodování
Zakázat funkce Crash Guard
Možná řešení
Protokol chyb

Média
-----

Výstupní zařízení
Název: Skupina
Vstupní zařízení
Název: Skupina

Důležité změněné předvolby
--------------------------

Důležité uzamčené předvolby
---------------------------

Databáze Places
---------------

JavaScript
----------

Inkrementální GC:

Přístupnost
-----------

Aktivována:
Zakázána:

Verze knihoven
--------------

Experimentální funkce
---------------------

Sandbox
-------
(Reporter)

Comment 6

8 months ago
There is result for 57.0b4 beta channel: ISSUE PERSIST, STILL REPRODUCIBLE:

Stručně o aplikaci
------------------

Název: Firefox
Verze: 57.0b4
Id buildu: 20170928180207
Kanál aktualizací: beta
Identifikace prohlížeče: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:57.0) Gecko/20100101 Firefox/57.0
OS: Darwin 16.7.0
Multiprocesová okna: 1/1 (Povoleno ve výchozím nastavení)
Procesy pro webový obsah: 1/4
Stylo: true (povoleno ve výchozím nastavení)
Klíč Google: Nalezeno
Klíč Mozilla Location Service: Nalezeno
Nouzový režim: false

Hlášení o pádech za poslední 3 dny
----------------------------------

Všechna hlášení o pádech

Funkce aplikace Firefox
-----------------------

Název: Activity Stream
Verze: 2017.09.22.1389-2ee94db4
ID: activity-stream@mozilla.org

Název: Application Update Service Helper
Verze: 2.0
ID: aushelper@mozilla.org

Název: Firefox Screenshots
Verze: 19.1.0
ID: screenshots@mozilla.org

Název: Follow-on Search Telemetry
Verze: 0.9.3
ID: followonsearch@mozilla.com

Název: Form Autofill
Verze: 1.0
ID: formautofill@mozilla.org

Název: Multi-process staged rollout
Verze: 3.00
ID: e10srollout@mozilla.org

Název: Photon onboarding
Verze: 0.1
ID: onboarding@mozilla.org

Název: Pocket
Verze: 1.0.5
ID: firefox@getpocket.com

Název: Shield Recipe Client
Verze: 73
ID: shield-recipe-client@mozilla.org

Název: Web Compat
Verze: 1.1
ID: webcompat@mozilla.org

Rozšíření
---------

Grafika
-------

Vlastnosti
Skládání: OpenGL
Asynchronní lupa/panning: vstup kolečka povolen; táhnutí posuvníkem povoleno; klávesnice povolena; automatické posunování povoleno
Informace o ovladači WebGL 1 WSI: CGL
Ovladač pro zobrazování WebGL 1: ATI Technologies Inc. -- AMD Radeon R9 M395 OpenGL Engine
Verze ovladače WebGL 1: 4.1 ATI-1.51.8
Rozšíření ovladače WebGL 1: GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier
Rozšíření WebGL 1: ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_frag_depth EXT_sRGB EXT_shader_texture_lod EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc MOZ_WEBGL_depth_texture
Informace o ovladači WebGL 2 WSI: CGL
Zobrazování WebGL2: ATI Technologies Inc. -- AMD Radeon R9 M395 OpenGL Engine
Verze ovladače WebGL 2: 4.1 ATI-1.51.8
Rozšíření ovladače WebGL 2: GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier
Rozšíření WebGL 2: EXT_color_buffer_float EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc
GPU #1
Aktivní: Ano
ID prodejce: 0x1002
ID zařízení: 0x6920

Diagnostika
AzureCanvasAccelerated: 1
AzureCanvasBackend: skia
AzureContentBackend: skia
AzureFallbackCanvasBackend: none
TileHeight: 1024
TileWidth: 1024
Protokol rozhodování
WEBRENDER:
opt-in by default: WebRender is an opt-in feature
unavailable by runtime: Build doesn't include WebRender




Média
-----

Audio Backend: audiounit
Maximální počet kanálů: 2
Preferované rozložení kanálů: stereo
Preferovaná vzorkovací frekvence: 44100
Výstupní zařízení
Název: Skupina
Logitech USB Headset H540: AppleUSBAudioEngine:Logitech Inc :Logitech USB Headset H540:00000000:2
Sluchátka: AppleHDAEngineOutput:1F,3,0,1,2:0
Vstupní zařízení
Název: Skupina
Logitech USB Headset H540: AppleUSBAudioEngine:Logitech Inc :Logitech USB Headset H540:00000000:1
Interní mikrofon: AppleHDAEngineInput:1F,3,0,1,0:1

Důležité změněné předvolby
--------------------------

browser.cache.disk.capacity: 358400
browser.cache.disk.filesystem_reported: 1
browser.cache.disk.smart_size.first_run: false
browser.cache.frecency_experiment: 4
browser.places.smartBookmarksVersion: 8
browser.startup.homepage_override.buildID: 20170928180207
browser.startup.homepage_override.mstone: 57.0
browser.tabs.remote.autostart.2: true
browser.urlbar.lastSuggestionsPromptDate: 20171002
browser.urlbar.timesBeforeHidingSuggestionsHint: 2
dom.ipc.processCount.web: 4
extensions.lastAppVersion: 57.0
media.gmp-gmpopenh264.abi: x86_64-gcc3
media.gmp-gmpopenh264.lastUpdate: 1506963789
media.gmp-gmpopenh264.version: 1.6
media.gmp-manager.buildID: 20170928180207
media.gmp-manager.lastCheck: 1506963788
media.gmp-widevinecdm.abi: x86_64-gcc3
media.gmp-widevinecdm.lastUpdate: 1506963790
media.gmp-widevinecdm.version: 1.4.8.1008
media.gmp.storage.version.observed: 1
network.cookie.prefsMigrated: true
network.predictor.cleaned-up: true
places.history.expiration.transient_current_max_pages: 104858
plugin.disable_full_page_plugin_for_types: application/pdf
security.sandbox.content.tempDirSuffix: {12033db0-9e83-b042-a5bd-149e2813462e}

Důležité uzamčené předvolby
---------------------------

Databáze Places
---------------

JavaScript
----------

Inkrementální GC: true

Přístupnost
-----------

Aktivována: false
Zakázána: 0

Verze knihoven
--------------

NSPR
Očekávaná minimální verze: 4.17
Používaná verze: 4.17

NSS
Očekávaná minimální verze: 3.33
Používaná verze: 3.33

NSSSMIME
Očekávaná minimální verze: 3.33
Používaná verze: 3.33

NSSSSL
Očekávaná minimální verze: 3.33
Používaná verze: 3.33

NSSUTIL
Očekávaná minimální verze: 3.33
Používaná verze: 3.33

Experimentální funkce
---------------------

Sandbox
-------

Úroveň sandboxu procesů pro obsah: 3
Účinná úroveň sandboxu procesů pro obsah: 3
(Reporter)

Comment 7

8 months ago
There is result for 58.0a1 nightly channel: ISSUE PERSIST, STILL REPRODUCIBLE:

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

Name: Firefox
Version: 58.0a1
Build ID: 20170929100122
Update Channel: nightly
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:58.0) Gecko/20100101 Firefox/58.0
OS: Darwin 16.7.0
Multiprocess Windows: 1/1 (Enabled by default)
Web Content Processes: 2/4
Stylo: false (disabled by default)
Google Key: Found
Mozilla Location Service Key: Found
Safe Mode: false

Crash Reports for the Last 3 Days
---------------------------------

All Crash Reports

Nightly Features
----------------

Name: Activity Stream
Version: 2017.09.28.0954-66ebf91c
ID: activity-stream@mozilla.org

Name: Application Update Service Helper
Version: 2.0
ID: aushelper@mozilla.org

Name: Firefox Screenshots
Version: 19.1.0
ID: screenshots@mozilla.org

Name: FlyWeb
Version: 1.0.0
ID: flyweb@mozilla.org

Name: Follow-on Search Telemetry
Version: 0.9.3
ID: followonsearch@mozilla.com

Name: Form Autofill
Version: 1.0
ID: formautofill@mozilla.org

Name: Multi-process staged rollout
Version: 3.00
ID: e10srollout@mozilla.org

Name: Photon onboarding
Version: 0.1
ID: onboarding@mozilla.org

Name: Pocket
Version: 1.0.5
ID: firefox@getpocket.com

Name: Presentation
Version: 1.0.0
ID: presentation@mozilla.org

Name: Shield Recipe Client
Version: 76
ID: shield-recipe-client@mozilla.org

Name: Web Compat
Version: 1.1
ID: webcompat@mozilla.org

Name: WebCompat Reporter
Version: 1.0.0
ID: webcompat-reporter@mozilla.org

Extensions
----------

Graphics
--------

Features
Compositing: OpenGL
Asynchronous Pan/Zoom: wheel input enabled; scrollbar drag enabled; keyboard enabled; autoscroll enabled
WebGL 1 Driver WSI Info: CGL
WebGL 1 Driver Renderer: ATI Technologies Inc. -- AMD Radeon R9 M395 OpenGL Engine
WebGL 1 Driver Version: 4.1 ATI-1.51.8
WebGL 1 Driver Extensions: GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier
WebGL 1 Extensions: ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_frag_depth EXT_sRGB EXT_shader_texture_lod EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context
WebGL 2 Driver WSI Info: CGL
WebGL 2 Driver Renderer: ATI Technologies Inc. -- AMD Radeon R9 M395 OpenGL Engine
WebGL 2 Driver Version: 4.1 ATI-1.51.8
WebGL 2 Driver Extensions: GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier
WebGL 2 Extensions: EXT_color_buffer_float EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context
GPU #1
Active: Yes
Vendor ID: 0x1002
Device ID: 0x6920

Diagnostics
AzureCanvasAccelerated: 1
AzureCanvasBackend: skia
AzureContentBackend: skia
AzureFallbackCanvasBackend: none
TileHeight: 1024
TileWidth: 1024
Decision Log
WEBRENDER:
opt-in by default: WebRender is an opt-in feature




Media
-----

Audio Backend: audiounit
Max Channels: 2
Preferred Channel Layout: stereo
Preferred Sample Rate: 44100
Output Devices
Name: Group
Logitech USB Headset H540: AppleUSBAudioEngine:Logitech Inc :Logitech USB Headset H540:00000000:2
Headphones: AppleHDAEngineOutput:1F,3,0,1,2:0
Input Devices
Name: Group
Logitech USB Headset H540: AppleUSBAudioEngine:Logitech Inc :Logitech USB Headset H540:00000000:1
Internal Microphone: AppleHDAEngineInput:1F,3,0,1,0:1

Important Modified Preferences
------------------------------

browser.cache.disk.capacity: 358400
browser.cache.disk.filesystem_reported: 1
browser.cache.disk.smart_size.first_run: false
browser.cache.frecency_experiment: 2
browser.places.smartBookmarksVersion: 8
browser.startup.homepage_override.buildID: 20170929100122
browser.startup.homepage_override.mstone: 58.0a1
browser.urlbar.lastSuggestionsPromptDate: 20171002
browser.urlbar.timesBeforeHidingSuggestionsHint: 2
dom.forms.autocomplete.formautofill: true
extensions.lastAppVersion: 58.0a1
media.gmp-gmpopenh264.abi: x86_64-gcc3
media.gmp-gmpopenh264.lastUpdate: 1506963928
media.gmp-gmpopenh264.version: 1.6
media.gmp-manager.buildID: 20170929100122
media.gmp-manager.lastCheck: 1506963928
media.gmp-widevinecdm.abi: x86_64-gcc3
media.gmp-widevinecdm.lastUpdate: 1506963929
media.gmp-widevinecdm.version: 1.4.8.1008
media.gmp.storage.version.observed: 1
network.cookie.prefsMigrated: true
network.predictor.cleaned-up: true
places.history.expiration.transient_current_max_pages: 104858
plugin.disable_full_page_plugin_for_types: application/pdf
security.sandbox.content.tempDirSuffix: {302ef223-65bf-814d-b07a-ef5f4cbfd823}
services.sync.engine.addresses.available: true

Important Locked Preferences
----------------------------

Places Database
---------------

JavaScript
----------

Incremental GC: true

Accessibility
-------------

Activated: false
Prevent Accessibility: 0

Library Versions
----------------

NSPR
Expected minimum version: 4.17
Version in use: 4.17

NSS
Expected minimum version: 3.33
Version in use: 3.33

NSSSMIME
Expected minimum version: 3.33
Version in use: 3.33

NSSSSL
Expected minimum version: 3.33
Version in use: 3.33

NSSUTIL
Expected minimum version: 3.33
Version in use: 3.33

Experimental Features
---------------------

Sandbox
-------

Content Process Sandbox Level: 3
Effective Content Process Sandbox Level: 3
(Reporter)

Comment 8

8 months ago
All tested on clean profile. 27" iMac 5K, fulscreen, www.csfd.cz
Flags: needinfo?(mkem)
(Reporter)

Comment 9

8 months ago
I'm sorry for additional spaming, but I have probably important discovery. If I disable e10s, the issue is gone. If I re-enable e10s again, the issue is back. It is somehow related to enabled e10s.
Hi, Michal,

First, thanks your detail reply!

Could you help me to provide the log from "about:networking" [1] with the log module "MediaDecoder:5,MediaFormatReader:5"?
In addition, what's your screen resolution? Could the issue be reproduced when you decrease your screen resolution?
Thank for your help!

[1] https://developer.mozilla.org/en-US/docs/Mozilla/Debugging/HTTP_logging
Flags: needinfo?(mkem)
See Also: → bug 1396960
Media playback pipeline won't change its behavior when in fullscreen.

According to the profiles in comment 0, it seems compositor spent a significant portion of running time uploading textures. Could this be the cause of poor performance?
(Reporter)

Comment 12

8 months ago
(In reply to Alastor Wu [:alwu][please needinfo me][GMT+8] from comment #10)
> Hi, Michal,
> 
> First, thanks your detail reply!
> 
> Could you help me to provide the log from "about:networking" [1] with the
> log module "MediaDecoder:5,MediaFormatReader:5"?
> In addition, what's your screen resolution? Could the issue be reproduced
> when you decrease your screen resolution?
> Thank for your help!
> 
> [1] https://developer.mozilla.org/en-US/docs/Mozilla/Debugging/HTTP_logging

I tried to make logging based on posted manual, but result file is always empty. Either logging doesn`t work or there is another problem. 

My screen resolution is 5K (27-inch (5120 x 2880)). If I exit fullscreen, the problem is gone and video works well.
Flags: needinfo?(mkem)
(Reporter)

Comment 13

8 months ago
(In reply to John Lin [:jolin][:jhlin] from comment #11)
> Media playback pipeline won't change its behavior when in fullscreen.
> 
> According to the profiles in comment 0, it seems compositor spent a
> significant portion of running time uploading textures. Could this be the
> cause of poor performance?

I have the same feeling as you, that it is somehow connected with huge amount of pixels of fullscreen in comparison of normal window of video.
There are a lot of painting times at content side in full screen mode with https://www.csfd.cz/ .
It draws the subtitle and progress-bar for every frame.

Here is my test code to dump the content into png file.
https://github.com/JerryShih/gecko-dev/tree/5k-video-jank-bug-1383292
Per comment11, change component to graphic.
Component: Audio/Video: Playback → Graphics
With e10s we have an extra copy.  5k screen, lots of pixels to copy.  Need bug 1265824 fixed and this probably goes away.
status-firefox56: --- → wontfix
status-firefox57: --- → wontfix
status-firefox58: --- → fix-optional
Depends on: 1265824
Whiteboard: [gfx-noted]
Duplicate of this bug: 1396960
See Also: → bug 1409051
See Also: → bug 1381829
Hi Michal,

Before the bug 1265824 fixed, could you please turn off the preference "layers.single-tile.enabled" in about:config and try again?

The video progress bar in https://www.csfd.cz/ doesn't go through the optimal render path.
Flags: needinfo?(mkem)
(Reporter)

Comment 21

4 months ago
(In reply to Jerry Shih[:jerry] (UTC+8) from comment #20)
> Hi Michal,
> 
> Before the bug 1265824 fixed, could you please turn off the preference
> "layers.single-tile.enabled" in about:config and try again?
> 
> The video progress bar in https://www.csfd.cz/ doesn't go through the
> optimal render path.

Hello Jerry,

YES. It helped. If I set the preference "layers.single-tile.enabled" to "false" in about:config, videos on https://www.csfd.cz/ play like a charm, avg. 58 FPS, no tearing, maximal smoothness.

Thank you for the solution.
Flags: needinfo?(mkem)
Hi Michal,

I think you can turn on the "layers.single-tile.enabled" again in nightly build.
Bug 1431028 has in nightly.
Thanks.
Flags: needinfo?(mkem)
(Reporter)

Comment 24

4 months ago
(In reply to Jerry Shih[:jerry] (UTC+8) (inactive) from comment #23)
> Hi Michal,
> 
> I think you can turn on the "layers.single-tile.enabled" again in nightly
> build.
> Bug 1431028 has in nightly.
> Thanks.

Hello Jerry,

I did it. I reset "layers.single-tile.enabled" to default value, which is "true" and playing of videos on https://www.csfd.cz/ is much better. Avg. FPS is between 55 - 57 FPS. There are only sometime small stutterings, but generally the problem is resolved.

Thank you very much for your efforts.
Flags: needinfo?(mkem)
Wow~
We could close this bug now.
Flags: needinfo?(mkem)
(Reporter)

Comment 26

4 months ago
(In reply to Jerry Shih[:jerry] (UTC+8) (inactive) from comment #25)
> Wow~
> We could close this bug now.

Hello, yes I think so. Should BUG 1265824 solve intermittent micro-stutterings?

Anyway many thanks for the solution.
Flags: needinfo?(mkem) → needinfo?(bignose1007+bugzilla)
Yes, the bug 1265824 should also improve the texture uploading performance. But I will not do the remaining work for bug 1265824 in the short term.
Flags: needinfo?(bignose1007+bugzilla)
(Reporter)

Comment 28

4 months ago
(In reply to Jerry Shih[:jerry] (UTC+8) (inactive) from comment #27)
> Yes, the bug 1265824 should also improve the texture uploading performance.
> But I will not do the remaining work for bug 1265824 in the short term.

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