Home | Categories | Alphabetical | Classes | All Contents | [ < ] | [ > ]

IDLgrMPEG Properties


IDLgrMPEG objects have the following properties in addition to properties inherited from any superclasses. Properties with the word "Yes" in the "Get" column of the property table can be retrieved via IDLgrMPEG::GetProperty. Properties with the word "Yes" in the "Init" column of the property table can be set via IDLgrMPEG::Init. Properties with the word "Yes" in the "Set" column in the property table can be set via IDLgrMPEG::SetProperty.

Note
For a discussion of the property description tables shown below, see About Object Property Descriptions.

ALL

An anonymous structure containing the values of all of the retrievable properties associated with this object.

Property Type
Structure
Name String
not displayed
Get: Yes
Set: No
Init: No
Registered: No

BITRATE

A double-precision floating-point value to specify the MPEG movie bit rate. Higher bit rates will create higher quality MPEGs but will increase file size. The following table describes the valid values:

MPEG Version
Range
MPEG 1
0.1 to 104857200.0
MPEG 2
0.1 to 429496729200.0

Set this property to 0.0 (the default setting) to indicate that IDL should compute the BITRATE value based upon the value you have specified for the QUALITY property. The value of BITRATE returned by IDLgrMPEG::GetProperty is either the value computed by IDL from the QUALITY value or the last non-zero valid value stored in this property.

Note
Only use the BITRATE property if changing the QUALITY property value does not produce the desired results. It is highly recommended to set the BITRATE to at least several times the frame rate to avoid unusable MPEG files or file generation errors.

Property Type
Floating-point
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

DIMENSIONS

A two-element integer array specifying the dimensions (in pixels) of each of the images to be used as frames for the movie. If this property is not specified, the dimensions of the first image loaded will be used. Once IDLgrMPEG::Put has been called, this property can no longer be set.

Note
When creating MPEG files, you must be aware of the capabilities of the MPEG decoder you will be using to view it. Some decoders only support a limited set of sampling and bitrate parameters to normalize computational complexity, buffer size, and memory bandwidth. For example, the Windows Media Player supports a limited set of sampling and bitrate parameters. In this case, it is best to use 352 x 240 x 30 fps or 352 x 288 x 25 fps when determining the dimensions and frame rate for your MPEG file. When opening a file in Windows Media Player that does not use these dimensions, you will receive a "Bad Movie File" error message. The file is not "bad", this decoder just doesn't support the dimensions of the MPEG.

FILENAME

A string that represents the name of the file in which the encoded MPEG sequence is to be stored. The default is 'idl.mpg'.

Property Type
String
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

FORMAT

A Boolean value that specifies the type of MPEG encoding to use:

Property Type
Boolean
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

FRAME_RATE

An integer value that specifies the frame rate used in creating the MPEG file:

Value
Descriptions
1
23.976 frames/sec: NTSC encapsulated film rate
2
24 frames/sec: Standard international film rate
3
25 frames/sec: PAL video frame rate
4
29.97 frames/sec: NTSC video frame rate
5
30 frames/sec: NTSC drop frame video frame rate (the default)
6
50 frames/sec: Double frame rate/progressive PAL
7
59.94 frames/sec: Double frame rate NTSC
8
60 frames/sec: Double frame rate NTSC drop frame video

Property Type
Integer
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

IFRAME_GAP

A positive integer value that specifies the number of frames between I frames to be created in the MPEG file. I frames are full-quality image frames that may have a number of predicted or interpolated frames between them.

Set this property to 0 (the default setting) to indicate that IDL should compute the IFRAME_GAP value based upon the value you have specified for the QUALITY property. The value of IFRAME_GAP returned by IDLgrMPEG::GetProperty is either the value computed by IDL from the QUALITY value or the last non-zero valid value stored in this property.

Note
Only use the IFRAME_GAP property if changing the QUALITY property value does not produce the desired results.

Property Type
Integer
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

INTERLACED

A Boolean value that indicates whether frames in the encoded MPEG file should be interlaced.

Property Type
Boolean
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

MOTION_VEC_LENGTH

An integer value that specifies the length of the motion vectors to be used to generate predictive frames. The following table describes the valid values:

Value
Description
1
Small motion vectors.
2
Medium motion vectors.
3
Large motion vectors.

0 (the default setting) indicates that IDL should compute the MOTION_VEC_LENGTH value based upon the value you have specified for the QUALITY property. The value of MOTION_VEC_LENGTH returned by IDLgrMPEG::GetProperty is either the value computed by IDL from the QUALITY value or the last non-zero value stored in this property.

Note
Only use the MOTION_VEC_LENGTH property if changing the QUALITY value does not produce the desired results.

Property Type
Integer
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

QUALITY

An integer value between 0 (low quality) and 100 (high quality), inclusive, that specifies the quality at which the MPEG stream is to be stored. Higher quality values result in lower rates of time compression and less motion prediction which provide higher quality MPEGs but with substantially larger file size. Lower quality factors may result in longer MPEG generation times. The default is 50.

Note
Since MPEG uses JPEG (lossy) compression, the original picture quality cannot be reproduced even when setting QUALITY to its highest setting.

Property Type
Integer
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

SCALE

A two-element floating-point vector, [xscale, yscale], indicating the scale factors to be stored with the MPEG file as hints for playback. The default is [1.0, 1.0], indicating that the movie should be played back at the dimensions of the stored image frames.

Property Type
Floating-point vector
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

STATISTICS

A Boolean value that determines whether to save statistical information about MPEG encoding for the supplied image frames in a file when the IDLgrMPEG::Save method is called. The information will be saved in a file with a name that matches that specified by the FILENAME property, with the extension ".stat".

Property Type
Boolean
Name String
not displayed
Get: Yes
Set: Yes
Init: Yes
Registered: No

TEMP_DIRECTORY

A string value that specifies the directory in which to place temporary files while creating the MPEG movie file. The default value is platform specific.

Property Type
String
Name String
not displayed
Get: No
Set: No
Init: Yes
Registered: No


Home | Categories | Alphabetical | Classes | All Contents | [ < ] | [ > ]