diff options
Diffstat (limited to 'libavresample/utils.c')
-rw-r--r-- | libavresample/utils.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libavresample/utils.c b/libavresample/utils.c index 78ef153250..21bb9309b3 100644 --- a/libavresample/utils.c +++ b/libavresample/utils.c @@ -375,7 +375,8 @@ int avresample_convert(AVAudioResampleContext *avr, void **output, } } - return handle_buffered_output(avr, &output_buffer, current_buffer); + return handle_buffered_output(avr, output ? &output_buffer : NULL, + current_buffer); } int avresample_available(AVAudioResampleContext *avr) @@ -385,6 +386,8 @@ int avresample_available(AVAudioResampleContext *avr) int avresample_read(AVAudioResampleContext *avr, void **output, int nb_samples) { + if (!output) + return av_audio_fifo_drain(avr->out_fifo, nb_samples); return av_audio_fifo_read(avr->out_fifo, output, nb_samples); } |