[INTEL NAVIGATION HEADER]

The Indeo® Video Setup Program

Calling the Indeo® Video Setup Program | Modifying the Indeo® Video Setup Program


Indeo® video is Intel's software-only compression and decompression technology for playing video on your personal computer. Read this document if you are developing a multimedia software application that must install the Indeo video drivers.

If you are developing an application that uses Indeo video, you can install the Indeo video drivers in either of two ways:

This document explains what you need to know in order to do either of these things.


Calling the Indeo® Video Setup Program
The default Indeo video setup program installs the Indeo video drivers in the appropriate folders on the user's system, and modifies system files as required by the operating system. The 32-bit driver installation is used with Windows 95* and Windows NT*, and the 16-bit driver installation is used with Windows 3.x*. iviall.exe contains the setup for both the 32- and 16­bit installations, allowing the user to select between the two depending on the operating system. ivi32.exe is the 32­bit setup program. ivi16.exe is the 16­bit setup program. Call the required installation from within your own setup program.

The setup program changes the user's system as described below.

Windows* 95
The 32­bit setup program installs the Indeo video drivers in the Windows 95 System subdirectory \windows\system. Setup puts the following entries in the system.ini file:


[drivers32]

VIDC.IV41=ir41_32.dll VIDC.IV32=ir32_32.dll VIDC.IV31=ir32_32.dll VIDC.YVU9=iyvu9_32.dll

Setup also places the following entries in the HKEY_LOCAL_MACHINE section of the system registry:


System\CurrentControlSet\control\MediaResources\icm\vidc.IV41
System\CurrentControlSet\control\MediaResources\icm\vidc.IV32
System\CurrentControlSet\control\MediaResources\icm\vidc.IV31
System\CurrentControlSet\control\MediaResources\icm\vidc.YVU9

Windows NT*
The 32­bit setup program installs the Indeo video drivers in the Windows NT System32 subdirectory (\windows\system32). Setup puts the following entries into the HKEY_LOCAL_MACHINE section of the system registry:


Software\Microsoft\Windows NT\CurrentVersion\Drivers32\VIDC.IV41
Software\Microsoft\Windows NT\CurrentVersion\Drivers32\VIDC.IV32
Software\Microsoft\Windows NT\CurrentVersion\Drivers32\VIDC.IV31
Software\Microsoft\Windows NT\CurrentVersion\Drivers32\VIDC.YVU9
Software\Microsoft\Windows NT\CurrentVersion\drivers.desc\IR41_32.DLL
Software\Microsoft\Windows NT\CurrentVersion\drivers.desc\IR32_32.DLL
Software\Microsoft\Windows NT\CurrentVersion\drivers.desc\IYVU9_32.DLL

Windows* 3.x
The 16-bit setup program installs the Indeo video drivers along with Microsoft's Video for Windows* 1.1e runtime software. It places the following entries in the system.ini file for the Indeo video drivers:


[drivers]

VIDC.IV41=ir41.dll VIDC.IV32=ir32.dll VIDC.IV31=ir32.dll VIDC.YVU9=iyvu9.dll


Modifying the Indeo® Video Setup Program
You can distribute the Intel setup utility freely with any application that uses Indeo video and the Video for Windows executable files, either unmodified or modified to install additional files as required by your application.

NOTE: If you modify the setup utility, you are responsible for supporting it.

Modifying the 32-bit Setup Utility
The Intel 32­bit installation program is based on a .RUL file to be used with the installation templates of InstallSHIELD.* To effectively use and modify this file, you will need to purchase InstallSHIELD from Stirling Technologies, Inc. If you have done so, download the file setup.rul and modify it to install the drivers specified above.

Modifying the 16-bit Setup Utility
If you are producing a 16­bit application, download the following files and modify them as detailed below.

  1. To download the files and modify them:
  2. Delete the directory c:\indeotmp if necessary.
  3. Download the file ivi16.exe.
  4. When the dialog appears, uncheck the box that reads: When Done Unzipping, Run: setup so that setup does not run.
  5. The files you require are unzipped and placed in the directory c:\indeotmp. Go to that directory or refresh your view of it so they are visible.
  6. Edit the files as described below using Notepad or other application suitable for editing text files.
  7. Make a new zip file for your users, naming it a different name so that it cannot be confused with ivi16.exe.

The following files are downloaded:

The Intel setup utility installs the Video for Windows executable files and all of the latest Indeo video drivers. These files do not all fit on one 3.5" diskette. If necessary, you can delete one or more files from the setup utility in order to fit all the files on one diskette.

setup.exe
The file setup.exe starts up execution. It first creates a temporary directory on the hard disk in which to copy files used during the installation process. The name of the temporary directory (~msstfqf.t) and the names of the temporary files are determined by the contents of the text file setup.lst. Most of the temporary files are compressed: you can tell a compressed file because the last character of its name is an underscore. setup.exe decompresses these files as it copies them into the temporary directory.

setup.lst
Example 1 shows a typical setup.lst:

Example 1: setup.lst


[Params]
 WndTitle   = Video for Windows 1.1 Runtime
 WndMess    = Initializing Setup...
 TmpDirSize = 500
 TmpDirName = ~msstfqf.t
 CmdLine    = _mstest setup.mst /C "/S %s %s"
 DrvModName = DSHELL
[Files]
 setup.mst  = setup.mst
 setup.inf = setup.inf
 setupapi.in_ = setupapi.inc
 msdetect.in_ = msdetect.inc
 mscpydis.in_ = mscpydis.inc
 mscpydis.dl_ = mscpydis.dll
 mscomstf.dl_ = mscomstf.dll
 msinsstf.dl_ = msinsstf.dll
 msuilstf.dl_ = msuilstf.dll
 msshlstf.dl_ = msshlstf.dll
 mscuistf.dl_ = mscuistf.dll
 msdetstf.dl_ = msdetstf.dll
 iniupd.dl_   = iniupd.dll
 _mstest.ex_  = _mstest.exe
 _mssetup.ex_ = _mssetup.exe
 profdisp.ex_ = profdisp.exe

The [Files] section lists all of the files that setup.exe copies into the temporary directory. The source files are on the left and the destination files are on the right.

setup.mst
When all the files have been uncompressed and copied into the temporary directory, setup.exe executes the BASIC script in setup.mst. This script takes the following steps:

  1. Verify that setup is running on the correct version of Windows.
  2. Display the Welcome dialog.
  3. Install the files listed in setup.inf.
  4. Place text entries in the files system.ini, win.ini, and control.ini.
  5. Place the Media Player icon in the Accessories group.
  6. Profile the display.
  7. Restart Windows.
  8. Delete the temporary directory.

You will probably not need to change most of this code, except for the subroutine named Install near the end of the file-particularly the four lines shown in Example 2.

Example 2: from the install subroutine in setup.mst


CreateIniKeyValue
WinDir$ + "system.ini", "Drivers", "VIDC.IV41","ir41.dll", cmoOverwrite
Run ("regedit.exe /s " + MakePath(WinDir$, "mplayer.reg"))
CreateProgmanItem "Accessories", "Media Player",
MakePath(WinDir$,  "mplayer.exe"), "", cmoOverwrite
Run ("profdisp.exe")

The code that usually needs modification is that which calls CreateIniKeyValue. CreateIniKeyValue is a call to a routine that places text entries in the system.ini and control.ini files. This call looks in the Windows directory Windir$ for the system.ini file and puts this entry in the [Drivers] section, overwriting any previous VIDC.IV41 entries:


VIDC.IV41=ir41.dll

The second line of Example 2 runs the Windows Regedit utility using data stored in a file called mplayer.reg.

The third line of Example 2 puts the Media Player icon in the Windows Accessories group.

The last line of Example 2 runs a program called profdisp.exe, which profiles the display-that is, determines the performance and characteristics of the user's graphics card-and places the results in the [drawdib] section of the win.ini file. (profdisp.exe is one of the temporary files copied by setup.exe into the temporary directory and deleted when setup is complete.)

If an installation fails for unknown reasons, you can comment out lines of code in setup.mst by placing two apostrophes at the beginning of the line.

setup.inf
setup.inf contains the names of the files to install. Each file is described by a line containing entries for such information as diskette number, file name, date, size, and version number, separated by commas. The commas in each line are critical, but spaces are not.

The line for the Indeo video interactive driver (for example, Version 4.11.1.62) appears as shown in Example 3.

Example 3: the Indeo® video interactive driver as described in setup.inf


1, ir41.dll,,,, 1995-11-09,,, OLDER, !READONLY,,,,, SHARED, 774960,,,,4.11.1.62,

Example 3 shows that setup gets the file from diskette #1. The name of the file to copy and expand is ir41.dll. It is assigned the creation date of 1995-11-09; if another file of the same name already exists on the hard drive, the file is copied only if the existing file is older (OLDER). The file is not made read-only (!READONLY). It is treated as a shared file, meaning it is copied even if it is already in use by the system (SHARED). Finally, setup verifies the file size (774960) and version number (for example, 4.11.1.62).

Modify or delete any of the entries in setup.inf as required by your new installation routine.

mscuistf.dll
mscuistf.dll contains the dialogs used by setup during installation, such as the Welcome box. mscuistf.dll is expanded and copied into the temporary directory during startup. You can modify these dialogs directly within the .dll file using utilities such as App Studio (which comes with Microsoft Visual C++*) to customize your setup routine.

The Intel setup utility installs these codecs:

Filename Description System.ini entries
ir41.dll Intel Indeo® Video R4.1 VIDC.IV41=ir41.dll
ir32.dll Intel Indeo® Video R3.2 VIDC.IV31=ir32.dll, VIDC.IV32=ir32.dll
iyvu9.dll Intel Indeo® Video Raw VIDC.YVU9=iyvu9.dll
iccvid.drv Cinepak VIDC.CVID=iccvid.drv
msvidc.drv MS Video 1 VIDC.MSVC=msvidc.drv
msrle.drv MS RLEVIDC.MRLE=MSRLE.drv

We recommend that you install them all. However, is space is a problem, you can remove any one of these files, if your application does not need it, to reduce the size of the setup utility.


* Legal Stuff © 1997 Intel Corporation

Free Web Hosting