Does anyone know of a set of bindings for C# to drive the FFMpeg library directly ? I could shell to ffmpeg.exe directly but I found it hard to sync/control as a separate process. any help would be appreciated.
I've seen this library:
ffmpeg-sharp a wrapper library over the FFmpeg multimedia suite that provides easy to use wrappers for use in C#.
It's actually pretty easy to control as a separate process. If you redirect StandardOut and StandardError then you can subscribe to the Process.OnData* events and receive the command line output. It's then trivial enough to parse the status line using a regex and work out things like % complete and so on.
The hardest thing is working out what command line to pass to get decent quality! I'd recommend this page and this page if you're using H.264/AAC+.
Tao.ffmpeg: http://www.taoframework.com/project/ffmpeg it compiles and has a binary dist which is more than can be said for ffmpeg-sharp at this point. It is, however, not particularly easy to use.
Another choice. I think it's easy enough for beginers. You even needn't know about ffmpeg. Just follow the samples. Then it works.