Commit 6458a087 authored by Reimar Döffinger's avatar Reimar Döffinger

vf_scale: ensure the palette is set for output.

Since those are pseudo-palette formats, swscale does not write
into data[1], swscale must initialize the palette properly itself.
This lead to frames that actually decoded as all-gray before.
Signed-off-by: 's avatarReimar Döffinger <Reimar.Doeffinger@gmx.de>
parent 24eac3cf
...@@ -28,6 +28,7 @@ ...@@ -28,6 +28,7 @@
#include "libavutil/eval.h" #include "libavutil/eval.h"
#include "libavutil/mathematics.h" #include "libavutil/mathematics.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/imgutils.h"
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "libswscale/swscale.h" #include "libswscale/swscale.h"
...@@ -279,6 +280,8 @@ static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) ...@@ -279,6 +280,8 @@ static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
outpicref->video->h = outlink->h; outpicref->video->h = outlink->h;
outlink->out_buf = outpicref; outlink->out_buf = outpicref;
if(scale->output_is_pal)
ff_set_systematic_pal2(outpicref->data[1], outlink->format == PIX_FMT_PAL8 ? PIX_FMT_BGR8 : outlink->format);
av_reduce(&outpicref->video->sample_aspect_ratio.num, &outpicref->video->sample_aspect_ratio.den, av_reduce(&outpicref->video->sample_aspect_ratio.num, &outpicref->video->sample_aspect_ratio.den,
(int64_t)picref->video->sample_aspect_ratio.num * outlink->h * link->w, (int64_t)picref->video->sample_aspect_ratio.num * outlink->h * link->w,
......
...@@ -13,7 +13,7 @@ bgra 395c9f706fccda721471acaa5c96c16c ...@@ -13,7 +13,7 @@ bgra 395c9f706fccda721471acaa5c96c16c
gray 8c4850e66562a587a292dc728a65ea4a gray 8c4850e66562a587a292dc728a65ea4a
gray16be 257b4339925b0e672f552d8c9511f2c3 gray16be 257b4339925b0e672f552d8c9511f2c3
gray16le 67cf7b26cda55356cc25e0f4e42cc136 gray16le 67cf7b26cda55356cc25e0f4e42cc136
pal8 d6c1b598244f41e2f005e42407d234d2 pal8 0a7c8a7029b77619a6d847cf6f6ad0ac
rgb24 3b90ed64b687d3dc186c6ef521dc71a8 rgb24 3b90ed64b687d3dc186c6ef521dc71a8
rgb48be e6fd353c0eb9bea889423954414bea35 rgb48be e6fd353c0eb9bea889423954414bea35
rgb48le 68a1723da11ce08b502d42e204376503 rgb48le 68a1723da11ce08b502d42e204376503
......
...@@ -22,7 +22,7 @@ monob 668ebe8b8103b9046b251b2fa8a1d88f ...@@ -22,7 +22,7 @@ monob 668ebe8b8103b9046b251b2fa8a1d88f
monow 9251497f3b0634f1165d12d5a289d943 monow 9251497f3b0634f1165d12d5a289d943
nv12 e0af357888584d36eec5aa0f673793ef nv12 e0af357888584d36eec5aa0f673793ef
nv21 9a3297f3b34baa038b1f37cb202b512f nv21 9a3297f3b34baa038b1f37cb202b512f
pal8 dec8ed2258ec89b8a796f21cad4df867 pal8 09b4a6a3167576627fe0540994c3eb24
rgb0 1ed8e8027126d283e6ed7359e81c56e4 rgb0 1ed8e8027126d283e6ed7359e81c56e4
rgb24 b41eba9651e1b5fe386289b506188105 rgb24 b41eba9651e1b5fe386289b506188105
rgb444be 9e89db334568c6b2e3d5d0540f4ba960 rgb444be 9e89db334568c6b2e3d5d0540f4ba960
......
...@@ -22,7 +22,7 @@ monob cb62f31b701c6e987b574974d1b31e32 ...@@ -22,7 +22,7 @@ monob cb62f31b701c6e987b574974d1b31e32
monow fd5d417ab7728acddffc06870661df61 monow fd5d417ab7728acddffc06870661df61
nv12 4676d59db43d657dc12841f6bc3ab452 nv12 4676d59db43d657dc12841f6bc3ab452
nv21 69c699510ff1fb777b118ebee1002f14 nv21 69c699510ff1fb777b118ebee1002f14
pal8 6324fa058e1bc157ed7132bfe4022317 pal8 0e7e9aee9f4f02f50cb72bee640843df
rgb0 a01995946117e77b20e851506d64688c rgb0 a01995946117e77b20e851506d64688c
rgb24 13ff53ebeab74dc05492836f1cfbd2c1 rgb24 13ff53ebeab74dc05492836f1cfbd2c1
rgb444be 46e466b2709f62b2fffc63708063eaaf rgb444be 46e466b2709f62b2fffc63708063eaaf
......
...@@ -22,7 +22,7 @@ monob d0cf8732677a5360b6160133043590d8 ...@@ -22,7 +22,7 @@ monob d0cf8732677a5360b6160133043590d8
monow ff9869d067ecb94eb9d90c9750c31fea monow ff9869d067ecb94eb9d90c9750c31fea
nv12 046f00f598ce14d9854a3534a5c99114 nv12 046f00f598ce14d9854a3534a5c99114
nv21 01ea369dd2d0d3ed7451dc5c8d61497f nv21 01ea369dd2d0d3ed7451dc5c8d61497f
pal8 47ed19a7e128b0e33c25d2a463b0611a pal8 f20e2ccf7e884d31a6766d45a73c2cdf
rgb0 972c4ed97786aa30b7137b083b0e0afc rgb0 972c4ed97786aa30b7137b083b0e0afc
rgb24 eaefabc168d0b14576bab45bc1e56e1e rgb24 eaefabc168d0b14576bab45bc1e56e1e
rgb444be 06722e03f8404e7d2226665ed2444a32 rgb444be 06722e03f8404e7d2226665ed2444a32
......
5112508 ./tests/data/vsynth1/zmbv.avi 5112508 ./tests/data/vsynth1/zmbv.avi
cfbec364e41d70c9b177435b5655d8af *./tests/data/zmbv.vsynth1.out.yuv 4ad1ca9de7c65eab68a619c54fffaec8 *./tests/data/zmbv.vsynth1.out.yuv
stddev: 46.47 PSNR: 14.79 MAXDIFF: 129 bytes: 7603200/ 7603200 stddev: 8.61 PSNR: 29.43 MAXDIFF: 64 bytes: 7603200/ 7603200
5116352 ./tests/data/vsynth2/zmbv.avi 5116352 ./tests/data/vsynth2/zmbv.avi
cfbec364e41d70c9b177435b5655d8af *./tests/data/zmbv.vsynth2.out.yuv ee68a5292fd0745834246b4ec0d85e9b *./tests/data/zmbv.vsynth2.out.yuv
stddev: 42.07 PSNR: 15.65 MAXDIFF: 112 bytes: 7603200/ 7603200 stddev: 8.12 PSNR: 29.94 MAXDIFF: 32 bytes: 7603200/ 7603200
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment