Project Description
A dynamic link library for ffmpeg with Progress! simple to use, just create a new instance, call the convert method and viola. Also gives you the ability to pass in your advanced command line arguments. Default propertys is set up to encode vob files to mkv with great quality!
Updates and Tasklist

New version released! with support for flash, xvid, h264 ect.

No longer being developed due to no funding or ad support. Sorry.

Super easy to use wrapper for FFmpeg. It can be used with VB.net or C#. This will allow you to encode videos in your projects using less than 10 lines of code! It also supports the use of a progress bar.

I havnt updated the examples or the documentation yet, I'm sorry i have been a little busy lately, but I am still working on the project. Download the source, it has the library already compiled along with source code and an example written in vb to show how to use it with progress.

Here is an example how to use it in a VB.NET project:
First add a reference to the compiled .dll file. Then its as simple as..
Public WithEvents convert As New FFWraper.Converter
    Private Sub handleinput(ByVal text As String) Handles convert.Stdout
        YourStatusLable.Text = text
    End Sub
    
    Private Sub handlepercent(ByVal percentage As Integer) Handles convert.Percent
        YourProgressBar.Value = percentage
    End Sub

  Private Sub EncodeBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EncodeBtn.Click       
        Convert.SourceFile = "C:\Movie.vob")   'the file you wish to encode         
        convert.VideoBitrate = "1200k" 'Note the "k" at the end
        convert.OverWrite = True 'overwrite the output file if it already exists
        convert.OutputPath = "C:\Finished\" 'Dont forget the backslash at the end! 
        convert.FileName = "test.mkv" 'The name of the file. 
'Note: you should try to match the extension to the appropriate container.
        Convert.container = "matroska" 'note how i selected the matroska container as the end filename was test.mkv
        Convert.StartEncoding()
    End Sub

Because Ive already added some defaults, to encode a .vob file and keep the surround sound track With good quality you could optionaly just use the following lines:

        Convert.SourceFile = "C:\Movie.vob")
        convert.OutputPath = "C:\Finished\"
        convert.FileName = "test.mkv" 'The default container is matroska. so unless you wanted
        'for say a flash file, you dont need to change the convert.container = "FLV" for example
        convert.StartEncoding()

Without using a progress bar or anything, it takes a minumum of 4 lines (assuming default settings) to encode a file. Also, For encoding .vob to h.264 mkv files a good setting
for great quality at good speed you can use:

convert.UseCustomParameters = True

It will insert the following arguments into ffmpeg: "-g 250 -bf 3 -bstrategy 1 -coder 1 -qmin 10 -qmax 51 -scthreshold 40 -flags loop -cmp chroma -merange 16 -memethod hex -subq 5 -iqfactor 0.71 -qcomp 0.6 -qdiff 4 -directpred 1 -flags2 +fastpskip -dtsdelta_threshold 1"

Last edited Oct 20, 2013 at 3:27 PM by chumney2000, version 8