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
