Closed Bug 556288 Opened 12 years ago Closed 12 years ago

Accelerated full-screen video broke all full-screen video on NVIDIA cards

Categories

(Core :: Audio/Video, defect)

x86
All
defect
Not set
normal

Tracking

()

VERIFIED FIXED
Tracking Status
blocking2.0 --- alpha4+

People

(Reporter: joe, Assigned: bas.schouten)

References

()

Details

(Keywords: regression)

Attachments

(1 file)

Right now, on NVIDIA cards we display black only when we view video full-screen. This is a direct regression from turning on accelerated full-screen video, and Bas is looking into it.
OS: Mac OS X → All
Keywords: regression
We need to set the NEAREST filter on the texture to support binding them to framebuffers.
Attachment #436288 - Flags: review?(joe)
Attachment #436288 - Flags: review?(joe) → review+
Comment on attachment 436288 [details] [diff] [review]
Set correct filters for framebuffer texture

>diff --git a/gfx/layers/opengl/ContainerLayerOGL.cpp b/gfx/layers/opengl/ContainerLayerOGL.cpp
>--- a/gfx/layers/opengl/ContainerLayerOGL.cpp
>+++ b/gfx/layers/opengl/ContainerLayerOGL.cpp
>@@ -139,30 +139,36 @@ ContainerLayerOGL::RenderLayer(int aPrev
>                         0,
>                         LOCAL_GL_RGBA,
>                         mVisibleRect.width,
>                         mVisibleRect.height,
>                         0,
>                         LOCAL_GL_BGRA,
>                         LOCAL_GL_UNSIGNED_BYTE,
>                         NULL);
>+  sglWrapper.TexParameteri(LOCAL_GL_TEXTURE_2D, LOCAL_GL_TEXTURE_MIN_FILTER, LOCAL_GL_NEAREST);
>+  sglWrapper.TexParameteri(LOCAL_GL_TEXTURE_2D, LOCAL_GL_TEXTURE_MAG_FILTER, LOCAL_GL_NEAREST);

If the NVIDIA drivers require GL_NEAREST before we bind the texture to the framebuffer, could you add a comment saying that? Alternately, could you just set this to GL_LINEAR and drop the TexParameter change below?

>diff --git a/gfx/layers/opengl/glWrapper.cpp b/gfx/layers/opengl/glWrapper.cpp
>--- a/gfx/layers/opengl/glWrapper.cpp
>+++ b/gfx/layers/opengl/glWrapper.cpp
>@@ -33,16 +33,17 @@
>  * the provisions above, a recipient may use your version of this file under
>  * the terms of any one of the MPL, the GPL or the LGPL.
>  *
>  * ***** END LICENSE BLOCK ***** */
> 
> #include "glWrapper.h"
> #include "nsDebug.h"
> 
>+
> #ifdef XP_WIN

Can you drop that whitespace change?

r+, let's get this fixed. :)
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Verified fixed Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.3a4pre) Gecko/20100401 Minefield/3.7a4pre
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.