|
Depending on how you program or script your application and the level of control you want to have, you can choose to access Intel RDX technology directly from the core Intel RDX APIs or through COM-compliant interfaces designed for users of C/C++, the Microsoft virtual machine for Java* or scripting APIs. These interfaces provide a subset of the Intel RDX API functionality and are suitable for creating applications written in high-level programming languages. They make more assumptions and require less input from the developer than the core Intel RDX APIs. Developers who are creating multimedia applications in C or C++ can use either the core Intel RDX APIs or the higher-level RDX COM Interfaces.
Intel RDX COM follows the Component Object Model (COM) standard for defining interface methods. The Intel RDX COM interfaces encapsulate the Intel RDX base-level interfaces into COM objects. This division provides a set of interfaces for Java programmers using the Microsoft virtual machine for Java and another set for C or C++ programmers. Intel RDX COM interfaces do not support 16-bit color surfaces, virtual surfaces, or certain special effects, but they do have the ability to map surfaces to any display mode. Visual Basic* programmers can access the Intel RDX COM classes directly from their applications.
Java
The Intel RDX COM Java classes derive from the Intel RDX COM Interfaces and require the
Microsoft virtual machine for Java. The Intel com.intel.media.rdxcom package groups
together a set of classes and interfaces that define a set of related fields,
constructors, and methods for Java programmers.
Scripting
Intel ActiveRDX Control exposes the Intel RDX objects for scripting engines.
Developers can embed Intel ActiveRDX controls in their VBScript*,
JavaScript*, and other script language applications. Web applications or
browsers can embed ActiveX multimedia controls to invoke these scripts. The Intel
ActiveRDX Control Reference describes the supported properties, methods, events, and
usage model for this control.
These release notes include information on installing and using the RDX COM interfaces and cover the following topics:
For a description and example of how to get started using the Intel RDX COM interfaces for C/C++, see the Intel Realistic Display Mixer COM Interface Usage Guide (COMuse.doc).
The Intel RDX COM Interfaces require the following software and hardware:
Minimum hardware: | PC with an Intel486™ DX2 processor, running at 66 MHz, with 8 megabytes of RAM. |
Recommended hardware: | PC with a Pentium processor, running at 90 MHz, with 16 megabytes of RAM. |
Minimum configuration: | Windows 95 or Windows NT 4.0. Any supported 32-bit ANSI C compiler. Internet Explorer*, 3.01 or later. DirectX* 2.0 or later VBScript 2.0 or later |
Java only Minimum configuration: |
Visual J++ and the Microsoft SDK for Java must be previously installed. |
This release of the Intel RDX COM Interfaces contains the following:
ActiveRDX Sample
This sample uses VBScript to access the local file path. In IE 3.0x, the command in
VBScript used to get the local document location returned the file URL "file:path"
as its document location. However, with IE 4.0, this call returns "file:///path".
As a result, we needed to modify our sample to parse the string properly.
Note To modify the sample to run in the IE 3.0x browser environment, change line 8 of the function getRootDir from baseString = Mid(baseString, 9, len(baseString)) to baseString = Mid(baseString, 6, len(baseString)).
Java Sprite Sample and RDX COM Tutorial
These two Java samples have been modified to support the Microsoft SDK for Java 2.0
changes which are supported by IE 4.0. With the new version, for a Java class to get a
window handle it needs to define a specific interface named HeavyComponent.
To gain access to the native window handle, we made changes to our AnimCanvas class that
shipped with these samples to support this interface.
Note To run these applets under IE 3.0x, change the AnimCanvas.java class to remove the support for interface "HeavyComponent" and corresponding method "needHeavyComponent". Recompile the new applet and it should work with IE 3.0x.
ActiveRDX Control
The ActiveRDX control now registers under categories CATID_SafeForScripting and
CATID_SafeForInitializing. This should not cause any problems while running under IE
3.0x versions.
Windows NT 4.0 Support
You can now use Intel RDX technology with Windows NT 4.0. Most of the APIs, tools,
and samples can be used in this environment with the following exceptions:
HTML Samples: | RDX COM displays palettes improperly in 8 bits per pixel (bpp) display modes in Internet Explorer environments. |
Runtime Installation Tools
The runtime installation tools have been updated to install on Windows NT 4.0 and to
better handle difficult installation scenarios. The "Developer's Installation and Usage
Notes" section was updated to reflect these changes.
Fixes
These improvements to existing functionality and samples were made:
1. The RDX COM Tutorial now properly displays the source code when
those links are selected.
COM sample | SPRITE sample in C++ |
Java samples | ComSprSamp1 and RdxComTutorial1 |
ActiveRDX samples | Sample using ActiveRDX |
Notes
The following RDX specific error codes are defined:
RDXINST_NOERR | // Intel RDX technology successfully installed. |
RDXINST_UNKNOWN | // An unknown error occurred or the installed // operating system is not supported. |
RDXINST_WRONGOSVERSION | // Install error-the current OS or OS // version is not supported. |
Example:
. . .
SetupFilesToTransfer:
TARGETDIR = svTarget;
TransferFiles:
SetStatusWindow( -1, "Installing RDX technology runtime..." );
result = InstallRDX();
if (result) then
NumToStr(szTemp, result)
MessageBox( "RDX runtime installation failed \n" +
"\n" +
"error code " + szTemp,
WARNING );
endif;
. . .
To complete the installation package, place RDXDATA.Z on the installation disk and put RDXDATA.Z in the packaging list.
Note When InstallRDX returns, the registry default root key is set to HKEY_LOCAL_MACHINE and LOGGING is enabled. If you need the default root key to be something else, then you must set it. If you disabled logging, you need to enable it again.
Installation DLL
If you are not using InstallShield, a DLL called RDXINST.DLL is provided that exports
functions to install and uninstall the Intel RDX technology, as well as setup the registry.
Make sure to include these files on your CD-ROM for a successful install: RDXINST.DLL,
DMIX.DL_, DINO2D.DL_, DINOAV.DL_, RDXAM.DL_, RDXMMX.DL_, RDXP5.DL_, RDXVID.AX_, RDXCOM.DL_,
RDXCOM.TL_, ACTIVERDX.OCX, ACTIVERDX.TLB, MSVCRT40.DL_, MFC40.DL_, and the 55 *.CLASS
files.
The DLL supports these functions:
wOptions | is an option flags parameter. INSO_FORCEWRITEPROT |
Optional flag values are: // Forces overwriting a write-protected // file if it is found while installing. // This is not set by default. |
lpwStatus | is a pointer to the returned status. INSS_ALLOK |
The only current valid return status value is:
// Indicates that no special action is // required after successfully calling // this function. |
This function installs the Intel RDX runtime DLLs to the Windows system directory. It will overwrite only older versions. You can set the variable pszSrcDir to the directory where InstallRDX can find the compressed DLLs. By default this variable is set to the same directory where the install DLL file resides.
Note This function will no longer request a reboot if files cannot be replaced. Instead your application should handle the INSE_CLOSEALLAPPS error return code.
Returns:
INSE_NOERROR | // Successful install. Check lpwStatus // to see if any special action is required. |
INSE_NOTFOUND | // Install error-one or more of the // system components could not be // found. Check to see that the // pszSrcDir variable contains the path // of the source files if they are not in // the same directory as the installation // DLL. |
INSE_OUTOFSPACE | // Install error-ran out of disk space // while installing the system // components. |
INSE_CANTMAKEPATH | // Install error-failed to create a // required directory. |
INSE_WRITEPROTECTED | // Install error-one or more files are // write protected. |
INSE_CANTRENAMETEMP | // Install error-could not rename a // temporary file to its final long file // name. |
INSE_CLOSEALLAPPS | // Install error-one or more files could // not be replaced because they are // probably in use by another // application. You should request // that the user first shut down all // other applications. Afterwards, try // to install Intel RDX again by making // another call to InstallRDX. |
INSE_UNKNOWN | // Install error-an unknown internal // error has occurred. |
INSE_WRONGOSVERSION | // Install error-the current OS or OS // version is not supported. |
BOOL WouldDelete()
int UninstallRDX(LPWORD lpwStatus)
lpwStatus | is a pointer to the return status INSS_ALLOK |
Valid return status values are: // Indicates that no special action is // required after successfully calling // this function. |
INSS_NEEDREBOOT | // One or more of the system // components were found to be in // use and will not be deleted until // the system is rebooted. |
This function should be called from the uninstall program. Most of the Intel RDX technology system components are considered shared, so the files are actually deleted only if there are no other programs using them. This is accomplished using a usage count in the registry.
If InstallRDX is called three times successfully, none of the system components would be removed until UninstallRDX is called an equivalent number of times successfully.
Returns:
INSE_NOERROR | // Successful install. Check lpwStatus // to see if any special action is required. |
INSE_NOTINSTALLED | // Uninstall error-Intel RDX was not // already installed. |
INSE_WRONGOSVERSION | // Install error-the current OS or OS // version is not supported. |
long RequiredDiskSpace()
If successful, a positive value is returned that represents the number of bytes required. A negative value indicates that an error occurred. The following error return values are defined:
INSE_NOTFOUND | // Install error-one or more of the // system components could not be // found. Check to see that the // pszSrcDir variable contains the // path of the source files if they // are not in the same directory as // the installation DLL. |
INSE_WRONGOSVERSION | // Install error-the current OS or OS // version is not supported. |
CAB File
Developer Installation Considerations for Java
Read this section if you want to publish Java applet-based HTML pages.
The page developer must understand that the runtime is required for an end user to view your page and applet. For this reason, we have supplied rdxcom.cab with the Intel RDX COM Interfaces. This is a digitally-signed version of the runtime which the end user can download. Internet Explorer 3.0 allows you to insert the following in your HTML page to allow downloading of the runtime if the runtime is not available on the end-user's machine.
<OBJECT
CLASSID="clsid:833CA720-11FE-11d0-B036-00AA00B77C3B"
CODEBASE=
"http://www.YourWebSite/YourLocation/rdxcom.cab"
>
</OBJECT>
Note 1 We recommend that you place the CAB file on your server to enable end users to run your applet.
Note 2 Some versions of Internet Explorer do not install extrac32.exe. This executable is necessary for RDX technology to be installed successfully from the rdxcom.cab file. If you do not have extrac32 on your system, install the latest version of Internet Explorer from the Microsoft Web site (www.microsoft.com/ie).
General
Win95 Registration
Java requires that the classes of any applet be located in the classpath of Java or
in a registered path.
Digital Signature Note
Currently, the Internet Explorer Browser requires that downloaded CAB files be digitally
signed to certify the safety of their contents.
*Other product and corporate names may be trademarks of other companies and are used only for explanation and to the owners' benefit, without intent to infringe.
* Legal Information © 1998 Intel Corporation