+ /* Stats */
+#define p_sys p_args->p_intf->p_sys
+ if( p_sys->p_input )
+ {
+ input_item_t *p_item = p_sys->p_input->input.p_item;
+ if( p_item )
+ {
+ vlc_mutex_lock( &p_item->p_stats->lock );
+#define STATS_INT( n ) sprintf( stats, "%d", p_item->p_stats->i_ ## n ); \
+ E_(mvar_AppendNewVar)( p_args->vars, #n, stats );
+#define STATS_FLOAT( n ) sprintf( stats, "%f", p_item->p_stats->f_ ## n ); \
+ E_(mvar_AppendNewVar)( p_args->vars, #n, stats );
+ STATS_INT( read_bytes )
+ STATS_FLOAT( input_bitrate )
+ STATS_INT( demux_read_bytes )
+ STATS_FLOAT( demux_bitrate )
+ STATS_INT( decoded_video )
+ STATS_INT( displayed_pictures )
+ STATS_INT( lost_pictures )
+ STATS_INT( decoded_audio )
+ STATS_INT( played_abuffers )
+ STATS_INT( lost_abuffers )
+ STATS_INT( sent_packets )
+ STATS_INT( sent_bytes )
+ STATS_FLOAT( send_bitrate )
+#undef STATS_INT
+#undef STATS_FLOAT
+ vlc_mutex_unlock( &p_item->p_stats->lock );
+ }
+ }
+#undef p_sys
+