X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fstream_out%2Frecord.c;h=a75e27918bf5279cbe2969aaae2933f34c5a3105;hb=501530e61e474423b0761e8b8b6a5b62c8da5bc4;hp=c64168634f9262570101abd4e28a58f38cbf78db;hpb=d932926590aac6d22bc906498461c9c8e3148a24;p=vlc diff --git a/modules/stream_out/record.c b/modules/stream_out/record.c index c64168634f..a75e27918b 100644 --- a/modules/stream_out/record.c +++ b/modules/stream_out/record.c @@ -1,7 +1,7 @@ /***************************************************************************** * record.c: record stream output module ***************************************************************************** - * Copyright (C) 2008 the VideoLAN team + * Copyright (C) 2008-2009 the VideoLAN team * $Id$ * * Authors: Laurent Aimar @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include /***************************************************************************** @@ -62,7 +62,7 @@ vlc_module_begin () set_category( CAT_SOUT ) set_subcategory( SUBCAT_SOUT_STREAM ) - add_string( SOUT_CFG_PREFIX "dst-prefix", "", NULL, DST_PREFIX_TEXT, + add_string( SOUT_CFG_PREFIX "dst-prefix", "", DST_PREFIX_TEXT, DST_PREFIX_LONGTEXT, true ) set_callbacks( Open, Close ) @@ -148,11 +148,11 @@ static int Open( vlc_object_t *p_this ) p_sys->i_date_start = -1; p_sys->i_size = 0; #ifdef OPTIMIZE_MEMORY - p_sys->i_max_wait = 5*1000000; /* 5s */ - p_sys->i_max_size = 1*1000000; /* 1 Mbyte */ + p_sys->i_max_wait = 5*CLOCK_FREQ; /* 5s */ + p_sys->i_max_size = 1*1024*1024; /* 1 MiB */ #else - p_sys->i_max_wait = 30*1000000; /* 30s */ - p_sys->i_max_size = 20*1000000; /* 20 Mbyte */ + p_sys->i_max_wait = 30*CLOCK_FREQ; /* 30s */ + p_sys->i_max_size = 20*1024*1024; /* 20 MiB */ #endif p_sys->b_drop = false; p_sys->i_dts_start = 0; @@ -170,7 +170,7 @@ static void Close( vlc_object_t * p_this ) sout_stream_sys_t *p_sys = p_stream->p_sys; if( p_sys->p_out ) - sout_StreamDelete( p_sys->p_out ); + sout_StreamChainDelete( p_sys->p_out, p_sys->p_out ); TAB_CLEAN( p_sys->i_id, p_sys->id ); free( p_sys->psz_prefix ); @@ -273,13 +273,13 @@ static const muxer_properties_t p_muxers[] = { M( "raw", "mpc", 1, VLC_CODEC_MUSEPACK7, VLC_CODEC_MUSEPACK8 ), M( "raw", "ape", 1, VLC_CODEC_APE ), - M( "wav", "wav", 1, VLC_CODEC_U8, VLC_CODEC_S16L, + M( "wav", "wav", 1, VLC_CODEC_U8, VLC_CODEC_S16L, VLC_CODEC_S24L, VLC_CODEC_S32L, VLC_CODEC_FL32 ), //M( "ffmpeg{mux=flac}", "flac", 1, VLC_CODEC_FLAC ), BROKEN - M( "ogg", "ogg", INT_MAX, VLC_CODEC_VORBIS, VLC_CODEC_SPEEX, VLC_CODEC_FLAC, - VLC_CODEC_SUBT, VLC_CODEC_THEORA, VLC_CODEC_DIRAC ), + M( "ogg", "ogg", INT_MAX, VLC_CODEC_VORBIS, VLC_CODEC_SPEEX, VLC_CODEC_FLAC, + VLC_CODEC_SUBT, VLC_CODEC_THEORA, VLC_CODEC_DIRAC ), M( "asf", "asf", 127, VLC_CODEC_WMA1, VLC_CODEC_WMA2, VLC_CODEC_WMAP, VLC_CODEC_WMAL, VLC_CODEC_WMAS, VLC_CODEC_WMV1, VLC_CODEC_WMV2, VLC_CODEC_WMV3, VLC_CODEC_VC1 ), @@ -295,7 +295,7 @@ static const muxer_properties_t p_muxers[] = { M( "ts", "ts", 8000, VLC_CODEC_MPGV, VLC_CODEC_H264, VLC_CODEC_MPGA, VLC_CODEC_DVD_LPCM, VLC_CODEC_A52, - VLC_CODEC_DTS, VLC_CODEC_MP4A, + VLC_CODEC_DTS, VLC_CODEC_MP4A, VLC_CODEC_DVBS, VLC_CODEC_TELETEXT ), M( NULL, NULL, 0, 0 ) @@ -327,7 +327,7 @@ static int OutputNew( sout_stream_t *p_stream, /* Create the output */ msg_Dbg( p_stream, "Using record output `%s'", psz_output ); - p_sys->p_out = sout_StreamNew( p_stream->p_sout, psz_output ); + p_sys->p_out = sout_StreamChainNew( p_stream->p_sout, psz_output, NULL, NULL ); if( !p_sys->p_out ) goto error; @@ -374,7 +374,7 @@ static void OutputStart( sout_stream_t *p_stream ) const char *psz_muxer = NULL; const char *psz_extension = NULL; - /* Look for prefered muxer + /* Look for preferred muxer * TODO we could insert transcode in a few cases like * s16l <-> s16b */ @@ -445,7 +445,7 @@ static void OutputStart( sout_stream_t *p_stream ) if( i_es < 0 ) { - utf8_unlink( psz_file ); + vlc_unlink( psz_file ); free( psz_file ); continue; } @@ -460,7 +460,7 @@ static void OutputStart( sout_stream_t *p_stream ) id->id = NULL; } if( p_sys->p_out ) - sout_StreamDelete( p_sys->p_out ); + sout_StreamChainDelete( p_sys->p_out, p_sys->p_out ); p_sys->p_out = NULL; if( i_es > i_best_es ) @@ -471,7 +471,7 @@ static void OutputStart( sout_stream_t *p_stream ) if( i_best_es >= p_sys->i_id ) break; } - utf8_unlink( psz_file ); + vlc_unlink( psz_file ); free( psz_file ); }