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 planarCopyWrapper() for yuv444p => yuva444p
Currently, planarCopyWrapper() assumes that src[3] must be NULL when the source format has no alpha plane. This commit updates the condition for filling the alpha plane based on the number of components available in the source format as well.
This commit is contained in:
@ -2221,7 +2221,7 @@ static int planarCopyWrapper(SwsInternal *c, const uint8_t *const src[],
|
|||||||
|
|
||||||
// ignore palette for GRAY8
|
// ignore palette for GRAY8
|
||||||
if (plane == 1 && desc_dst->nb_components < 3) continue;
|
if (plane == 1 && desc_dst->nb_components < 3) continue;
|
||||||
if (!src[plane] || (plane == 1 && desc_src->nb_components < 3)) {
|
if (!src[plane] || (plane == 1 && desc_src->nb_components < 3) || (plane == 3 && desc_src->nb_components <= 3)) {
|
||||||
if (is16BPS(c->opts.dst_format) || isNBPS(c->opts.dst_format)) {
|
if (is16BPS(c->opts.dst_format) || isNBPS(c->opts.dst_format)) {
|
||||||
fillPlane16(dst[plane], dstStride[plane], length, height, y,
|
fillPlane16(dst[plane], dstStride[plane], length, height, y,
|
||||||
plane == 3, desc_dst->comp[plane].depth,
|
plane == 3, desc_dst->comp[plane].depth,
|
||||||
|
Reference in New Issue
Block a user