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

Unified Diff: cc/output/shader.h

Issue 2400033004: cc: custom bilinear filtering for YUV quad.
Patch Set: fix SAMPLER_TYPE_2D_RECT logic Created 4 years, 2 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
« no previous file with comments | « cc/output/renderer_pixeltest.cc ('k') | cc/output/shader.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/output/shader.h
diff --git a/cc/output/shader.h b/cc/output/shader.h
index 21b4a70de5aaac404dc18061f6483967841dddf7..39bff542c78869647b1e84e7ede83f3f4923b4eb 100644
--- a/cc/output/shader.h
+++ b/cc/output/shader.h
@@ -767,7 +767,10 @@ class FragmentShaderYUVVideo : public FragmentTexBlendMode {
std::string GetShaderString(
TexCoordPrecision precision, SamplerType sampler) const;
- void SetFeatures(bool use_alpha_texture, bool use_nv12, bool use_color_lut);
+ void SetFeatures(SamplerType sampler,
+ bool use_alpha_texture,
+ bool use_nv12,
+ bool use_color_lut);
void Init(gpu::gles2::GLES2Interface* context,
unsigned program,
@@ -781,6 +784,10 @@ class FragmentShaderYUVVideo : public FragmentTexBlendMode {
int alpha_location() const { return alpha_location_; }
int yuv_matrix_location() const { return yuv_matrix_location_; }
int yuv_adj_location() const { return yuv_adj_location_; }
+ int ya_size_location() const { return ya_size_location_; }
+ int uv_subsampling_factor_location() const {
+ return uv_subsampling_factor_location_;
+ }
int ya_clamp_rect_location() const { return ya_clamp_rect_location_; }
int uv_clamp_rect_location() const { return uv_clamp_rect_location_; }
int resource_multiplier_location() const {
@@ -789,6 +796,7 @@ class FragmentShaderYUVVideo : public FragmentTexBlendMode {
int resource_offset_location() const { return resource_offset_location_; }
private:
+ SamplerType sampler_ = SAMPLER_TYPE_2D;
bool use_alpha_texture_;
bool use_nv12_;
bool use_color_lut_;
@@ -802,6 +810,8 @@ class FragmentShaderYUVVideo : public FragmentTexBlendMode {
int alpha_location_;
int yuv_matrix_location_;
int yuv_adj_location_;
+ int ya_size_location_ = -1;
+ int uv_subsampling_factor_location_ = -1;
int ya_clamp_rect_location_;
int uv_clamp_rect_location_;
int resource_multiplier_location_;
« no previous file with comments | « cc/output/renderer_pixeltest.cc ('k') | cc/output/shader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698