Commit 506e6faa authored by Jean-Paul Saman's avatar Jean-Paul Saman

RTP reordering in module/access/udp.c done by me with help from Marian...

RTP reordering in module/access/udp.c done by me with help from Marian Durkovic (md _AT_ bts _dot_ sk). Allow src/input/stream.c to handle a linked list of blocks from demuxers.
parent 1db8de5a
This diff is collapsed.
...@@ -612,12 +612,16 @@ static void AStreamPrebufferBlock( stream_t *s ) ...@@ -612,12 +612,16 @@ static void AStreamPrebufferBlock( stream_t *s )
msg_Dbg( s, "received first data for our buffer"); msg_Dbg( s, "received first data for our buffer");
} }
while( b )
{
/* Append the block */ /* Append the block */
p_sys->block.i_size += b->i_buffer; p_sys->block.i_size += b->i_buffer;
*p_sys->block.pp_last = b; *p_sys->block.pp_last = b;
p_sys->block.pp_last = &b->p_next; p_sys->block.pp_last = &b->p_next;
p_sys->stat.i_read_count++; p_sys->stat.i_read_count++;
b = b->p_next;
}
} }
p_sys->block.p_current = p_sys->block.p_first; p_sys->block.p_current = p_sys->block.p_first;
...@@ -926,6 +930,9 @@ static int AStreamRefillBlock( stream_t *s ) ...@@ -926,6 +930,9 @@ static int AStreamRefillBlock( stream_t *s )
msleep( STREAM_DATA_WAIT ); msleep( STREAM_DATA_WAIT );
} }
while( b )
{
i_stop = mdate(); i_stop = mdate();
/* Append the block */ /* Append the block */
...@@ -942,6 +949,9 @@ static int AStreamRefillBlock( stream_t *s ) ...@@ -942,6 +949,9 @@ static int AStreamRefillBlock( stream_t *s )
p_sys->stat.i_read_time += i_stop - i_start; p_sys->stat.i_read_time += i_stop - i_start;
p_sys->stat.i_read_count++; p_sys->stat.i_read_count++;
b = b->p_next;
i_start = mdate();
}
return VLC_SUCCESS; return VLC_SUCCESS;
} }
......
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