palettegen: Fill with last color, not black

If we fill with black then the generated palette will have one color more
than what the user requested. This also resulted in unwanted black specks in
the output of paletteuse, especially when generating small palettes.
pull/325/head
Tomas Härdin 6 years ago
parent f2e89fe4d3
commit abc5ac3cf5
  1. 2
      libavfilter/vf_palettegen.c
  2. 2
      tests/ref/fate/filter-palettegen-2

@ -245,7 +245,7 @@ static void write_palette(AVFilterContext *ctx, AVFrame *out)
av_log(ctx, AV_LOG_WARNING, "Dupped color: %08"PRIX32"\n", pal[x]);
last_color = pal[x];
} else {
pal[x] = 0xff000000; // pad with black
pal[x] = last_color; // pad with last color
}
}
pal += pal_linesize;

@ -3,4 +3,4 @@
#codec_id 0: rawvideo
#dimensions 0: 16x16
#sar 0: 1/1
0, 0, 0, 1, 1024, 0x906ff5aa
0, 0, 0, 1, 1024, 0x23e072c8

Loading…
Cancel
Save