From 2529bb3019a027c39d6ba7de3e7d4c7a49bdf384 Mon Sep 17 00:00:00 2001 From: David Conrad Date: Thu, 4 Mar 2010 08:53:00 +0000 Subject: Attempt seeking to write EBML master sizes even if streamed Most EBML masters are much smaller than IO_BUFFER_SIZE and thus the size can be updated. This makes parsing the resulting files easier. Originally committed as revision 22197 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/matroskaenc.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'libavformat') diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index ad4189384f..0f74ad3fb8 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -218,11 +218,8 @@ static void end_ebml_master(ByteIOContext *pb, ebml_master master) { int64_t pos = url_ftell(pb); - // leave the unknown size for masters when streaming - if (url_is_streamed(pb)) + if (url_fseek(pb, master.pos - master.sizebytes, SEEK_SET) < 0) return; - - url_fseek(pb, master.pos - master.sizebytes, SEEK_SET); put_ebml_num(pb, pos - master.pos, master.sizebytes); url_fseek(pb, pos, SEEK_SET); } -- cgit v1.2.3