lavfi/fade: fix black level for non studio-level pixel formats
authorStefano Sabatini <stefasab@gmail.com>
Wed, 28 Mar 2012 22:17:23 +0000 (00:17 +0200)
committerStefano Sabatini <stefasab@gmail.com>
Sat, 31 Mar 2012 13:55:43 +0000 (15:55 +0200)
Fix trac ticket #1139, regression introduced in 8c1fb50d077d5f954.

libavfilter/vf_fade.c

index 79c8994..27f5bad 100644 (file)
@@ -192,9 +192,9 @@ static int config_props(AVFilterLink *inlink)
     fade->alpha = fade->alpha ? ff_fmt_is_in(inlink->format, alpha_pix_fmts) : 0;
     fade->is_packed_rgb = ff_fill_rgba_map(fade->rgba_map, inlink->format) >= 0;
 
-    /* CCIR601/709 black level unless input is RGB or has alpha */
+    /* use CCIR601/709 black level for studio-level pixel non-alpha components */
     fade->black_level =
-            ff_fmt_is_in(inlink->format, studio_level_pix_fmts) || fade->alpha ? 0 : 16;
+            ff_fmt_is_in(inlink->format, studio_level_pix_fmts) && !fade->alpha ? 16 : 0;
     /* 32768 = 1 << 15, it is an integer representation
      * of 0.5 and is for rounding. */
     fade->black_level_scaled = (fade->black_level << 16) + 32768;