]> git.sesse.net Git - movit/blobdiff - effect_chain.h
Allow adjusting the output Y'CbCr coefficients after finalize.
[movit] / effect_chain.h
index bc7e259af7ab856be686fe9e579379830cd4d83d..7e0cd9f97b9b6465ea46b38908f7213aa1f2664c 100644 (file)
@@ -274,6 +274,12 @@ public:
                              const YCbCrFormat &ycbcr_format,
                              YCbCrOutputSplitting output_splitting = YCBCR_OUTPUT_INTERLEAVED);
 
+       // Change Y'CbCr output format. (This can be done also after finalize()).
+       // Note that you are not allowed to change subsampling parameters;
+       // however, you can change the color space parameters, ie.,
+       // luma_coefficients, full_range and num_levels.
+       void change_ycbcr_output_format(const YCbCrFormat &ycbcr_format);
+
        // Set number of output bits, to scale the dither.
        // 8 is the right value for most outputs.
        // The default, 0, is a special value that means no dither.
@@ -299,7 +305,7 @@ public:
        // no matter what you specify.
        //
        // Of special interest is GL_SRGB8_ALPHA8, which stores sRGB-encoded RGB
-       // and linear alpha; this is half the memory bandwidth og GL_RGBA16F,
+       // and linear alpha; this is half the memory bandwidth of GL_RGBA16F,
        // while retaining reasonable precision for typical image data. It will,
        // however, cause some gamut clipping if your colorspace is far from sRGB,
        // as it cannot represent values outside [0,1]. NOTE: If you construct
@@ -341,7 +347,6 @@ public:
        void reset_phase_timing();
        void print_phase_timing();
 
-       //void render(unsigned char *src, unsigned char *dst);
        void render_to_screen()
        {
                render_to_fbo(0, 0, 0);