Commit ad4a7e63 authored by Gildas Bazin's avatar Gildas Bazin

* modules/audio_filter/converter/dtstofloat32.c: added implementation for the...

* modules/audio_filter/converter/dtstofloat32.c: added implementation for the new audio filter architecture.
* codec/dts.c: bug fix.
* codec/araw.c: added more PCM formats to the encoder.
parent 44fb66b7
......@@ -74,7 +74,7 @@ static int Open( vlc_object_t *p_this )
}
else return VLC_EGENERIC;
msg_Err( p_this, "%4.4s->%4.4s, bits per sample: %i",
msg_Dbg( p_this, "%4.4s->%4.4s, bits per sample: %i",
(char *)&p_filter->fmt_in.i_codec,
(char *)&p_filter->fmt_out.i_codec,
p_filter->fmt_in.audio.i_bitspersample );
......
......@@ -405,28 +405,29 @@ static int EncoderOpen( vlc_object_t *p_this )
{
encoder_t *p_enc = (encoder_t *)p_this;
if( p_enc->fmt_in.i_codec != VLC_FOURCC( 's', '1', '6', 'b' ) &&
p_enc->fmt_in.i_codec != VLC_FOURCC( 's', '1', '6', 'l' ) )
{
msg_Warn( p_enc, "unhandled input format" );
return VLC_EGENERIC;
}
switch( p_enc->fmt_out.i_codec )
{
case VLC_FOURCC( 's', '1', '6', 'b' ):
case VLC_FOURCC( 's', '1', '6', 'l' ):
case VLC_FOURCC( 'u', '8', ' ', ' ' ):
case VLC_FOURCC( 's', '8', ' ', ' ' ):
#if 0
-> could be easyly done with table look up
case VLC_FOURCC( 'a', 'l', 'a', 'w' ):
case VLC_FOURCC( 'u', 'l', 'a', 'w' ):
#endif
break;
default:
return VLC_EGENERIC;
}
if( (p_enc->fmt_out.i_codec == VLC_FOURCC('u','8',' ',' ') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','8',' ',' ') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','1','6','l') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','1','6','b')) &&
(p_enc->fmt_in.i_codec == VLC_FOURCC( 's', '1', '6', 'b' ) ||
p_enc->fmt_in.i_codec == VLC_FOURCC( 's', '1', '6', 'l' )) )
{
;
}
else if( p_enc->fmt_out.i_codec == VLC_FOURCC('f','l','3','2') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('f','l','6','4') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('u','8',' ',' ') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','8',' ',' ') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','1','6','l') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','1','6','b') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','2','4','l') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','2','4','b') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','3','2','l') ||
p_enc->fmt_out.i_codec == VLC_FOURCC('s','3','2','b') )
{
p_enc->fmt_in.i_codec = p_enc->fmt_out.i_codec;
}
else return VLC_EGENERIC;
p_enc->p_sys = NULL;
p_enc->pf_encode_audio = EncoderEncode;
......
......@@ -2,7 +2,7 @@
* dts.c: parse DTS audio sync info and packetize the stream
*****************************************************************************
* Copyright (C) 2003 VideoLAN
* $Id: dts.c,v 1.18 2004/02/25 17:48:52 fenrir Exp $
* $Id$
*
* Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
* Gildas Bazin <gbazin@netcourrier.com>
......@@ -130,6 +130,7 @@ static int OpenDecoder( vlc_object_t *p_this )
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
p_dec->fmt_out.i_codec = VLC_FOURCC('d','t','s',' ');
p_dec->fmt_out.audio.i_rate = 0; /* So end_date gets initialized */
/* Set callback */
p_dec->pf_decode_audio = (aout_buffer_t *(*)(decoder_t *, block_t **))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment