Vicon Video Converter is a command line video-processing tool that is supplied with the Vicon Video Viewer. It provides direct access to some of the video conversion functionality that is present in Vicon Shogun Post.
Vicon Video Converter enables advanced users to manipulate video. It can do the following:
- Convert between video container formats such as VVID, AVI and MOV.
- Convert between various video encoding formats (codecs), particularly pixel formats such as Bayer, RGB and YUV.
- Convert a video file to an image sequence.
- Convert between PCM audio formats and remove audio tracks.
- Add a burnt-in timecode to a video using metadata that is saved from a Vicon application.
- Adjust gamma correction when converting from Bayer formats.
- Adjust color saturation when converting from Bayer formats.
- Correct lens distortion using calibration information saved in the metadata of a video file.
It is used to convert videos saved from Vicon applications, in particular VVID files.
ViconVideoConverter is for use with video files generated by Vicon applications. It does not read most common video formats, most of which are highly compressed. If you need a general-purpose video conversion tool that supports a range of modern compressed formats, consider using FFMPEG.
This guide contains the following information:
By default, Vicon Video Converter is installed in C:\Program Files\Vicon\ViconVideoViewer. You can change into this directory to run it, or you can add it to the paths in the PATH environment variables so that it is easier to run from the directory containing your video.
To display a summary of the options available, use the
To display the list of supported container and video and audio payload formats, use the --list-formats switch. These correspond to the arguments allowed for the --video-payload and --audio-payload format. The input and output container formats are determined from the filename of the video file, such as
Converting between formats
A common use of Vicon Video Converter is to convert a VVID format to a MOV file. VVID files are Vicon's own uncompressed video format. Converting a VVID file to a MOV file enables the file to be recognized in third-party video software, and compressing the data as ImageJPEG can significantly reduce the size of the video with minimal cost in loss of quality.
In this example, the
-o short versions of the
--output-file switches are used.
ViconVideoConverter -i C:\temp\VideoInputFile.vvid -o C:\temp\VideoOutputFile.mov -v ImageJPEG
To change the JPEG quality, use the
-q switch. The scale is 0 (small file, large loss of quality) to 100 (large file, minimal quality loss). The most useful range for practical purposes is around 40 to 90.
ViconVideoConverter -i C:\temp\VideoInputFile.vvid -o C:\temp\VideoOutputFile.mov -v ImageJPEG -q 40
Convert a video to an image sequence
To convert a video to an image sequence, specify an image file format such as
.jpg in the output file and specify the special string
%FRAME% in the filename. The
%FRAME% string is replaced by the frame number when the files are written out.
ViconVideoConverter -i C:\temp\VideoInputFile.vvid -o C:\temp\VideoOutputFile_%FRAME%.jpg -v ImageJPEG
Adding burnt-in timecode
You can add burnt-in timecodes to videos for editorial/reference purposes. Burnt-in timecodes cannot be removed, so it is important to keep the original video. In this example a large timecode is displayed at co-ordinates 20, 20. These are measured from the top-left of the image and specify the top-left of the timecode text.
ViconVideoConverter -i C:\temp\VideoInputFile.vvid -o C:\temp\VideoOutputFile.mov -v ImageJPEG --burn-in-timecode --burn-in-timecode-size large --burn-in-timecode-x 20 --burn-in-timecode-y 20
Changing gamma and saturation
If the video format is Bayer-based then the gamma and saturation values used for display at the time of capture are stored in the VVID file. By default, these are applied during conversion to a non-Bayer format. You can also override these values with different values if desired. For example, to set gamma to 2.1 and saturation to 1.5, you could use the following command:
ViconVideoConverter -i C:\temp\VideoInputFile.vvid -o C:\temp\VideoOutputFile.mov -v ImageJPEG --gamma 2.1 --saturation 1.5
Correcting lens distortion
If a video was created on a system that was calibrated and the calibration was stored in either the video file or a separate calibration file, you can correct for lens distortion.
Videos from Shogun Live
Video files from Vicon Shogun Live 1.2.1 or later contain calibration information in the VVID file, so you can undistort them without specifying a separate calibration file:
ViconVideoConverter -i C:\temp\VideoInputFile.vvid -o C:\temp\VideoOutputFile.mov -v ImageJPEG --correct-lens-distortion --threads 1
Videos from Nexus
Video files from Vicon Nexus do not contain calibration information so you must specify an XCP file containing the calibration. Because XCP files typically contain the lens calibration information for many cameras, you must specify which one using the device URN. For calibrations from Shogun Live, the URNs typically take the form mx:123456 or vi:01. For calibrations from Vicon Nexus, they are likely to be similar to dv:123456. You can open the XCP file in a text editor.
ViconVideoConverter -i C:\temp\VideoInputFile.vvid -o C:\temp\VideoOutputFile.mov -v ImageJPEG --correct-lens-distortion --threads 1 --calibration-file C:\temp\Calibration.xcp --calibration-device-urn dv:123456