diff --git a/libswresample/swresample.c b/libswresample/swresample.c index 9b71b2e122..464e7b7e04 100644 --- a/libswresample/swresample.c +++ b/libswresample/swresample.c @@ -751,6 +751,8 @@ int swr_convert(struct SwrContext *s, uint8_t *out_arg[SWR_CH_MAX], int out_coun in_count = 0; if(ret>0) { s->drop_output -= ret; + if (!s->drop_output && !out_arg) + return 0; continue; }