[FFmpeg-cvslog] oggenc: Set the right AVOption size for the pref_duration option

Martin Storsjö git at videolan.org
Mon Jul 14 22:45:34 CEST 2014


ffmpeg | branch: release/2.2 | Martin Storsjö <martin at martin.st> | Fri Jun  6 13:59:14 2014 +0300| [16f7cbef5610a878317596134607d2a89da66ecf] | committer: Luca Barbato

oggenc: Set the right AVOption size for the pref_duration option

On big endian machines, the default value set via the faulty
AVOption ended up as 2^32 times too big.

This fixes the fate-lavf-ogg test which currently is broken on
big endian machines, broken since 3831362. Since that commit,
a final zero-sized packet is written to the ogg muxer in that test,
which caused different flushing behaviour on little and big endian
depending on whether the pref_duration option was handled as it
should or not.

CC: libav-stable at libav.org
Signed-off-by: Martin Storsjö <martin at martin.st>
(cherry picked from commit 103243ca649cc305129ed0352bf4d97e5ddf4d80)
Signed-off-by: Luca Barbato <lu_zero at gentoo.org>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=16f7cbef5610a878317596134607d2a89da66ecf
---

 libavformat/oggenc.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/oggenc.c b/libavformat/oggenc.c
index fd102c8..a03ac15 100644
--- a/libavformat/oggenc.c
+++ b/libavformat/oggenc.c
@@ -80,7 +80,7 @@ static const AVOption options[] = {
     { "pagesize", "preferred page size in bytes (deprecated)",
         OFFSET(pref_size), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, MAX_PAGE_SIZE, PARAM },
     { "page_duration", "preferred page duration, in microseconds",
-        OFFSET(pref_duration), AV_OPT_TYPE_INT, { .i64 = 1000000 }, 0, INT64_MAX, PARAM },
+        OFFSET(pref_duration), AV_OPT_TYPE_INT64, { .i64 = 1000000 }, 0, INT64_MAX, PARAM },
     { NULL },
 };
 



More information about the ffmpeg-cvslog mailing list