+ // Tells the input to use the specific OpenGL texture as pixel data for the given
+ // channel. The comments on FlatInput::set_texture_num() also apply here, except
+ // that this input generally does not use mipmaps.
+ void set_texture_num(unsigned channel, GLuint texture_num)
+ {
+ possibly_release_texture(channel);
+ this->texture_num[channel] = texture_num;
+ this->owns_texture[channel] = false;
+ }
+
+ // You can change the Y'CbCr format freely, also after finalize,
+ // although with one limitation: If Cb and Cr come from the same
+ // texture and their offsets offsets are the same (ie., within 1e-6)
+ // when finalizing, they most continue to be so forever, as this
+ // optimization is compiled into the shader.
+ //
+ // If you change subsampling parameters, you'll need to call
+ // set_width() / set_height() again after this.
+ void change_ycbcr_format(const YCbCrFormat &ycbcr_format);
+
+ void inform_added(EffectChain *chain) override