On Sun, 18 Aug 2013, Luca Barbato wrote:

Ensures http-streaming webm works correctly on all browsers.
---
libavformat/matroskaenc.c | 1 +
libavformat/version.h     | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)

I didn't look closely at this patchset yet, but I think this commit message needs to be clarified a little...

If I understand it properly, with this patch in place, you should assume that the cluster for the keyframe starts _after_ the data that gets output from the av_write_frame(keyframe_packet) call. This is different from most muxers (e.g. FLV), where the keyframe in the stream starts at the start of what gets output from what gets output form that av_write_frame call.

That is, with FLV, you'd do "mark_keyframe_pos(cur_stream_pos); av_write_frame(keyframe_packet);", while you should do "av_write_frame(keyframe_packet); mark_keyframe_pos(cur_stream_pos);" with WebM.

So the commit message should mention this in one way or another - it isn't (unfortunately) just so simple that this patch makes everything work magically - the caller still needs to do things in a certain (not totally obvious) way.

// Martin
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to