IMMDigitalVideo

The IMMDigitalVideo class provides behavior for digital software motion video. It supports playback of video in either a system-provided default window or a user-specified window. It provides functions for playing and controlling video in a default window or an application window. There are also functions for playing the video at different speeds.


IMMDigitalVideo - Member Functions and Data by Group

Constructors & Destructor

You can construct and destruct objects of this class.


[view class]
~IMMDigitalVideo
public:
virtual ~IMMDigitalVideo()

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
IMMDigitalVideo


Overload 1
public:
IMMDigitalVideo( bool openNow = true, unsigned long instance = 0, bool openShareable = true )

You can construct an IMMDigitalVideo from the following:

openNow
If true, it causes the device to automatically open the device before returning from the constructor; otherwise, you would have to call one of the open functions to open the device yourself.
instance
You can provide your own instance number instead of letting IMMDigitalVideo generate one.
openShareable
If true, it allows the hardware device to be shared by different programs; otherwise, the hardware cannot be shared.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


Overload 2
protected:
IMMDigitalVideo( unsigned long deviceIdentifier, const IString& newAlias )

A derived class can construct an IMMDigitalVideo from the following:

deviceIdentifier
The value the system uses to identify the device.
newAlias
The name you can use to associate a string to the device. Optional.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


Capabilities

Use these members to query the capabilities for the current device.


[view class]
supportsOverlayGraphics
public:
bool supportsOverlayGraphics(CallType call = wait) const

Returns true if the device supports the display by an application of overlay graphics in a video window.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
supportsReverse
public:
bool supportsReverse(CallType call = wait) const

Returns true if the device can play in reverse.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
supportsSizing
public:
bool supportsSizing(CallType call = wait) const

Returns true if the device can independently stretch the horizontal and vertical dimensions of the image. This is different than supportsStretchToFit, which forces both horizontal and vertical dimensions to be stretched in the same proportion. For example, if you stretch the horizontal dimension by 10%, then the vertical dimension must stretch by 10%.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
supportsStretchToFit
public:
bool supportsStretchToFit(CallType call = wait) const

Returns true if the device can stretch the video frames to fill the display rectangle. Thus, both the horizontal and vertical dimensions must be stretched by the same proportion. For example, if you stretch the horizontal dimension by 10%, then the vertical dimension must stretch by 10%. This is different than supportsSizing, which allows both horizontal and vertical dimensions to be stretched independently of each other.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


Implementation

These members validate the open string, translate the audio flags, and play the video file using the passed-in speed and range.


[view class]
isOpenStringValid
protected:
virtual bool isOpenStringValid( const IString& deviceName ) const

Returns true if the passed-in open string is valid for this device.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
playDigital
protected:
IMMDigitalVideo& playDigital( const IMMTime& from = IMMTime ( ), const IMMTime& to = IMMTime ( ), CallType call = nowait, unsigned long flags = 0, unsigned long speed = 0 )

Allows the playing from a start to an end position with the specified flags and speed. If from is omitted, play starts at the current position; if to is omitted, play stops at the end of the video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid from position; possibly the from position is greater than the end position or the from position is greater than the to position.
IAccessError Invalid to position; possibly the to position is greater than the length of the video file.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
restoreDeviceSettings
protected:
virtual IMMDigitalVideo& restoreDeviceSettings( bool newRecordMode = false )

Restores settings for the current device. Derived classes should override this function, handle class-specific settings, and call the corresponding inherited function.

Supported Platforms

Windows OS/2 AIX
Yes No No


[view class]
saveDeviceSettings
protected:
virtual IMMDigitalVideo& saveDeviceSettings()

Saves settings for the current device. Derived classes should override this function, handle class-specific settings, and call the corresponding inherited function.

Supported Platforms

Windows OS/2 AIX
Yes No No


[view class]
translateAudioFlag
protected:
virtual unsigned long translateAudioFlag( unsigned long ) const

Maps the wave audio commands to the digital video values. The digital video and the wave audio device both support setting the bytes-per-second, but the actual system values are different. By allowing the mapping of the wave audio values to the digital video values, the digital video player does not have to override all of the audio functions because they call this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


Playback

Use these members to play a video at different rates.


[view class]
isPlayingForward
public:
bool isPlayingForward(CallType call = wait) const

Returns true if the play direction is forward or if the device is not playing.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
play
public:
virtual IMMDigitalVideo& play( const IMMTime& from = IMMTime ( ), const IMMTime& to = IMMTime ( ), bool resumeIfPaused = true, CallType call = nowait )

Starts playing the device from the passed-in start position to the passed-in end position. If from is omitted, the device starts playing at the current position; if to is omitted, play stops at the end of the data. If resumeIfPaused is true and the device is paused, it resumes playback of the device; otherwise, it starts playback from the passed in start position.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IInvalidRequest There is no data present; possibly no file is loaded or no media is in the device.
IAccessError Invalid from position; possibly the from position is greater than the end position or the from position is greater than the to position.
IAccessError Invalid to position; possibly the to position is greater than the length of the data.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
playAt
public:
IMMDigitalVideo& playAt( const IMMSpeed& speed, const IMMTime& from = IMMTime ( ), const IMMTime& to = IMMTime ( ), CallType call = nowait )

Plays the video at the specified speed from the start position to the end position. If from is omitted, play starts at the current position; if to is omitted, play stops at the end of the video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid from position; possibly the from position is greater than the end position or the from position is greater than the to position.
IAccessError Invalid to position; possibly the to position is greater than the length of the video file.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
playFast
public:
IMMDigitalVideo& playFast( const IMMTime& from = IMMTime ( ), const IMMTime& to = IMMTime ( ), CallType call = nowait )

Plays the video at the fast speed from the start position to the end position with no audio. If from is omitted, play starts at the current position; if to is omitted, play stops at the end of the video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid from position; possibly the from position is greater than the end position or the from position is greater than the to position.
IAccessError Invalid to position; possibly the to position is greater than the length of the video file.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
playScan
public:
IMMDigitalVideo& playScan( const IMMTime& from = IMMTime ( ), const IMMTime& to = IMMTime ( ), CallType call = nowait )

Plays frames when indexed; otherwise, it plays the video as fast as possible (without disabling the video) from the start position to the end position with no audio. If from is omitted, play starts at the current position; if to is omitted, play stops at the end of the video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid from position; possibly the from position is greater than the end position or the from position is greater than the to position.
IAccessError Invalid to position; possibly the to position is greater than the length of the video file.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
playSlow
public:
IMMDigitalVideo& playSlow( const IMMTime& from = IMMTime ( ), const IMMTime& to = IMMTime ( ), CallType call = nowait )

Plays the video at the slow speed from the start position to the end position with no audio. If from is omitted, play starts at the current position; if to is omitted, play stops at the end of the video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid from position; possibly the from position is greater than the end position or the from position is greater than the to position.
IAccessError Invalid to position; possibly the to position is greater than the length of the video file.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


Playback Speeds

Use these members to query the device's playback rates and the current playback rate.

Windows Considerations

The returned speed values will be in frames-per-seconds format.

[view class]
fastSpeed
public:
IMMSpeed fastSpeed(CallType call = wait) const

Returns the device's fast playback rate in the current speed format, either as a percentage or in frames-per-second. Returns 0 if the device cannot play fast.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
fileNormalSpeed
public:
IMMSpeed fileNormalSpeed(CallType call = wait) const

Returns the normal play rate of the currently loaded video file, in the current speed format, either as a percentage or in frames-per-second. This is the playback speed stored in the video file when the video file was created. Returns 0 if no file is currently loaded.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
maximumSpeed
public:
IMMSpeed maximumSpeed(CallType call = wait) const

Returns the maximum play rate in the current speed format, either as percentage or in frames-per-second.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
minimumSpeed
public:
IMMSpeed minimumSpeed(CallType call = wait) const

Returns the minimum play rate in the current speed format, either as percentage or in frames-per-second.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
normalSpeed
public:
IMMSpeed normalSpeed(CallType call = wait) const

Returns the device's normal play rate in the current speed format, either as a percentage or in frames-per-second.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
slowSpeed
public:
IMMSpeed slowSpeed(CallType call = wait) const

Returns the device's slow playback rate in the current speed format, either as a percentage or in frames-per-second. Returns 0 if the device cannot play slow.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
speed
public:
IMMSpeed speed(CallType call = wait) const

Returns the currently set speed for the device.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


Record and Monitoring

Use these members to record from a video capture card, monitor the video signal, and change the monitor window.


[view class]
disableMonitoring
public:
virtual IMMDigitalVideo& disableMonitoring( CallType call = wait )

Sets monitoring of the incoming video signal off. When monitoring is turned on, a monitor window is created. When the monitor window is active and recording is not in progress, the monitor window displays the entire video source image, regardless of any source rectangle setting. During recording, only the area being captured is displayed.

Monitoring during real-time recording is supported but at a reduced performance. Monitoring cannot be turned on or off during recording, that is, if it is on when recording starts it must remain on while recording is in progress. Attempting to turn monitoring on or off during real-time recording results in an exception.

During monitoring, audio is passed through and heard on the speakers or headphones connected to the sound card, if present.

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
enableMonitoring
public:
virtual IMMDigitalVideo& enableMonitoring( bool enable = true, CallType call = wait )

Sets monitoring of the incoming video signal on or off. When monitoring is turned on, a monitor window is created. When the monitor window is active and recording is not in progress, the monitor window displays the entire video source image, regardless of any source rectangle setting. During recording, only the area being captured is displayed.

Monitoring during real-time recording is supported but at a reduced performance. Monitoring cannot be turned on or off during recording, that is, if it is on when recording starts, it must remain on while recording is in progress. Attempting to turn monitoring on or off during real-time recording results in an exception.

During monitoring, audio is passed through and heard on the speakers or headphones connected to the sound card, if present.

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
isMonitoringEnabled
public:
bool isMonitoringEnabled(CallType call = wait) const

Returns true if monitoring of the incoming video signal is enabled.

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
monitorHandle
public:
IWindowHandle monitorHandle(CallType call = wait) const

Returns the window handle for the current video monitor window.

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
record
public:
virtual IMMDigitalVideo& record( const IMMTime& end = IMMTime ( ), bool resumeIfPaused = true, CallType call = nowait )

Starts recording till it reaches the end location. If there was anything previously recorded, it is deleted before the recording starts. If the end location is not specified, recording continues until a pause or stop occurs. It is recommended that you temporarily acquire the device exclusively while you are recording; otherwise, the recording can become inactive if another device requests access to the device.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
setMonitorWindow

Supplies a window where you can see the incoming video signal if monitoring is enabled. For example, you might want your monitor window in a canvas. If so, pass the handle of the canvas to this function. By default, the IMMDigitalVideo class creates and uses its own video monitor window. This function allows an application to provide its own video monitor window. To switch back to using the default video monitor window, call useDefaultMonitorWindow.


Overload 1
public:
IMMDigitalVideo& setMonitorWindow( const IWindow& window, CallType call = wait )

Supported Platforms

Windows OS/2 AIX
No Yes No


Overload 2
public:
IMMDigitalVideo& setMonitorWindow( const IWindowHandle& handle, CallType call = wait )

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
useDefaultMonitorWindow
public:
IMMDigitalVideo& useDefaultMonitorWindow( CallType call = wait )

Specifies that the digital video class creates and manages its own video monitor window. You can use it to set the video monitor window back to the default video monitor window.

Supported Platforms

Windows OS/2 AIX
No Yes No


Video Window

These members are used to change the video window attributes and to play the loaded video at a different rate than normal.


[view class]
destinationRectangle
public:
IRectangle destinationRectangle(CallType call = wait) const

Returns the subrectangle within the video window where video is played. This allows an application to move, grow, or shrink where the video is played inside the video window.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
handle
public:
IWindowHandle handle(CallType call = wait) const

Returns the window handle for the current video playback window.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
maximumWindows
public:
unsigned long maximumWindows(CallType call = wait) const

Returns the maximum number of video windows allowed on this machine.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
refresh
public:
IMMDigitalVideo& refresh( const IRectangle& source = IRectangle ( ), const IRectangle& destination = IRectangle ( ), CallType call = wait )

Restores the video window by causing the video device to transfer an image from the video to the playback window. This is similar to a refresh of a normal window. If the source rectangle is not specified, the entire image is restored. If the destination rectangle is not specified, the destination size is set to the same as the image size. If the destination rectangle is a different size than the source rectangle, it tries to scale the image (if supported); otherwise, it clips the image to the destination rectangle.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid rectangle was specified.

Supported Platforms

Windows OS/2 AIX
No Yes No


[view class]
setDestination
public:
IMMDigitalVideo& setDestination( const IRectangle& rectangle, CallType = wait )

Sets the subrectangle within the video window where video is played. This allows an application to move, grow, or shrink where the video is played inside the video window.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid rectangle was specified.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
setWindow

Supplies a window where the video is played. For example, you might want your video to be played back in a canvas. If so, pass the handle of the canvas to this function. By default, the IMMDigitalVideo class creates and use its own video window. This function allows an application to provide its own video playback window. To switch back to using the default video window, call useDefaultWindow.


Overload 1
public:
IMMDigitalVideo& setWindow( const IWindowHandle& handle, CallType call = wait )

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid window handle was specified.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


Overload 2
public:
IMMDigitalVideo& setWindow( const IWindow& window, CallType call = wait )

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.
IAccessError Invalid window was specified.

Supported Platforms

Windows OS/2 AIX
Yes Yes No

Windows Considerations

The video window will not resize to fit the size of the window that you specified. Please use the setDestination() member function to accomplish this.


[view class]
sourceRectangle
public:
IRectangle sourceRectangle(CallType call = wait) const

Returns the subrectangle of the video from the currently loaded video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
useDefaultWindow
public:
IMMDigitalVideo& useDefaultWindow(CallType call = wait)

Specifies that the digital video class creates and manages its own video window. You can use it to set the video window back to the default video window.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
videoFileHeight
public:
unsigned long videoFileHeight(CallType call = wait) const

Returns the height of the video for the currently loaded video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
videoFileName
public:
IString videoFileName() const

Returns the file name of the digital video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
videoFileWidth
public:
unsigned long videoFileWidth(CallType call = wait) const

Returns the width of the video for the currently loaded video file.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
videoHeight
public:
unsigned long videoHeight(CallType call = wait) const

Returns the nominal (reasonable) height of the video for this machine. So, this would probably return a smaller value on a '386 machine than a '486 machine.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


[view class]
videoWidth
public:
unsigned long videoWidth(CallType call = wait) const

Returns the nominal (reasonable) width of the video for this machine. So, this would probably return a smaller value on a '386 machine than a '486 machine.

Exception

IAccessError The device identifier is not valid; possibly the device is closed.
IAccessError The device cannot acquire access to the hardware device; possibly another device of this same type was acquired for exclusive use in this or another process.
IAccessError An internal driver error occurred.
IInvalidRequest The device must be in the open state before calling this function.

Supported Platforms

Windows OS/2 AIX
Yes Yes No


IMMDigitalVideo - Inherited Member Functions and Data

Inherited Public Functions

IMMConfigurableAudio
IMMDevice
IMMFileMedia
IMMPlayableDevice
IMMRecordable
INotifier
IStandardNotifier

Inherited Public Data

INotifier
IMMDevice

Inherited Protected Functions

INotifier
IStandardNotifier
IMMDevice
IMMFileMedia
IMMConfigurableAudio
IMMPlayableDevice
IMMRecordable

Inherited Protected Data