[vlc-commits] stats: calculate full md5 and give final stats on closing track
Ilkka Ollakka
git at videolan.org
Sat Feb 15 15:32:13 CET 2014
vlc | branch: master | Ilkka Ollakka <ileoo at videolan.org> | Sat Feb 15 13:55:31 2014 +0200| [47445c671d02bad8cda19352eb277a7275a6bd87] | committer: Ilkka Ollakka
stats: calculate full md5 and give final stats on closing track
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=47445c671d02bad8cda19352eb277a7275a6bd87
---
modules/stream_out/stats.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/modules/stream_out/stats.c b/modules/stream_out/stats.c
index 16a7054..175cf2f 100644
--- a/modules/stream_out/stats.c
+++ b/modules/stream_out/stats.c
@@ -84,6 +84,7 @@ struct sout_stream_id_t
void *next_id;
const char *type;
mtime_t previous_dts;
+ struct md5_s hash;
};
/*****************************************************************************
@@ -173,6 +174,7 @@ static sout_stream_id_t * Add( sout_stream_t *p_stream, es_format_t *p_fmt )
id->next_id = NULL;
id->segment_number = 0;
id->previous_dts = VLC_TS_INVALID;
+ InitMD5( &id->hash );
msg_Dbg( p_stream, "%s: Adding track type:%s id:%d", p_sys->prefix, id->type, id->id);
@@ -186,7 +188,18 @@ static int Del( sout_stream_t *p_stream, sout_stream_id_t *id )
{
sout_stream_sys_t *p_sys = (sout_stream_sys_t *)p_stream->p_sys;
+ EndMD5( &id->hash );
+ char *outputhash = psz_md5_hash( &id->hash );
msg_Dbg( p_stream, "%s: Removing track type:%s id:%d", p_sys->prefix, id->type, id->id );
+ if( p_sys->output )
+ {
+ fprintf( p_sys->output,"%s: final type:%s id:%d segments:%"PRIu64" md5:%16s\n",
+ p_sys->prefix, id->type, id->id, id->segment_number, outputhash );
+ } else {
+ msg_Info( p_stream, "%s: final type:%s id:%d segments:%"PRIu64" md5:%16s",
+ p_sys->prefix, id->type, id->id, id->segment_number, outputhash );
+ }
+ free( outputhash );
if( id->next_id ) sout_StreamIdDel( p_stream->p_next, id->next_id );
free( id );
@@ -204,6 +217,7 @@ static int Send( sout_stream_t *p_stream, sout_stream_id_t *id,
{
InitMD5( &hash );
AddMD5( &hash, p_block->p_buffer, p_block->i_buffer );
+ AddMD5( &id->hash, p_block->p_buffer, p_block->i_buffer );
EndMD5( &hash );
char *outputhash = psz_md5_hash( &hash );
More information about the vlc-commits
mailing list