vlc | branch: master | Francois Cartegnie <[email protected]> | Wed Jun 17 12:49:02 2015 +0200| [787a6f44347199196177a8bccc47312c9d464487] | committer: Francois Cartegnie
es_out: limit buffering debug rate logs are usually spammed on slow buffering. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=787a6f44347199196177a8bccc47312c9d464487 --- src/input/es_out.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/input/es_out.c b/src/input/es_out.c index 3756b14..af905df 100644 --- a/src/input/es_out.c +++ b/src/input/es_out.c @@ -168,6 +168,9 @@ struct es_out_sys_t /* Record */ sout_instance_t *p_sout_record; + + /* Used only to limit debugging output */ + int i_prev_stream_level; }; static es_out_id_t *EsOutAdd ( es_out_t *, const es_format_t * ); @@ -294,6 +297,7 @@ es_out_t *input_EsOutNew( input_thread_t *p_input, int i_rate ) p_sys->b_buffering = true; p_sys->i_preroll_end = -1; + p_sys->i_prev_stream_level = -1; return out; } @@ -593,6 +597,7 @@ static void EsOutChangePosition( es_out_t *out ) p_sys->i_buffering_extra_stream = 0; p_sys->i_buffering_extra_system = 0; p_sys->i_preroll_end = -1; + p_sys->i_prev_stream_level = -1; } @@ -627,7 +632,13 @@ static void EsOutDecodersStopBuffering( es_out_t *out, bool b_forced ) 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) ); + int i_level = (int)(100 * f_level); + if( p_sys->i_prev_stream_level != i_level ) + { + msg_Dbg( p_sys->p_input, "Buffering %d%%", i_level ); + p_sys->i_prev_stream_level = i_level; + } + return; } input_SendEventCache( p_sys->p_input, 1.0 ); @@ -636,6 +647,7 @@ static void EsOutDecodersStopBuffering( es_out_t *out, bool b_forced ) (int)(i_stream_duration/1000), (int)(i_system_duration/1000) ); p_sys->b_buffering = false; p_sys->i_preroll_end = -1; + p_sys->i_prev_stream_level = -1; if( p_sys->i_buffering_extra_initial > 0 ) { @@ -823,6 +835,7 @@ static void EsOutFrameNext( es_out_t *out ) INPUT_RATE_DEFAULT / i_rate; p_sys->i_preroll_end = -1; + p_sys->i_prev_stream_level = -1; } static mtime_t EsOutGetBuffering( es_out_t *out ) { _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
