]> git.sesse.net Git - movit/blobdiff - effect_chain.h
Update another outdated comment.
[movit] / effect_chain.h
index ea4926b304efafad329e7309caf34d9252058544..48ed15291bbcbf92014ddd24ec1cb0b0a0554d44 100644 (file)
@@ -263,9 +263,9 @@ public:
        // Y'CbCr output (see below for details).
        void add_output(const ImageFormat &format, OutputAlphaFormat alpha_format);
 
-       // Adds an YCbCr output. Note that you can only have one output.
-       // Currently, only chunked packed output is supported, and only 4:4:4
-       // (so chroma_subsampling_x and chroma_subsampling_y must both be 1).
+       // Adds an YCbCr output. Note that you can only have one Y'CbCr output.
+       // Currently, only 4:4:4 output is supported, so chroma_subsampling_x
+       // and chroma_subsampling_y must both be 1.
        //
        // If you have both RGBA and Y'CbCr output, the RGBA output will come
        // in the last draw buffer. Also, <format> and <alpha_format> must be
@@ -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.
@@ -486,6 +492,7 @@ private:
        std::vector<Node *> nodes;
        std::map<Effect *, Node *> node_map;
        Effect *dither_effect;
+       Node *ycbcr_conversion_effect_node;
 
        std::vector<Input *> inputs;  // Also contained in nodes.
        std::vector<Phase *> phases;