vlc_module_begin ()
set_description( N_("Real demuxer" ) )
- set_capability( "demux", 50 )
+ set_capability( "demux", 0 )
set_category( CAT_INPUT )
set_subcategory( SUBCAT_INPUT_DEMUX )
set_callbacks( Open, Close )
fmt.video.i_frame_rate = (GetWBE( &p_data[22] ) << 16) | GetWBE( &p_data[24] );
fmt.video.i_frame_rate_base = 1 << 16;
- fmt.i_extra = 8;
- fmt.p_extra = malloc( 8 );
+ fmt.i_extra = i_data - 26;
+ fmt.p_extra = malloc( fmt.i_extra );
if( !fmt.p_extra )
return VLC_ENOMEM;
- memcpy( fmt.p_extra, &p_data[26], 8 );
+ memcpy( fmt.p_extra, &p_data[26], fmt.i_extra );
//msg_Dbg( p_demux, " - video 0x%08x 0x%08x", dw0, dw1 );
}
break;
- case VLC_FOURCC( 's','i','p','r' ):
+ case VLC_CODEC_SIPR:
fmt.i_codec = VLC_CODEC_SIPR;
if( i_flavor > 3 )
{
fmt.i_bitrate = fmt.audio.i_rate;
msg_Dbg( p_demux, " - sipr flavor=%i", i_flavor );
- case VLC_FOURCC( 'c','o','o','k' ):
- case VLC_FOURCC( 'a','t','r','c' ):
+ case VLC_CODEC_COOK:
+ case VLC_CODEC_ATRAC3:
if( i_subpacket_size <= 0 || i_frame_size / i_subpacket_size <= 0 )
{
es_format_Clean( &fmt );
else
fmt.audio.i_blockalign = i_coded_frame_size;
- if( fmt.i_codec == VLC_FOURCC( 'c','o','o','k' ) )
- fmt.i_codec = VLC_CODEC_COOK;
- else if( fmt.i_codec == VLC_FOURCC( 'a','t','r','c' ) )
- fmt.i_codec = VLC_CODEC_ATRAC3;
-
if( i_extra_codec > 0 )
{
fmt.p_extra = malloc( i_extra_codec );