VideoMatrix
Copyright (C) 1995-1999 VirtuaMedia Software Group, all rights reserved.





Introduction:
VideoMatrix is a video stream creation tool, it can take an input image source and convert it to an AVI stream using the installed codecs (Coder/Decoder). It can further modify the source image by scaling it, saving it to a bitmap stream and even crop widescreen elements.



Terms of usage:
VirtuaMedia Software Group
End-User License Agreement

This License Agreement (this "Agreement") is a legal agreement between you and VirtuaMedia Software Group, an Israeli software author ("VirtuaMedia") for the accompanying software, associated media, printed materials, audiovisual content, and "online" or electronic documentation (collectively, the "Product").

By installing or using the Product, you agree to be bound by the terms of this Agreement. If you do not agree to all of the terms of this agreement, de-install all copies of the Product from your computer.

LICENSE:

1.
The Product is licensed, not sold. The Product is protected by copyright law and international copyright treaty provisions, as well as other intellectual property laws and treaties. You must not allow copies of the Product or any part of it to be made or distributed to anyone else. You may make backup copies of the software for archival purposes only.

2.
VirtuaMedia grants to you a non-exclusive, non-sublicensable license to use the Product for your own use only.

3.
The Product is licensed for use on a single session of a single computer. If your computer is capable of running more than one simultaneous session, you may not use the Product on more than one session at a time. You may delete the Product from one computer and reinstall it on another, but you may not install the Product on more than one computer at any given time. If you wish to install the Product on more than one computer or use the Product for more than one session on a particular computer, you must purchase separate copies of the Product for each such computer or session.

4.
The Product in source code form is confidential and VirtuaMedia's protected trade secret, and you may not attempt to reverse engineer, decompile, disassemble or otherwise decipher any portion of the Product. Reproduction and/or redistribution of any portion of the Product is specifically prohibited in the absence of a separate written agreement with VirtuaMedia.

5.
If visual content contained in or bundled with the Product (the "Content") contains its own license agreement, that agreement controls use of the Content. Otherwise, use of the Content is controlled by this Agreement. You may not modify, copy, or distribute the Content except to the extent this Agreement allows modification, copying, or distribution of the Product. You may not use the Content except in conjunction with personal testing or demonstration of the Product. The Content must at all times remain with the Product in its original form.

6.
All video, audio, and other content accessed through the Product is the property of the applicable content owner and may be protected by applicable copyright law. This Agreement gives you no rights to such content.

7.
If you use the Product to create or distribute audio, video, or other content, VirtuaMedia is not responsible for such content, and you are solely responsible, for the property rights, legality, and regulation of all such content, including but not limited to issues of copyright ownership and obscenity regulation worldwide.

8.
VirtuaMedia retains all ownership and intellectual property rights in and to the Product. You agree to abide by the copyright law and all other applicable laws of the United States, including those relating to United States export controls. You agree not to ship or re-export any portion of the Product to any destination to which it could not lawfully have been exported originally under those export controls.

9.
VirtuaMedia may terminate this Agreement at any time by delivering notice to you, and you may terminate this Agreement at any time by removing all copies of the Product from your computer and destroying all Product materials. However, Sections 4 through 9 of this Agreement shall indefinitely survive its termination. This Agreement is personal to you and you agree not to assign your rights under it. This Agreement shall be governed by and construed in accordance with the laws of Israel and by Israeli law relating to intellectual property in general, and to copyrights, patents, and trademarks in particular. You agree to submit all disputes to the exclusive jurisdiction of courts or tribunals located within the territorial boundaries of Israel.

10.
The Product is not covered by any Warranty. THE PRODUCT IS PROVIDED WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

11.
VirtuaMedia SHALL NOT BE LIABLE: (A) FOR INCIDENTAL, CONSEQUENTIAL, SPECIAL, OR INDIRECT DAMAGES OF ANY SORT WHATSOEVER, WHETHER ARISING IN TORT, CONTRACT, OR OTHERWISE (INCLUDING WITHOUT LIMITATION DAMAGES FOR LOSS OF BUSINESS PROFITS, REVENUES, OR INFORMATION, OR FOR BUSINESS INTERRUPTION) RESULTING FROM YOUR USE OF THE PRODUCT OR YOUR INABILITY TO USE THE PRODUCT, EVEN IF VirtuaMedia HAS BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES; OR (B) FOR ANY CLAIM BY ANY PARTY OTHER THAN YOU. IN NO EVENT SHALL VirtuaMedia's LIABILITY TO YOU EXCEED THE AMOUNT YOU ORIGINALLY PAID FOR THE PRODUCT. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME COUNTRIES AND JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE ABOVE LIMITATION AND EXCLUSION MAY NOT APPLY TO YOU.

12.
The Product is provided with Restricted Rights. Use, duplication, or disclosure by the Israeli Government or any of its agencies or instrumentalities is subject to restrictions.

"VirtuaMedia" and "VideoMatrix" are registered trademarks, "VideoMatrix" and all logo and graphic designs are trademarks of the VirtuaMedia Software Group.

Other product and company names appearing in VirtuaMedia Software Group products and materials are used for identification purposes only and may be trademarks or registered trademarks of their respective companies. Registered and unregistered trademarks used in any VirtuaMedia Software Group products and materials are the exclusive property of their respective owners.

Copyright (c) 1995-99 VirtuaMedia Software Group. All rights reserved.




Codecs (Coders/Decoders):
Codecs are system components installed on your system, either by Windows itself, by 3rd party programs or Windows updates. Video Codecs are used to compress and extract a video stream, each Codec controls a specific movie format.

Some of the more popular codecs are:

  DVMPEG (MPEG1 and MPEG2 codecs).
  Microsoft MPEG4 (Requires IE4+ to access).
  Pegasus MJPEG (Motion JPEG Codec).
  MainActor MJPEG (Motion JPEG Codec).
  Morgan MJPEG (Motion JPEG Codec).
  Paradigm Matrix MJPEG (Motion JPEG Codec).

You can select an encoding codec in VideoMatrix by pressing on the Codec button, otherwise you will be prompted to select one when beginning the conversion process.



Input Sources:
Currently VideoMatrix supports two types of image sources, either through a 3rd party MPEG decoder by the name of PowerDVD or through the use of image lists.


Image Lists:
Image lists are text files where each line in the text file contains an image name and full path to the image, acceptable image formats are TrueColor Windows BMP images and TrueColor (not-grayscale) JPEG images.

Example:
  c:\source\mypic001.jpg
  c:\source\mypic002.jpg
  c:\source\mypic003.jpg
  c:\source\mypic004.jpg
  c:\source\mypic005.jpg

You can either type this in using a text editor, or use a DOS command to create a list file automatically by typing in (In a DOS prompt) something like:
"dir /s /on /b > image.lst" (Where /S = full path & recursive directory, /ON = sort by name and /B = bare display).

Once an image list file is created, you need to load it up by pressing the "Browse for Image List" button (yellow folder with transparent list on top, which only appears when the Image Source is set to "Image List"). Once the image list file is selected, the "frames" fields will list the numbers of images found within list file.

PowerDVD:
PowerDVD is a 3rd party player written by Cyberlink. One of it's interesting features (Where VideoMatrix is concerned) is that it can both screen capture an image to a standard BMP file and do a frame by frame forward advance. VideoMatrix takes advantage of this by simulating the key-strokes required for multiple-image capture. Using this control, VideoMatrix can be used to convert MPEG1 and MPEG2 video being played by PowerDVD.

When PowerDVD is set as the Image Source, and if PowerDVD is correctly installed on your system, a "Launch PowerDVD" button will appear instead of the Image List button. Pressing this button will run PowerDVD for you.

Please note, that before PowerDVD is to be used as an Image Source, it must first be seeked to the beginning of the point you want to start the conversion process, and then PAUSED. If PowerDVD is not paused, VideoMatrix will lose frames during the conversion process.



Scaling:
The problem with most MPEG2 or high-resolution images is, they are simply too big to be of any use. For example, a one hour MPEG2 stream can be nearly 2gb in size. There are several ways of reducing this size to a more manageable solution, you can either lower the bitrate, thus lowering the image quality, you can use a more advanced compression codec, or you can lower the image resolution by scaling it down (Or a combination of the three).

Scaling the image down can improve on file size, but it has a couple disadvantages:
1. More CPU time is required for the image scaling.
2. Using custom scaling sizes can lead to aliasing in the image (jaggy pixels).

To combat the CPU and Image quality issues, all VideoMatrix's routines have been designed to be fast. And all the non-custom scaling options are completely alias-free due to advanced pixel summing techniques (well, they are somewhat advanced).

Here are the scaling routines used by VideoMatrix:
Ratio Ratio scaling allows you to scaling the source image by fixed sizes, either Half, Third or Quarter of the original image size. This option was created because it allows you to have an alias-free image with very low CPU usage.
Custom Custom scaling can be set to any size smaller than the original image. Using a size larger than half the original image size will cause aliasing unless the "3x Factor Scaling" option is used. However using it will slow the scaling time by a factor of 3 (more or less). Custom scaling also supports the super-fast "Fast Scale" feature which lowers the scaling quality and takes virtually no CPU power.
Full Size This setting is of course the fastest as absolutely no scaling is used and the image is passed directly to the encoding Codec.
2/3 This setting scales the image to exactly two-thirds of it's original size with absolutely no aliasing. For example, a 720x480 NTSC MPEG2 image would be reduced to 480x320. This setting is useful if you wish to reduce the image resolution, and still maintain a relatively high resolution.

Please note that certain Codecs require the image width to be dividable by 16, if it is not, they may crash or refuse to work.

By right clicking the display area, you can automatically set the custom resolution setting to a set of pre-defined resolutions.



Frame Rates:
VideoMatrix can define a wide array of Frame Rates for a given video output.
Simply pick the appropriate frame rate from the list.

If PowerDVD is used as the input source, you may want to consider the following frame rates:

MPEG1 NTSC - 352x240 @ 29.97fps
MPEG1 PAL - 352x288 @ 25.00fps

MPEG2 NTSC TV Source - 720x480 @ 29.97fps
MPEG2 PAL TV Source - 720x584 @ 29.97fps
MPEG2 MOVIE Source - PAL/NTSC resolution @ 24.00fps




Conversion Length:
The conversion is counted by the number of frames you either type in the "Frames" field, or are automatically detected when you load an image list. The actual movie length is automatically converted into seconds, minutes and hours for your comfort, and using the navigation arrows below the time display you can add and remove frames, seconds and minutes to the capture length (Doesn't apply to image lists where the number of images is pre-determined). The "Clock" button changes the display to the number of seconds and milliseconds about to be captured.



Widescreen:
Widescreen sources have black lines below and above the image, encoding this data only increases the file size or reduces the general image quality for fixed bitrate formats. VideoMatrix sports a cropping tool to allow you to get rid of the unused widescreen area. When enabled, you can select the number of lines to cut off. The "T" - Top and the "B" - bottom. Furthermore, if you don't use the Image Lists as a source, then the Analyze button will be available to you. Simply seek the to an image that plainly shows the widescreen borders, then kick on the analyze button and it will automatically fetch an image and calculate the Top and Bottom settings for you.

When the Custom scaling is used, your vertical resolution may get distorted because it's still fixed, while the source image resolution has been lowered due to the widescreen cropping. To resolve this, you can enable the "Vertical Adjust" setting and it will automatically alter the target image height to compensate for the cropping.



AVI Frame Splitting:
The limitation of the AVI file structure size is 2gb, this can cause problems if the created movie passes this mark. This is a limit imposed by Windows and can not be bypassed. To circumvent this, VideoMatrix can automatically split the created movie to several files, you can specify the maximum number of frames before a new AVI is generated to continue the conversion process beyond the 2gb limit.

Please note that for playback, the Windows MCI interface limits the file sizes to 1gb, and the DirectShow interface to 2gb. So for total compliance, you may want to keep the created files within the 1gb size range.



Capturing to Bitmaps:
By disabling the "Encode to AVI" setting, VideoMatrix will retain the original BMP images, no scaling can occur at this point. You can optionally enable the "JPG" setting and the images will be converted to the more compact (and lossy) JPEG format. You can select the JPEG quality by choosing from the "Q" - Quality list.

Also, when converting to bitmaps, you can select a "Base Name" for the generated images. This is the beginning of the file name the images will be renamed to.
For Example: MYIMAGE as a Base Name will create MYIMAGE001.BMP, MYIMAGE002.BMP and so forth.



The Buttons (From left to right):
Information reference,
PowerDVD Launch or Image List browsing,
Codec Selection,
Begin Conversion,
Stop Conversion (Process will close cleanly),
Pause/Resume Conversion (Capture can be extended when paused),
Add Next Frame to AVI (when paused),
Skip Next Frame (when paused),
Quit program.




Miscellaneous:
Here are some of the items that didn't quite fit anywhere else:

Show Preview Window:
This will display a preview of the input images, useful for making sure everything looks fine, you should disable it when doing large conversions as it eats away at the CPU.

PowerDVD AutoActive:
Enabling this feature will make VideoMatrix automatically make PowerDVD the active application every 10-16 frames or so. This is useful for making sure that PowerDVD is always the active application (for maximum speed), but disable it if you're doing other things while converting (or if you just set PowerDVD as the active application manually).

Alternative Cap Search:
When VideoMatrix looks for the captured image generated by PowerDVD it uses a certain search routine in a loop. The default routine should offer the best stability and compatibility, but for some obscure reason it may not work on every system (had one report that it doesn't work), setting to the alternative routine may work in these cases, however the alternative routine is not as stable and will not work with all versions of PowerDVD so don't use it if the default setting works.



Troubleshooting:

Problem: Image times out on the first image when using PowerDVD as the Image Source.
Solution: If you are using a DVD Accelerator card that is supported by PowerDVD (ATI, S3, SiS), make sure that the "Hardware acceleration" is disabled in the playback options, otherwise screen capturing is disabled in PowerDVD and VideoMatrix can't acquire the images.

Problem: No images are detected in my image list.
Solution: Make sure the text file contains a full path to each image.

Problem: VideoMatrix crashes when i try to use image lists.
Solution: Make sure all the images at 24bit (True Color) and of the same resolution!









The End.