Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2438)

Unified Diff: cc/output/renderer_pixeltest.cc

Issue 2088273003: Video Color Managament (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: bugfix Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/output/renderer_pixeltest.cc
diff --git a/cc/output/renderer_pixeltest.cc b/cc/output/renderer_pixeltest.cc
index 2943fab9b6a7299473f84037e7fbeac04e934908..3137321651ff0fea1ef90318d4fd2ba3b8bf1926 100644
--- a/cc/output/renderer_pixeltest.cc
+++ b/cc/output/renderer_pixeltest.cc
@@ -16,6 +16,7 @@
#include "cc/test/fake_recording_source.h"
#include "cc/test/pixel_test.h"
#include "gpu/command_buffer/client/gles2_interface.h"
+#include "media/base/video_color_space.h"
#include "media/base/video_frame.h"
#include "third_party/skia/include/core/SkColorPriv.h"
#include "third_party/skia/include/core/SkImageFilter.h"
@@ -206,6 +207,8 @@ void CreateTestYUVVideoDrawQuad_FromVideoFrame(
color_space = YUVVideoDrawQuad::JPEG;
}
+ media::VideoColorSpace video_color_space(video_frame.get());
+
const gfx::Rect opaque_rect(0, 0, 0, 0);
if (with_alpha) {
@@ -271,7 +274,7 @@ void CreateTestYUVVideoDrawQuad_FromVideoFrame(
yuv_quad->SetNew(shared_state, rect, opaque_rect, visible_rect,
ya_tex_coord_rect, uv_tex_coord_rect, ya_tex_size,
uv_tex_size, y_resource, u_resource, v_resource, a_resource,
- color_space, 0.0f, 1.0f);
+ color_space, video_color_space, 0.0f, 1.0f);
}
// Upshift video frame to 10 bit.
@@ -474,16 +477,18 @@ void CreateTestYUVVideoDrawQuad_Solid(
video_resource_updater, rect, visible_rect, resource_provider);
}
-void CreateTestYUVVideoDrawQuad_NV12(const SharedQuadState* shared_state,
- media::ColorSpace video_frame_color_space,
- const gfx::RectF& tex_coord_rect,
- uint8_t y,
- uint8_t u,
- uint8_t v,
- RenderPass* render_pass,
- const gfx::Rect& rect,
- const gfx::Rect& visible_rect,
- ResourceProvider* resource_provider) {
+void CreateTestYUVVideoDrawQuad_NV12(
+ const SharedQuadState* shared_state,
+ media::ColorSpace video_frame_color_space,
+ const media::VideoColorSpace& video_color_space,
+ const gfx::RectF& tex_coord_rect,
+ uint8_t y,
+ uint8_t u,
+ uint8_t v,
+ RenderPass* render_pass,
+ const gfx::Rect& rect,
+ const gfx::Rect& visible_rect,
+ ResourceProvider* resource_provider) {
YUVVideoDrawQuad::ColorSpace color_space = YUVVideoDrawQuad::REC_601;
if (video_frame_color_space == media::COLOR_SPACE_JPEG) {
color_space = YUVVideoDrawQuad::JPEG;
@@ -525,7 +530,7 @@ void CreateTestYUVVideoDrawQuad_NV12(const SharedQuadState* shared_state,
yuv_quad->SetNew(shared_state, rect, opaque_rect, visible_rect,
ya_tex_coord_rect, uv_tex_coord_rect, ya_tex_size,
uv_tex_size, y_resource, u_resource, v_resource, a_resource,
- color_space, 0.0f, 1.0f);
+ color_space, video_color_space, 0.0f, 1.0f);
}
typedef ::testing::Types<GLRenderer,
@@ -1224,8 +1229,10 @@ TEST_F(VideoGLRendererPixelTest, SimpleNV12JRect) {
// YUV of (149,43,21) should be green (0,255,0) in RGB.
CreateTestYUVVideoDrawQuad_NV12(
- shared_state, media::COLOR_SPACE_JPEG, gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f),
- 149, 43, 21, pass.get(), rect, rect, resource_provider_.get());
+ shared_state, media::COLOR_SPACE_JPEG,
+ media::VideoColorSpace(media::COLOR_SPACE_JPEG),
+ gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f), 149, 43, 21, pass.get(), rect, rect,
+ resource_provider_.get());
RenderPassList pass_list;
pass_list.push_back(std::move(pass));

Powered by Google App Engine
This is Rietveld 408576698