Revision: 2161
          http://synfig.svn.sourceforge.net/synfig/?rev=2161&view=rev
Author:   pabs3
Date:     2008-11-06 10:36:52 +0000 (Thu, 06 Nov 2008)

Log Message:
-----------
Speed up reverse seeking in the ffmpeg importer by using the ffmpeg -ss option 
to tell ffmpeg to seek to the right frame.

Modified Paths:
--------------
    synfig-core/trunk/src/modules/mod_ffmpeg/mptr_ffmpeg.cpp

Modified: synfig-core/trunk/src/modules/mod_ffmpeg/mptr_ffmpeg.cpp
===================================================================
--- synfig-core/trunk/src/modules/mod_ffmpeg/mptr_ffmpeg.cpp    2008-11-06 
09:07:28 UTC (rev 2160)
+++ synfig-core/trunk/src/modules/mod_ffmpeg/mptr_ffmpeg.cpp    2008-11-06 
10:36:52 UTC (rev 2161)
@@ -102,7 +102,7 @@
 
                string command;
                
-               command=strprintf("ffmpeg -i \"%s\" -an -f image2pipe -vcodec 
ppm -\n",filename.c_str());
+               command=strprintf("ffmpeg -ss 00:00:00.%d -i \"%s\" -an -f 
image2pipe -vcodec ppm -\n",frame,filename.c_str());
                
                file=popen(command.c_str(),POPEN_BINARY_READ_TYPE);
 
@@ -133,7 +133,8 @@
                        }
                        // Close the unneeded pipein
                        close(p[1]);
-                       execlp("ffmpeg", "ffmpeg", "-i", filename.c_str(), 
"-an", "-f", "image2pipe", "-vcodec", "ppm", "-", (const char *)NULL);
+                       string time = strprintf("00:00:00.%d",frame);
+                       execlp("ffmpeg", "ffmpeg", "-ss", time.c_str(), "-i", 
filename.c_str(), "-an", "-f", "image2pipe", "-vcodec", "ppm", "-", (const char 
*)NULL);
                        // We should never reach here unless the exec failed
                        cerr<<"Unable to open pipe to ffmpeg"<<endl;
                        _exit(1);


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Synfig-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to