When converting from yuva420p to yuv420p the resize loop would try to access an 
output plane that did not exist.
Added a check for the output planes existence.

Example cmd: ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i example.mp4 
-vf scale_npp=format=yuva420p,scale_npp=format=yuv420p -c:v h264_nvenc -f null -

Signed-off-by: Jorge Estrada <jestrada.l...@gmail.com>
---
 libavfilter/vf_scale_npp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavfilter/vf_scale_npp.c b/libavfilter/vf_scale_npp.c
index 1b1b7b9fc9..5387bf9c7a 100644
--- a/libavfilter/vf_scale_npp.c
+++ b/libavfilter/vf_scale_npp.c
@@ -721,7 +721,7 @@ static int nppscale_resize(AVFilterContext *ctx, 
NPPScaleStageContext *stage,
     NppStatus err;
     int i;
 
-    for (i = 0; i < FF_ARRAY_ELEMS(stage->planes_in) && i < 
FF_ARRAY_ELEMS(in->data) && in->data[i]; i++) {
+    for (i = 0; i < FF_ARRAY_ELEMS(stage->planes_in) && i < 
FF_ARRAY_ELEMS(in->data) && in->data[i] && out->data[i]; i++) {
         int iw = stage->planes_in[i].width;
         int ih = stage->planes_in[i].height;
         int ow = stage->planes_out[i].width;
-- 
2.34.1

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to