[FFmpeg-devel] FFMPEG DLL proposal
Wed Jan 21 16:53:41 CET 2009
I would like to use FFMPEG "under the hood" in an application, to
quickly convert some movies. Unfortunately, the API is terrible to
learn and I won't do anything better than ffmpeg.exe can do. But I do
not like the idea to embedd ffmpeg.exe, I would prefer a shared library.
My idea is the following :
1-transform ffmpeg.c and cmdutils.c by removing all static variables.
This is easy : just replace all static variables with a big struct
named "context" that would be passed to any function.
2-replace main(int argc, char* argv) by ffmpeg_process(int argc,
3-ffmpeg.c is now a single call to ffmpeg_process()
Thus, we would have a DLL with a single public function
ffmpeg_process(), which could be used with parameters like on the
command line. What a relief !
Why don't I do that myself ?
Well... I did, but I have many problems.
I have performed step1 a few weeks ago. Since then many svn updates
did occur and I am totally desynchronized with ffmpeg.c and many
I can't manage to build the shared libraries by trying to add things
in the Makefiles... Too many macros, dependencies, CLI options to
GCC... I give up.
In my opinion, this would be a benefit for everybody, if it was an
official new feature of FFmpeg, but this should be handled by the ones
maintaining ffmpeg.c and cmdutils.c.
Any chance to see it soon ?
More information about the ffmpeg-devel