Commit 8f9391f6 authored by Marian Ďurkovič's avatar Marian Ďurkovič Committed by JP Dinger

Fix demuxdump to work with RTP input, which would dump garbage when RTP

input is used. When stream_Read was used alone, it read 1316 bytes from
the RTP input add added garbage upto DUMP_BLOCKSIZE. With stream_Peek it
works as expected and also makes the whole demuxdump faster.
Signed-off-by: default avatarJP Dinger <jpd@videolan.org>
parent acac8879
......@@ -77,8 +77,6 @@ struct demux_sys_t
char *psz_file;
FILE *p_file;
uint64_t i_write;
uint8_t buffer[DUMP_BLOCKSIZE];
};
/*
......@@ -173,14 +171,14 @@ static int Demux( demux_t *p_demux )
{
demux_sys_t *p_sys = p_demux->p_sys;
const uint8_t *p_peek;
int i_data;
/* I'm pretty sure that stream_Peek,stream_Read( , NULL ) would be faster*/
i_data = stream_Read( p_demux->s, p_sys->buffer, DUMP_BLOCKSIZE );
i_data = stream_Peek( p_demux->s, &p_peek, DUMP_BLOCKSIZE );
if ( i_data <= 0 )
return i_data;
i_data = fwrite( p_sys->buffer, 1, i_data, p_sys->p_file );
i_data = fwrite( p_peek, 1, i_data, p_sys->p_file );
if( i_data == 0 )
{
......@@ -191,6 +189,7 @@ static int Demux( demux_t *p_demux )
msg_Dbg( p_demux, "dumped %d bytes", i_data );
#endif
stream_Read( p_demux->s, NULL, i_data );
p_sys->i_write += i_data;
return 1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment