diff --git a/modules/stream_out/transcode/audio.c b/modules/stream_out/transcode/audio.c index 8635d303d7a3b0236f358122d915abacf0dda8c9..f2aa2508cb0d70608851da208978713f27192630 100644 --- a/modules/stream_out/transcode/audio.c +++ b/modules/stream_out/transcode/audio.c @@ -340,6 +340,16 @@ int transcode_audio_process( sout_stream_t *p_stream, block_t *p_block, *p_audio_buf; *out = NULL; + if( unlikely( in == NULL ) ) + { + block_t *p_block; + do { + p_block = id->p_encoder->pf_encode_audio(id->p_encoder, NULL ); + block_ChainAppend( out, p_block ); + } while( p_block ); + return VLC_SUCCESS; + } + while( (p_audio_buf = id->p_decoder->pf_decode_audio( id->p_decoder, &in )) ) {