[vlc-devel] FW: Flynn says fix the packetizer instead - re 'chain of blocks' FW: vlc-devel Digest, Vol 23, Issue 61

Bryan Moore bmoore at airgain.com
Sat Apr 11 03:55:09 CEST 2009


On 10 Apr 2009 13:17:44 +0000 (UTC) David Flynn wrote:
> Next time, please supply a diff -- it makes it much easier 
> to see what is going on.

Our apologies. Bob (Airgain) realized this is a workaround and hoped the
embedded text short enough to follow.  We did use attachments on later
entries we made into two other forums (fora?).

David Flynn (woaf) wrote:
> 
> This looks bad.  You are searching through a chain of blocks, and
> pulling a time stamp from the future in to the past.
> 
> Infact this change affects block_ChainGather, which has multiple
users.
> 
> If there is a problem, with timestamps, fix it in the packetizer,
thats
> the only thing that knows how they should relate to the payload.

For some context, we're playing approx 10 Mbps stream from Darwin
Streaming Server.

Bob (Airgain) responds:
[existing vlc code also seems wrong, as explained --bgm] If it's better
to make the fix elsewhere, I agree with you.  The point I made is that
forcing the assignment of a particular time (i.e. the "first one found"
which could be a B frame, or a "P" frame with different time stamp) onto
EVERY frame within a particular chunk is definitely the wrong way to do
it.  Fixing I frames with "zero" dts/pts values was apparently too much
of a workaround and didn't address the real problem (thank you).  Still,
it's a problem, and I hope that by bringing this issue up with a
possible 'workaround' fix will then lead to the correct one.

In either case, the timestamps were frequently being assigned
incorrectly, occasional causing "rough" video playback (like a movie
projector that occasionally sticks).  After patching the code, the video
playback improved, and the frame timing values that I was logging were
much more consistent than before [ for a streaming H264 demo ]

Regards
Bob and Bryan
http://www.airgain.com



More information about the vlc-devel mailing list