if( !psz_sout && psz_path )
{
- char *psz_file = input_CreateFilename( VLC_OBJECT(p_input), psz_path, INPUT_RECORD_PREFIX, NULL );
+ char *psz_file = input_CreateFilename( p_input, psz_path, INPUT_RECORD_PREFIX, NULL );
if( psz_file )
{
if( asprintf( &psz_sout, "#record{dst-prefix='%s'}", psz_file ) < 0 )
if( i_stream_duration <= i_buffering_duration && !b_forced )
{
- const double f_level = __MAX( (double)i_stream_duration / i_buffering_duration, 0 );
+ double f_level;
+ if (i_buffering_duration == 0)
+ f_level = 0;
+ else
+ f_level = __MAX( (double)i_stream_duration / i_buffering_duration, 0 );
input_SendEventCache( p_sys->p_input, f_level );
msg_Dbg( p_sys->p_input, "Buffering %d%%", (int)(100 * f_level) );
( p_sys->p_es_sub &&
p_sys->p_es_sub->fmt.i_priority < es->fmt.i_priority ) )
i_wanted = es->i_channel;
+ else if( p_sys->p_es_sub &&
+ p_sys->p_es_sub->fmt.i_priority >= es->fmt.i_priority )
+ i_wanted = p_sys->p_es_sub->i_channel;
}
if( p_sys->i_sub_last >= 0 )
{
const int i_id = (int)va_arg( args, int );
es_out_id_t *p_es = EsOutGetFromID( out, i_id );
- int i_new_query;
+ int i_new_query = 0;
switch( i_query )
{