/* Prepare statistics */
#define INIT_COUNTER( p, type, compute ) p_input->counters.p_##p = \
stats_CounterCreate( p_input, VLC_VAR_##type, STATS_##compute);
- if( p_input->p_libvlc->b_stats )
+ if( p_input->p_libvlc_global->b_stats )
{
INIT_COUNTER( read_bytes, INTEGER, COUNTER );
INIT_COUNTER( read_packets, INTEGER, COUNTER );
free( psz );
return VLC_EGENERIC;
}
- if( p_input->p_libvlc->b_stats )
+ if( p_input->p_libvlc_global->b_stats )
{
INIT_COUNTER( sout_sent_packets, INTEGER, COUNTER );
INIT_COUNTER (sout_sent_bytes, INTEGER, COUNTER );
}
/* initialization is complete */
- p_input->i_state = PLAYING_S;
-
- val.i_int = PLAYING_S;
- var_Change( p_input, "state", VLC_VAR_SETVALUE, &val, NULL );
+ input_ChangeState(p_input, PLAYING_S);
return VLC_SUCCESS;
*****************************************************************************/
static void End( input_thread_t * p_input )
{
- vlc_value_t val;
int i;
msg_Dbg( p_input, "closing input" );
/* We are at the end */
- p_input->i_state = END_S;
-
- val.i_int = END_S;
- var_Change( p_input, "state", VLC_VAR_SETVALUE, &val, NULL );
+ input_ChangeState(p_input, END_S);
/* Clean control variables */
input_ControlVarClean( p_input );
input_EsOutDelete( p_input->p_es_out );
#define CL_CO( c ) stats_CounterClean( p_input->counters.p_##c ); p_input->counters.p_##c = NULL;
- if( p_input->p_libvlc->b_stats )
+ if( p_input->p_libvlc_global->b_stats )
{
vlc_mutex_lock( &p_input->counters.counters_lock );
CL_CO( read_bytes );
{
int64_t i_pts_delay;
+ input_ChangeState( p_input, OPENING_S);
+
/* Now try a real access */
in->p_access = access2_New( p_input, psz_access, psz_demux, psz_path,
b_quick );
var_Set( p_input, "seekable", val );
}
+ input_ChangeState( p_input, BUFFERING_S);
+
/* Create the stream_t */
in->p_stream = stream_AccessNew( in->p_access, b_quick );
if( in->p_stream == NULL )