mirror of
https://code.videolan.org/videolan/vlc
synced 2024-09-24 20:48:52 +02:00
Privatize input stats internals
Those were never used from plugins. This commit is a no-brainer.
This commit is contained in:
parent
2f1189df0a
commit
1793ca880e
@ -210,4 +210,41 @@ VLC_EXPORT( input_item_t *, __input_item_NewExt, (vlc_object_t *, const char *ps
|
||||
*/
|
||||
#define input_item_New( a,b,c ) input_item_NewExt( a, b, c, 0, NULL, 0, -1 )
|
||||
|
||||
/******************
|
||||
* Input stats
|
||||
******************/
|
||||
struct input_stats_t
|
||||
{
|
||||
vlc_mutex_t lock;
|
||||
|
||||
/* Input */
|
||||
int i_read_packets;
|
||||
int i_read_bytes;
|
||||
float f_input_bitrate;
|
||||
float f_average_input_bitrate;
|
||||
|
||||
/* Demux */
|
||||
int i_demux_read_packets;
|
||||
int i_demux_read_bytes;
|
||||
float f_demux_bitrate;
|
||||
float f_average_demux_bitrate;
|
||||
|
||||
/* Decoders */
|
||||
int i_decoded_audio;
|
||||
int i_decoded_video;
|
||||
|
||||
/* Vout */
|
||||
int i_displayed_pictures;
|
||||
int i_lost_pictures;
|
||||
|
||||
/* Sout */
|
||||
int i_sent_packets;
|
||||
int i_sent_bytes;
|
||||
float f_send_bitrate;
|
||||
|
||||
/* Aout */
|
||||
int i_played_abuffers;
|
||||
int i_lost_abuffers;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -197,108 +197,6 @@ enum
|
||||
STATS_TIMER_SKINS_PLAYTREE_IMAGE,
|
||||
};
|
||||
|
||||
#define stats_Update(a,b,c) __stats_Update( VLC_OBJECT(a), b, c )
|
||||
VLC_EXPORT( int, __stats_Update, (vlc_object_t*, counter_t *, vlc_value_t, vlc_value_t *) );
|
||||
#define stats_CounterCreate(a,b,c) __stats_CounterCreate( VLC_OBJECT(a), b, c )
|
||||
VLC_EXPORT( counter_t *, __stats_CounterCreate, (vlc_object_t*, int, int) );
|
||||
#define stats_Get(a,b,c) __stats_Get( VLC_OBJECT(a), b, c)
|
||||
VLC_EXPORT( int, __stats_Get, (vlc_object_t*, counter_t *, vlc_value_t*) );
|
||||
|
||||
VLC_EXPORT (void, stats_CounterClean, (counter_t * ) );
|
||||
|
||||
#define stats_GetInteger(a,b,c) __stats_GetInteger( VLC_OBJECT(a), b, c )
|
||||
static inline int __stats_GetInteger( vlc_object_t *p_obj, counter_t *p_counter,
|
||||
int *value )
|
||||
{
|
||||
int i_ret;
|
||||
vlc_value_t val; val.i_int = 0;
|
||||
if( !p_counter ) return VLC_EGENERIC;
|
||||
i_ret = __stats_Get( p_obj, p_counter, &val );
|
||||
*value = val.i_int;
|
||||
return i_ret;
|
||||
}
|
||||
|
||||
#define stats_GetFloat(a,b,c) __stats_GetFloat( VLC_OBJECT(a), b, c )
|
||||
static inline int __stats_GetFloat( vlc_object_t *p_obj, counter_t *p_counter,
|
||||
float *value )
|
||||
{
|
||||
int i_ret;
|
||||
vlc_value_t val; val.f_float = 0.0;
|
||||
if( !p_counter ) return VLC_EGENERIC;
|
||||
i_ret = __stats_Get( p_obj, p_counter, &val );
|
||||
*value = val.f_float;
|
||||
return i_ret;
|
||||
}
|
||||
#define stats_UpdateInteger(a,b,c,d) __stats_UpdateInteger( VLC_OBJECT(a),b,c,d )
|
||||
static inline int __stats_UpdateInteger( vlc_object_t *p_obj,counter_t *p_co,
|
||||
int i, int *pi_new )
|
||||
{
|
||||
int i_ret;
|
||||
vlc_value_t val;
|
||||
vlc_value_t new_val; new_val.i_int = 0;
|
||||
if( !p_co ) return VLC_EGENERIC;
|
||||
val.i_int = i;
|
||||
i_ret = __stats_Update( p_obj, p_co, val, &new_val );
|
||||
if( pi_new )
|
||||
*pi_new = new_val.i_int;
|
||||
return i_ret;
|
||||
}
|
||||
#define stats_UpdateFloat(a,b,c,d) __stats_UpdateFloat( VLC_OBJECT(a),b,c,d )
|
||||
static inline int __stats_UpdateFloat( vlc_object_t *p_obj, counter_t *p_co,
|
||||
float f, float *pf_new )
|
||||
{
|
||||
vlc_value_t val;
|
||||
int i_ret;
|
||||
vlc_value_t new_val;new_val.f_float = 0.0;
|
||||
if( !p_co ) return VLC_EGENERIC;
|
||||
val.f_float = f;
|
||||
i_ret = __stats_Update( p_obj, p_co, val, &new_val );
|
||||
if( pf_new )
|
||||
*pf_new = new_val.f_float;
|
||||
return i_ret;
|
||||
}
|
||||
|
||||
/******************
|
||||
* Input stats
|
||||
******************/
|
||||
struct input_stats_t
|
||||
{
|
||||
vlc_mutex_t lock;
|
||||
|
||||
/* Input */
|
||||
int i_read_packets;
|
||||
int i_read_bytes;
|
||||
float f_input_bitrate;
|
||||
float f_average_input_bitrate;
|
||||
|
||||
/* Demux */
|
||||
int i_demux_read_packets;
|
||||
int i_demux_read_bytes;
|
||||
float f_demux_bitrate;
|
||||
float f_average_demux_bitrate;
|
||||
|
||||
/* Decoders */
|
||||
int i_decoded_audio;
|
||||
int i_decoded_video;
|
||||
|
||||
/* Vout */
|
||||
int i_displayed_pictures;
|
||||
int i_lost_pictures;
|
||||
|
||||
/* Sout */
|
||||
int i_sent_packets;
|
||||
int i_sent_bytes;
|
||||
float f_send_bitrate;
|
||||
|
||||
/* Aout */
|
||||
int i_played_abuffers;
|
||||
int i_lost_abuffers;
|
||||
};
|
||||
|
||||
VLC_EXPORT( void, stats_ComputeInputStats, (input_thread_t*, input_stats_t*) );
|
||||
VLC_EXPORT( void, stats_ReinitInputStats, (input_stats_t *) );
|
||||
VLC_EXPORT( void, stats_DumpInputStats, (input_stats_t *) );
|
||||
|
||||
/*********
|
||||
* Timing
|
||||
********/
|
||||
|
69
src/libvlc.h
69
src/libvlc.h
@ -250,6 +250,75 @@ extern const size_t libvlc_config_count;
|
||||
*/
|
||||
void var_OptionParse (vlc_object_t *, const char *, bool trusted);
|
||||
|
||||
|
||||
/*
|
||||
* Stats stuff
|
||||
*/
|
||||
#define stats_Update(a,b,c) __stats_Update( VLC_OBJECT(a), b, c )
|
||||
int __stats_Update (vlc_object_t*, counter_t *, vlc_value_t, vlc_value_t *);
|
||||
#define stats_CounterCreate(a,b,c) __stats_CounterCreate( VLC_OBJECT(a), b, c )
|
||||
counter_t * __stats_CounterCreate (vlc_object_t*, int, int);
|
||||
#define stats_Get(a,b,c) __stats_Get( VLC_OBJECT(a), b, c)
|
||||
int __stats_Get (vlc_object_t*, counter_t *, vlc_value_t*);
|
||||
|
||||
void stats_CounterClean (counter_t * );
|
||||
|
||||
#define stats_GetInteger(a,b,c) __stats_GetInteger( VLC_OBJECT(a), b, c )
|
||||
static inline int __stats_GetInteger( vlc_object_t *p_obj, counter_t *p_counter,
|
||||
int *value )
|
||||
{
|
||||
int i_ret;
|
||||
vlc_value_t val; val.i_int = 0;
|
||||
if( !p_counter ) return VLC_EGENERIC;
|
||||
i_ret = __stats_Get( p_obj, p_counter, &val );
|
||||
*value = val.i_int;
|
||||
return i_ret;
|
||||
}
|
||||
|
||||
#define stats_GetFloat(a,b,c) __stats_GetFloat( VLC_OBJECT(a), b, c )
|
||||
static inline int __stats_GetFloat( vlc_object_t *p_obj, counter_t *p_counter,
|
||||
float *value )
|
||||
{
|
||||
int i_ret;
|
||||
vlc_value_t val; val.f_float = 0.0;
|
||||
if( !p_counter ) return VLC_EGENERIC;
|
||||
i_ret = __stats_Get( p_obj, p_counter, &val );
|
||||
*value = val.f_float;
|
||||
return i_ret;
|
||||
}
|
||||
#define stats_UpdateInteger(a,b,c,d) __stats_UpdateInteger( VLC_OBJECT(a),b,c,d )
|
||||
static inline int __stats_UpdateInteger( vlc_object_t *p_obj,counter_t *p_co,
|
||||
int i, int *pi_new )
|
||||
{
|
||||
int i_ret;
|
||||
vlc_value_t val;
|
||||
vlc_value_t new_val; new_val.i_int = 0;
|
||||
if( !p_co ) return VLC_EGENERIC;
|
||||
val.i_int = i;
|
||||
i_ret = __stats_Update( p_obj, p_co, val, &new_val );
|
||||
if( pi_new )
|
||||
*pi_new = new_val.i_int;
|
||||
return i_ret;
|
||||
}
|
||||
#define stats_UpdateFloat(a,b,c,d) __stats_UpdateFloat( VLC_OBJECT(a),b,c,d )
|
||||
static inline int __stats_UpdateFloat( vlc_object_t *p_obj, counter_t *p_co,
|
||||
float f, float *pf_new )
|
||||
{
|
||||
vlc_value_t val;
|
||||
int i_ret;
|
||||
vlc_value_t new_val;new_val.f_float = 0.0;
|
||||
if( !p_co ) return VLC_EGENERIC;
|
||||
val.f_float = f;
|
||||
i_ret = __stats_Update( p_obj, p_co, val, &new_val );
|
||||
if( pf_new )
|
||||
*pf_new = new_val.f_float;
|
||||
return i_ret;
|
||||
}
|
||||
|
||||
VLC_EXPORT( void, stats_ComputeInputStats, (input_thread_t*, input_stats_t*) );
|
||||
VLC_EXPORT( void, stats_ReinitInputStats, (input_stats_t *) );
|
||||
VLC_EXPORT( void, stats_DumpInputStats, (input_stats_t *) );
|
||||
|
||||
/*
|
||||
* Replacement functions
|
||||
*/
|
||||
|
@ -343,19 +343,12 @@ spu_DisplaySubpicture
|
||||
spu_Init
|
||||
spu_RenderSubpictures
|
||||
spu_SortSubpictures
|
||||
stats_ComputeInputStats
|
||||
stats_CounterClean
|
||||
__stats_CounterCreate
|
||||
stats_DumpInputStats
|
||||
__stats_Get
|
||||
stats_ReinitInputStats
|
||||
__stats_TimerClean
|
||||
__stats_TimerDump
|
||||
__stats_TimersCleanAll
|
||||
__stats_TimersDumpAll
|
||||
__stats_TimerStart
|
||||
__stats_TimerStop
|
||||
__stats_Update
|
||||
stream_Block
|
||||
stream_Control
|
||||
stream_Delete
|
||||
|
Loading…
Reference in New Issue
Block a user