Project DescriptionA 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.
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 -b
strategy 1 -coder 1 -qmin 10 -qmax 51 -scthreshold 40 -flags
loop -cmp chroma -me
range 16 -memethod hex -subq 5 -i
qfactor 0.71 -qcomp 0.6 -qdiff 4 -directpred 1 -flags2 +fastpskip -dtsdelta_threshold 1"