[xiph-commits] r16651 - in trunk/ffmpeg2theora: . patches
j at svn.xiph.org
j at svn.xiph.org
Sun Oct 25 12:28:26 PDT 2009
Author: j
Date: 2009-10-25 12:28:26 -0700 (Sun, 25 Oct 2009)
New Revision: 16651
Added:
trunk/ffmpeg2theora/patches/ogg_duration.patch
Modified:
trunk/ffmpeg2theora/ChangeLog
Log:
update ChangeLog, add ffmpeg patch for ogg duration
Modified: trunk/ffmpeg2theora/ChangeLog
===================================================================
--- trunk/ffmpeg2theora/ChangeLog 2009-10-25 18:42:12 UTC (rev 16650)
+++ trunk/ffmpeg2theora/ChangeLog 2009-10-25 19:28:26 UTC (rev 16651)
@@ -1,3 +1,7 @@
+svn
+ - use a/v sync from input container
+ this should fix many issues that came up with variable framerate inputs
+
0.25 2009-09-28
- fix input from codecs where width/height is not encoded width/height
- fix a/v sync issues with some mov/mp4 files with strange framerates
Added: trunk/ffmpeg2theora/patches/ogg_duration.patch
===================================================================
--- trunk/ffmpeg2theora/patches/ogg_duration.patch (rev 0)
+++ trunk/ffmpeg2theora/patches/ogg_duration.patch 2009-10-25 19:28:26 UTC (rev 16651)
@@ -0,0 +1,23 @@
+Index: libavformat/oggdec.c
+===================================================================
+--- libavformat/oggdec.c (revision 19439)
++++ libavformat/oggdec.c (working copy)
+@@ -469,6 +469,18 @@
+ ogg->size = size;
+ ogg_restore (s, 0);
+
++ ogg_save (s);
++ url_fseek (s->pb, 0, SEEK_SET);
++ while (!ogg_read_page (s, &i)){
++ if (ogg->streams[i].granule != -1 && ogg->streams[i].granule != 0 &&
++ idx == i) {
++ s->streams[idx]->duration -=
++ ogg_gptopts (s, idx, ogg->streams[idx].granule);
++ break;
++ }
++ }
++ ogg_restore (s, 0);
++
+ return 0;
+ }
+
More information about the commits
mailing list