[vlc-devel] commit: Fixed transcode audio filters insertion (close #3199). ( Laurent Aimar )
git version control
git at videolan.org
Fri Jan 22 00:20:06 CET 2010
vlc | branch: master | Laurent Aimar <fenrir at videolan.org> | Thu Jan 21 23:41:19 2010 +0100| [9d447992d1913208c433caacd3279d61c80417ae] | committer: Laurent Aimar
Fixed transcode audio filters insertion (close #3199).
Calls to aout_PrepareFormat where missing.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9d447992d1913208c433caacd3279d61c80417ae
---
modules/stream_out/transcode/audio.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/modules/stream_out/transcode/audio.c b/modules/stream_out/transcode/audio.c
index 1a89b4b..744bbd4 100644
--- a/modules/stream_out/transcode/audio.c
+++ b/modules/stream_out/transcode/audio.c
@@ -138,6 +138,7 @@ static int transcode_audio_filter_chain_build( sout_stream_t *p_stream, filter_c
/* First step, convert to fl32 */
current.i_codec =
current.audio.i_format = VLC_CODEC_FL32;
+ aout_FormatPrepare( ¤t.audio );
if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) )
{
@@ -151,6 +152,7 @@ static int transcode_audio_filter_chain_build( sout_stream_t *p_stream, filter_c
if( current.audio.i_rate != p_dst->audio.i_rate )
{
current.audio.i_rate = p_dst->audio.i_rate;
+ aout_FormatPrepare( ¤t.audio );
if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) )
{
msg_Err( p_stream, "Failed to find conversion filter for resampling" );
@@ -171,6 +173,7 @@ static int transcode_audio_filter_chain_build( sout_stream_t *p_stream, filter_c
current.audio.i_physical_channels =
current.audio.i_original_channels = pi_channels_maps[current.audio.i_channels];
+ aout_FormatPrepare( ¤t.audio );
if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) )
{
msg_Err( p_stream, "Failed to find conversion filter for channel mixing" );
@@ -182,6 +185,7 @@ static int transcode_audio_filter_chain_build( sout_stream_t *p_stream, filter_c
if( current.i_codec != p_dst->i_codec )
{
current.i_codec = p_dst->i_codec;
+ aout_FormatPrepare( ¤t.audio );
if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) )
{
msg_Err( p_stream, "Failed to find conversion filter to %4.4s",
More information about the vlc-devel
mailing list