Closed Bug 1769747 Opened 2 years ago Closed 7 months ago

Poor performance on 360 video which uses WebGL

Categories

(Core :: Graphics: CanvasWebGL, defect, P1)

Firefox 100
Unspecified
All
defect

Tracking

()

RESOLVED FIXED

People

(Reporter: aymedeyacoan, Assigned: jgilbert)

References

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:100.0) Gecko/20100101 Firefox/100.0

Steps to reproduce:

We're seeing poor performance on Vimeo while viewing very high quality 360 video.

It looks like Vimeo do 360 by decoding a large video, and using webgl to transform it to a 2D viewport.

I'm getting this error on my MacBook Pro 2020

STR:

  1. Load 360 video on Vimeo, i.e.: https://vimeo.com/channels/360vr/355120249
  2. Select 4K from the cog menu
  3. You can see the lower framerate of the video in comparison with chrome.

Actual results:

Video has low framerate in comparison to chrome

Expected results:

The video should have a good framerate

The Bugbug bot thinks this bug should belong to the 'Core::Canvas: WebGL' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Canvas: WebGL
Product: Firefox → Core
OS: Unspecified → macOS

The severity field is not set for this bug.
:jgilbert, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(jgilbert)

I will check.

Assignee: nobody → jgilbert
Flags: needinfo?(jgilbert)
Priority: -- → P1

The severity field is not set for this bug.
:jgilbert, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(jgilbert)

I can reproduce this in a fresh install of Firefox 103.0b3 on X11 (Arch Linux). Issue is reproducible with with both media.ffmpeg.vaapi.enabled set and unset. Anecdotally, I've noticed this being the case on my personal install for a few years.

I can't find any hardware bottleneck, either. Most used CPU core is sitting at 10% and 3d/codec usage is below 15%..

I'm not sure if YouTube's underlying 360 video playback mechanism is similar to Vimeo's, but this URL appears to offer an exacerbated case of the above issue when the quality is set to 4320s (8K). 1-2FPS on my machine, <30% CPU/GPU/highest-core usage, regardless of VAAPI usage.

https://www.youtube.com/watch?v=L_tqK4eqelA

With webgl.perf.max-warnings: -1: (on mac)

WebGL perf warning: WebGL warning: tex(Sub)Image[23]D: Missed GPU-copy fast-path: format is not RGBA
WebGL perf warning: WebGL warning: texImage: Conversion requires pixel reformatting. (26->15)

Flags: needinfo?(jgilbert)
Severity: -- → S3
Status: UNCONFIRMED → NEW
Ever confirmed: true

Windows:

WebGL perf warning: WebGL warning: tex(Sub)Image[23]D: Missed GPU-copy fast-path: format is not RGBA
WebGL perf warning: WebGL warning: texImage: Conversion requires pixel reformatting. (27->15)

Windows, but more helpful:

WebGL perf warning: WebGL warning: tex(Sub)Image[23]D: Missed GPU-copy fast-path: format is not RGBA
WebGL perf warning: WebGL warning: texImage: Conversion requires pixel reformatting. (BGRA8->RGB8)
WebGL perf warning: WebGL warning: <Present>: [webgl.perf.spew-frame-allocs] 1 data allocations this frame.

OS: macOS → All

I'm having second thoughts about opening up formats this widely. Maybe I should merely add RGB8 for now? That would be safer. I'm worried about requests for e.g. LUMINANCE or RG. I could add tests, but drivers gonna be drivers, and these other formats seem pretty unlikely to be needed.
I should also definitely check to see if I can simply render to RGB8, because that's what people expect.
It would be good to have telemetry on RGB8 renderability.

Pushed by jgilbert@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/0a2985a48339 Support non-RGBA video-to-texture fastpath. r=gfx-reviewers,nical
Regressions: 1793686
Depends on: 1696693

There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:jgilbert, could you have a look please?
If you still have some work to do, you can add an action "Plan Changes" in Phabricator.
For more information, please visit auto_nag documentation.

Flags: needinfo?(nical.bugzilla)
Flags: needinfo?(jgilbert)
Flags: needinfo?(nical.bugzilla)

I visite a website and the translation was just ok from the browser
PS. It was a home care services niche website
peaceinhomehealthcare.com

I visite a website and the translation was just ok from the browser
PS. It was a home care services niche website
www.peaceinhomehealthcare.com

See Also: → 1655101
Duplicate of this bug: 1839809

I believe this was fixed by bug 1655101.

Status: NEW → RESOLVED
Closed: 7 months ago
Flags: needinfo?(jgilbert)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: