You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-04 22:03:09 +02:00
swscale/swscale_unscaled: fix planarRgbToplanarRgbWrapper() for formats with bpc between 9-14 bits
Currently, planarRgbToplanarRgbWrapper() always sets the alpha value to 255, without taking the bit depth into consideration. This commit restricts the alpha value to the bit depth.
This commit is contained in:
@ -1378,8 +1378,15 @@ static int planarRgbToplanarRgbWrapper(SwsInternal *c,
|
||||
dst[1], dstStride[1]);
|
||||
ff_copyPlane(src[2], srcStride[2], srcSliceY, srcSliceH, c->opts.src_w,
|
||||
dst[2], dstStride[2]);
|
||||
if (dst[3])
|
||||
fillPlane(dst[3], dstStride[3], c->opts.src_w, srcSliceH, srcSliceY, 255);
|
||||
if (dst[3]) {
|
||||
if (is16BPS(c->opts.dst_format) || isNBPS(c->opts.dst_format)) {
|
||||
const AVPixFmtDescriptor *desc_dst = av_pix_fmt_desc_get(c->opts.dst_format);
|
||||
fillPlane16(dst[3], dstStride[3], c->opts.src_w, srcSliceH, srcSliceY, 1,
|
||||
desc_dst->comp[3].depth, isBE(c->opts.dst_format));
|
||||
} else {
|
||||
fillPlane(dst[3], dstStride[3], c->opts.src_w, srcSliceH, srcSliceY, 255);
|
||||
}
|
||||
}
|
||||
|
||||
return srcSliceH;
|
||||
}
|
||||
|
Reference in New Issue
Block a user