Bug 2061927 Comment 9 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

I compared the following 2 videos.
* [1] playback from [link](https://drive.google.com/file/d/15ltrNx3w7SP8YUOOqdigURDYw2TCWFK5/view?usp=drive_link)
* [2] playback from down loaded file.

SurfaceFormat of [1] was gfx::SurfaceFormat::NV12
SurfaceFormat of [2] was gfx::SurfaceFormat::P010

But [2] was detected was non HDR by [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2243). Then [2] applies super resolution. It is decided in [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2326).

Original implementation did not apply super resolution to P010. But it was changed  by Bug 2008887.

From the symptom, some NVIDIA GPU could not apply super resolution to non-NV12 video frame.
I compared the following 2 videos.
* [1] playback from [link](https://drive.google.com/file/d/15ltrNx3w7SP8YUOOqdigURDYw2TCWFK5/view?usp=drive_link)
* [2] playback from down loaded file.

SurfaceFormat of [1] was gfx::SurfaceFormat::NV12
SurfaceFormat of [2] was gfx::SurfaceFormat::P010

But [2] video was handled as non-HDR by [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2243). Then [2] applies super resolution. It is decided in [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2326).

Original implementation did not apply super resolution to P010. But it was changed  by Bug 2008887.

From the symptom, some NVIDIA GPU could not apply super resolution to non-NV12 video frame.
I compared the following 2 videos.
* [1] playback from [link](https://drive.google.com/file/d/15ltrNx3w7SP8YUOOqdigURDYw2TCWFK5/view?usp=drive_link)
* [2] playback from down loaded file.

SurfaceFormat of [1] was gfx::SurfaceFormat::NV12
SurfaceFormat of [2] was gfx::SurfaceFormat::P010

But [2] video was handled as non-HDR by [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2243). Then [2] applies super resolution. It is decided in [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2326).

From the symptom, some NVIDIA GPU could not apply super resolution to non-NV12 video frame.

Original implementation did not apply super resolution to P010. But it was changed  by Bug 2008887.
I compared the following 2 videos.
* [1] playback from [link](https://drive.google.com/file/d/15ltrNx3w7SP8YUOOqdigURDYw2TCWFK5/view?usp=drive_link)
* [2] playback from down loaded file.

SurfaceFormat of [1] was gfx::SurfaceFormat::NV12
SurfaceFormat of [2] was gfx::SurfaceFormat::P010

But [2] video was handled as non-HDR by [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2243). Then [2] applies super resolution. It is decided in [DCSurfaceVideo::AttachExternalImage()](https://searchfox.org/firefox-main/rev/34ed69f161676c3ac7ca5f201fade6d081e5bcd2/gfx/webrender_bindings/DCLayerTree.cpp#2326).

From the symptom, some NVIDIA GPU could not apply super resolution to non-NV12 video frame.

Original implementation did not apply super resolution to P010. But it was changed  by  Bug 2030296.

Back to Bug 2061927 Comment 9