Closed Bug 1831820 Opened 1 year ago Closed 1 year ago

Video cannot be rotated 180 degrees

Categories

(Core :: Graphics: WebRender, defect)

Firefox 112
Unspecified
Windows
defect

Tracking

()

RESOLVED FIXED
115 Branch
Tracking Status
firefox-esr102 --- unaffected
firefox113 --- wontfix
firefox114 --- fixed
firefox115 --- fixed

People

(Reporter: fixmebug, Assigned: sotaro)

References

(Regression)

Details

(Keywords: regression)

Attachments

(4 files)

Attached file test.html

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/112.0

Steps to reproduce:

Applied the stylesheet "transform: rotate(180deg)" to the video.

Actual results:

When I apply the stylesheet "transform:rotate(180deg)" to the video, the video is not displayed.

Expected results:

The video should be displayed. It displays correctly in Google Chrome.

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

Component: Untriaged → Graphics: WebRender
Product: Firefox → Core

Regression :
Bug 1753373 - Upload software decoded video to NV12 for video overlay on Windows r=alwu,gfx-reviewers,bradwerth

If you set media.wmf.use-nv12-format = False OR
gfx.webrender.dcomp-video-sw-overlay-win = False,
then the bug gets fixed.

Keywords: regression
Regressed by: 1753373
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(sotaro.ikeda.g)
Attached file about:support
OS: Unspecified → Windows
Regressed by: 1816026
Assignee: nobody → sotaro.ikeda.g
Flags: needinfo?(sotaro.ikeda.g)

It seemed that video overlay has the problem even before Bug 1816026.

Current native compositor does not support Rotate 90 deg nor Rotate 270 deg. It supports only Rotate 0 deg and Rotate 180 deg.
Rotate 90 deg and Rotate 270 deg were rejected at transform.is_2d_scale_translation() check in can_promote_to_surface().

With the patch, video of transform:rotate(180deg) was shown in a different place without rotation. It seemed that DCompVisual seemed not handle negative scaling.

With Rotate 180 deg, aTransform of DCLayerTree::AddSurface() has negative scaling. The negative scaling seemed not work with video overlay(video SwapChain's visual).

Blocks: 1826685
Pushed by sikeda.birchill@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d014625bd4b6
Do not use external compositor surface with negative scaling when compositor does not support the negative scaling r=gfx-reviewers,lsalzman
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 115 Branch

The patch landed in nightly and beta is affected.
:sotaro, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox114 to wontfix.

For more information, please visit BugBot documentation.

Flags: needinfo?(sotaro.ikeda.g)
Flags: needinfo?(sotaro.ikeda.g)
Regressed by: 1760724

Comment on attachment 9333009 [details]
Bug 1831820 - Do not use external compositor surface with negative scaling when compositor does not support the negative scaling

Beta/Release Uplift Approval Request

  • User impact if declined: Video cannot be rotated 180 degrees when video overlay is used.
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: none
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): The change just disables video overlay when an external compositor surface needs to have negative scaling.
  • String changes made/needed: none
  • Is Android affected?: No
Attachment #9333009 - Flags: approval-mozilla-beta?

Comment on attachment 9333009 [details]
Bug 1831820 - Do not use external compositor surface with negative scaling when compositor does not support the negative scaling

Approved for 114 beta 5, thanks.

Attachment #9333009 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: