This guide will discuss FilmCutter's encoding application interface which allows FilmCutter to open an encoding application like QuEnc or HC.
This guide applies to the version shown above and following versions. This and other guides will be maintained "asap". Please view the change log for additional information and the user's guide that comes with FilmCutter.
avsFilmCutter, has no internal encoding engine at this writing, but can launch an external encoding application. At minimum FilmCutter can open your encoding program for you or start the hole process if your encoding application has a command line interface which allows such.
c:\mypath\cct2 -t "NTSC DVD" f:\a.avi f:\b.avi -auto
The above line of text if used to create a desktop shortcut or if typed into the run box would open Cinema Craft Encoder Basic, use the NTSC DVD template and encode two files using the source files a.avi and b.avi.
c:\mypath\cct2.exe -ecl f:\c.ecl -batch -verbose > log.txt
The line above opens the encoder and instructs it to use "c.ecl", which contains the configuration information about the encode job, "-batch" ends the program when encoding is completed "-verbose > log.txt" sends details about the encode to "log.txt".
FilmCutter does not produce ".ecl" files. If you have never used CCE before you do not know what I am talking about.
Cinema Craft products can be found at: http://www.cinemacraft.com.
The above information is supplied as an example of a command line instruction which you could use in the run box of Windows or a dos window / "command prompt" window as it is called in Windows XP. This could also be used as a single line in a text file using the file extension ".bat". A ".bat" or batch file can be used to start either older dos based or console programs, even windows programs.
The other intent of this example is to inform the reader that, yes you can launch CCE from FilmCutter (you may launch your word processor if you like), you just can't do much with it. I don't mean to be negative about CCE, it is just that FilmCutter's interface is limited to what can be done from the command line. Although freely available to everyone VirtualDub's interface for automating tasks isn't directly available from the command line.
So if your lost I am sorry and if your bored I am still sorry. I you have little or no experience with batch files or command line use the following may help, but it is not intended to teach these things.
The following discussion about the command line will use a proper syntax for writing batch files. If your real new to this kind of thing, let me define command line or just line. The line part means everything you type before you press enter. Command line would then mean one single line of information because everything after you press enter will be the next line, that is of course if you got the chance to enter anything after you press enter.
The above simply starts myProgram.
The above line starts "myProgram.exe" and makes the additional information "myFile.avs" available to the program "myProgram.exe". If "myProgram" supports command line arguments, it will load "myFile.avs". Windows' Note Pad program works that way, QuEnc works a little different.
QuEnc is a quick, high quality mpeg encoder which is available to anyone. It is very easy to use and offers many encoding options for those wishing to encode their videos to mpeg 1 or 2, with or without audio.
"myDrive:\myPath\QuEnc61.exe" "-i "myFile.avs""
Using the line above starts QuEnc, then QuEnc looks for a user provided argument list and finds "-i" followed by "myFile.avs". The single argument contains a switch "-i" which tells QuEnc that "myFile.avs" is the input file name. It is important that the switch be separated from the file name with a space otherwise QuEnc will not recognize the switch. It is also important to understand that file names should be enclosed inside a pair of quotation marks (" ").
"ThePath\QuEnc61.exe" "-notoall -i "myInputFile" -0 "myOutputFile" -b 5500"
The above example has four arguments, "-notoall", "-i "myInputFile"", "-0 "myOutputFile"" and "-b 5500". The first, "-notoall" is a single switch that requires no data to follow it while the last, "-b 5500" has a switch "-b"(average bitrate) with data(5500) separated by a space.
The following list of command line arguments comes from QuEnc version 0.61 and they may change with any future version.
|-i||<filename.avs> input file name||-i "myFile.avs"|
||<filename.m2v, mpg, mp2, ac3> output file name
||<bitrate in kbps>
||<bitrate in kbps> (0 = auto)
||<DC Precision> (either 8,9,10,11)
||<num> (either 0 (realtime) to 5 (idle)) 3 normal
||1 Pass Encoding
||2 Pass Encoding
||Use MPEG-1 Encoding
||Use MPEG-2 Encoding
||Same as using all -no* parameters at once
||Use High Quality
||Turn off High Quality
|| Turn off VBR
||Use Scene Detection
||Turn off Scene Detection
||Use Trellis Quant
||Turns off Trellis Quant
||Use Closed Gop
||Turn off Closed Gop
|| Use Interlaced Encoding Settings
||Turn off Interlaced Encoding Settings
||Use Extreme Settings
||Turn off Extreme Settings
||<XviD CustomMatrixFile> or QLB
||Turns off the Custom Matrix
|| Maximum B-Frames
||Aspect Ratio ( 16:9, 4:3, 1:1, 2:21 )
||MPEG-2 Mux Profile ( dvd, svcd, novideo, noaudio )
||Audio Codec ( mp2, ac3 )
||Audio Bitrate (64, 96, 128, 160, 192, 256, 384)
||Sets the MPEG-2 as Top Field First
||Sets the MPEG-2 as Bottom Field First
||Runs QuEnc in a minimized state
|| Automatically start encoding
|| Automatically close once encoding is complete
|| Shutdown the computer once encoding is complete
This dialog window allows the user to configure or select an encoding configuration. Encoder description contains a list of encoding configurations you, the user, have setup, if you have never setup an encoder in FilmCutter the window shown below will have all the data fields blank, even the Icon button will be blank. Let us assume that it is blank, click on the blank button next to the delete button. A file open dialog window will open allowing you to search though your computer to find the file "QuEnc61.exe". Once found the Icon button will load QuEnc's Icon and "QuEnc61.exe" will show in the encoder description.
It might be worth noting and I will mention this again, now is the only time you may edit the encoder description, once you have clicked "OK" or "Save" the encoder description is unchangeable. You may not have two that are the same (I need to fix this). In the example shown a good name for this configuration would be "QuEnc61_genMuxDVD" (General MuxDVD). We have picked an encoder and given it a unique name, therefore the fist part of the command line is done now we need the last part or the argument list.
As said above the first part of the command line to launch an application is done when you select the application. FilmCutter will insert "%filename" in the command line window and although it will load your script into VirtualDub, QuEnc needs more information.
is a place holder for your avs script file, FilmCutter inserts the script filename and path where ever you put "%filename" in the command line.
-i %filename -o "MyPath\MyOutputFile.mpg" -mpeg2mux dvd -cmatrix "myMatrix.xcm"
Please note that you no longer have to worry about the beginning and ending quotes, FilmCutter handles those, all you need to place in quotation marks are file and path descriptions.
%ofilename or %ofile.xxx(%ofile.ac3)
is a place holder for your output file, FilmCutter opens a save file dialog window to allow the user, you, to select the drive, folder and file name you wish to use for your encoded output file. The output file name and path will be inserted where ever you put "%ofile.xxx" in the command line.
-i %filename -o %ofilename -mpeg2mux dvd
Three arguments "-i %filename", "-o %ofilename" and "-mpeg2mux dvd" with three switches "-i", "-o" and "-mpeg2mux". We know the "-i" must be followed by a filename and path, FilmCutter will insert the scripts filename and path any where you put "%filename", if it also finds a %ofilename(out file name) FilmCutter will prompt you for a file name for the output file then insert it behind the "-o".
-i %filename -o %ofile.mpg -mpeg2mux dvd
Look at the above and notice that "%ofilename" has been changed to "%ofile.mpg". By using the latter form of the out-file place holder, FilmCutter will filter the file name look up in the dialog window and use .??? as the default extension. Using "%ofilename" opens the dialog window using mpg as the default.
You may select an encoder description already configured which will encode before this encoder runs. This option allows you to test two different versions of an encoder, two different configurations of the same encoder or pair an audio encoder with a video only encoder like HC.
The "Save" button allows you to setup multiple encoders without closing the dialog window, "Delete" should be no surprise. Help launches a html file describing the use of this dialog window.
Both QuEnc and HC require that the color space or pixel type be YV12. FilmCutter can test the scripts output before launching the encoder to catch a possible error.
Remember the encoder description for each encoding configuration you create must be different. It would be silly to have three configurations labeled "QuEnc61.exe". Also if you forget, just edit the encoder.ini file, a single encoder is shown below from an encoder.ini.
HCenc_017_w/AudioQuEnc_ac3 1 Audio QuEnc61AudioAC3
-i %filename -o %ofile.m2v
The encoder description is on the line following "file", the line can contain 5 arguments all separated by a single space.
If you are new to QuEnc it might be a good idea to explain a little issue you might experience with it. QuEnc remembers everything, well almost everything. If you change the bitrate the setting will stay untill changed. The same thing applies to interlaced encoding, top frame first and the like. The following examples show the command line for two audio only configurations I use.
-i %filename -o %ofile.ac3 -mpeg2mux novideo -audiocodec ac3 -audiobitrate 192 -auto -close
-i %filename -o %ofile.mp2 -mpeg2mux novideo -audiocodec mp2 -audiobitrate 192 -auto -close
You should notice that -auto starts the encoder and -close closes the program which will send control back to FilmCutter.