VideoEncoderGui homepage


VideoEncoderGui (later Veg) is a graphical front-end written in Java for two video encoder applications, MEncoder and Windows Media Encoder. It is primarily intended for encoding image sequences produced e.g. with FDS to video files to use in PowerPoint presentations or as standalone video files.


The current version is 0.7.2, released 2007-10-08. Note, that the Windows Media Encoder 9 is not included in the package, so you have to download and install it separately if you wish to use it. Veg is primarily tested on 32 bit Windows XP, but might work on other platforms as well.

VideoEncoderGui-0.7.2-install.exe (~12 Mio)
This installer has the following software and codecs included.

VideoEncoderGui.jar (~93 kio)
md5sum: 9a3f47fa7c46f66c1bd18baca58bece6
This is only the executable Java archive without any installer. Note: You must have Java 1.5 or better installed on your system and MEncoder in your PATH to make any use of this.


Veg is designed to be as much self-explanatory and easy to use as possible while still providing enough control over the encode for the experienced user. Although there are more options regarding the encode process than is needed by the average user, you typically only need to modify the basic stuff as the advanced options' default values are suitable for most purposes. Also note that most options have a tool tip which will hopefully tell you what they are about.

The user interface

Veg screenshot

Input and output files

Here you can specify the files to use as the source and as the destination. For the source there is two input fields. When encoding from a video file only the first one is used and the video file's path is entered to it. Both fields are needed when encoding from an image sequence. In this case the first one holds only the directory where the images are and the second field, called the image mask field, specifies the subset of that directory's images to use. You can use the browse button next to the source path field to choose both videos and image sequences. When choosing image sequences just select one image and Veg will try to guess the whole sequence you want to encode. Should it fail, you can specify a more specific mask to the image mask field or use the browse button next to the image mask field to choose an arbitrary set of images. The image mask browse button opens a special image chooser dialog having dual previews of the selected range. You could use only this dialog when choosing image sequences as it also sets the path field correctly, but it has some problems accessing certain network shares, so you might need to use the path browse dialog to first set the directory in these cases. When using the image mask browse dialog to choose sets of images you should note that there is a maximum length of about 215 characters to the command line. This can cause problems when selecting thousands of images since the list is constructed as a comma separated list of filenames directly to the command line. When you use the browse dialogs or drag and drop to specify input files the image type combo box and the source selection radio buttons should be automatically set to match the type of your encode, but if you e.g. type the image mask in by hand, you must also make sure that the image type box matches to all of the files your mask selects. As the image mask is passed directly to MEncoder, you might want to refer to MEncoder's documentation on the mask's format.


Metadata tab

The metadata tab lets you enter various types of miscellaneous data to the video file. This data or part of it will be visible in some video player software when playing the video. While adding any metadata is not mandatory, it is probably a good idea to fill in at least some of the fields, especially when the video is to be distributed as a standalone video file. Please note, that not all video formats are able to hold all this metadata.

Advanced encoding options

Advanced encoding options tab

The advanced encoding options tab contains options that affect the encode process in various ways. The most important ones are the fps-field and the quantizer value. When choosing the frame rate for your video, remember that low values make the video jerky, which looks rather cheap. If a frame rate around 25 fps would make the video too short, it's usually better to obtain more images than to reduce the fps value. High frame rates (50 - 60 fps) would look very good with some videos, but some video players refuse to play back these videos properly even if the machine is fast enough. The quantizer value defines the video's visual quality. The lower the quantizer value the better the quality. Since the lossy video codecs produce relatively small files even at the highest quality, there is little point in increasing the quantizer value. If you still wish to reduce the image quality, remember that anything above 4 will in most cases introduce clearly visible compression artifacts to the video and you don't want that to happen.

The rest of the advanced options have a much smaller impact on the video, and with a typical FDS-style animation its doubtful that you would even notice any difference. The default values aim to produce the best possible visual quality, and fiddling with the options might result in some decrease in the encoding time. Trial and error is undoubtedly the best way to familiarize oneself with these options. The Streamcopy audio checkbox is, however, a little different. When re-encoding a video file that has an audio track, this option tells MEncoder to copy the track to the re-encoded video as is. This is not guaranteed to produce sane results as not all audio formats are supported in all video containers.

The command line

In the command line field you can see the full command line used to call the encoder program. While you can edit the command line manually, it's usually not necessary as the most important options can be modified via the gui. You should note that the command line field is regenerated every time you edit any of the other fields, that is, the command line should be the last field edited before running the encoder.

Running the encode process

After you have typed in all the necessary information you can start the encode by clicking the Run button. Any output from the encoder program will appear in the output text area. The output text area utilizes a few different text styles to help the user to tell apart different types of output.

Next to the Run button there is also the Kill encoder button. This can be used to forcifully terminate the encoder process. This is not recommended, as it will for the very least create broken video files and might also have other undesired side effects on some platforms. However, killing an encoder process can be practical if the process hangs or if you have accidentally instructed it to encode something very large (time consuming). Close to the output field there is also the Save log... and Clear log buttons. The first one lets you save the current contents of the output pane to a plain text file for future reference. The second one obviously clears the output pane.

Drag and drop

As filling in all the fields by hand is not very quick nor convenient, you might prefer to make use of Veg's drag and drop support. The drag and drop functionality allows you to drag a file directly from e.g. Windows Explorer to Veg's window. Veg will then try to guess, what you would want it to do with the dropped file and fills in the fields accordingly. Veg deals differently with different kinds of files dropped.

The Send To menu

By default Veg's Windows installer installs Veg also to your Send To menu. This means that whenever you are browsing your files with for example Windows Explorer, you can send an image or a video directly to a new instance of Veg by choosing Send To->VideoEncoderGui from the file's context menu. Veg handles these files as if they were dragged and dropped to its window. However, sending multiple images this way is not very possible, as some Windows' restrictions limit the maximum number of files sent to a rather low value.

About the video codecs

A video codec is a bunch of algorithms and some code used to compress video data into fewer bits. Video data can be stored without any compression as raw video, but as this consumes large amounts of storage space, codecs are utilized in most cases. The chosen codec generally defines the image quality of the video versus the file size. An other thing to consider when choosing a codec is its compatibility. Not all codecs can be easily played back on all platforms. Veg lets you choose from five different video codecs.

Veg uses MEncoder to encode to MPEG-1, MPEG-2, MPEG-4 and Huffyuv. Only the Windows Media Video 9 codec is encoded with Windows Media Encoder. MEncoder is a resourceful video encoder released under the GNU GPL and runs on various platforms. It can encode from image sequences in jpeg, png, tga or sgi format and from many video formats. Windows Media Encoder on the other hand, is a closed-source encoder tool which can only encode from video files. It should be able to encode from any video format that is playable on some video player software (except VLC) on the same machine, but seems to have some problems using XviD videos as the source.


0.7.1 to 0.7.2

0.7.0 to 0.7.1

0.6.1 to 0.7.0

Java Runtime Environment is released by Sun Microsystems under their binary code license.
MPlayer/MEncoder, XviD and Huffyuv are released under the GNU General Public License.
VideoEncoderGui is released by VTT and is free to use. VTT grants absolutely no warranty of any kind to any of this software and it is not guaranteed to be suitable for any purpose. Also, VTT takes no liability for any damage caused directly or indirectly by the use of this software.

2005 - 2007 VTT. Last updated 2007-10-08. Valid HTML 4.01 Strict