ArcObjects Library Reference (Animation)  

IVideoExporter Interface

Provides access to members that control the video exporters.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Description

Codec is an acronym for 'compressor/decompressor'.  An algorithm or scheme used when recording digital video.  They are essentially programs to read and write animation videos.  Different video formats (e.g. AVI, QuickTime) require different sets of codecs.  A codec is required for a video to be exported.  Windows has several codecs for AVI export. Installing the QuickTime player also installs QuickTime codecs.  Additional codecs may reside on a machine when certain programs are installed and if third-party codecs are added.

CodecCode is the four character code (FOURCC) that uniquely identifies a codec.

CodecCodeList refers to the list of codec codes for the codecs available on a machine.

CodecList is the list of codec names for the codecs available on a machine.  Each entry in the list is in the format CodecCode:CodecName (codec name prefixed with the four character code, separated by a colon).

ColorDepth means the color or gray scale resolution value to be used when exporting the video.

DataRate refers to the maximum number of bytes of data per second in the video.  This can be used to adjust for hardware limitations during video playback.

FrameDuration indicates the duration of each video frame, in milliseconds.

IsInstalled property is currently applicable only to the QuickTime video exporter.  If QuickTime player is not installed on a machine, QuickTime codecs would be unavailable.  As a result, QuickTime videos can not be exported.  This property checks if QuickTime codecs are available on a machine.

KeyFrameRate is the frequency with which key frames are inserted into the video.

Quality: Once a codec is selected, video can be exported at different qualities ranging from 1 to 100.  The quality setting is directly propotional to the resolution and the video file size.  A quality value of 200 allows lossless compression to be used if available in the codec.

RecordOffScreen specifies if the video export would be unaffected by other application windows that obscure the map display window or scene/globe viewer.

RecordWindow specifies if the whole application window (ArcMap, ArcScene or ArcGlobe) rather than just the map display window or scene/globe viewer would be exported.

ShowSettingsDialog specifies if the codec settings dialog would be displayed when exporting using the ExportAnimation() method. The default is off.

UseCustomSize indicates if the export would be based on custom video size settings. 

Members

Description
Read/write property Codec The current video codec.
Read/write property CodecCode The current video codec's unique code.
Read-only property CodecCodeList The list of unique codes of available codecs.
Read-only property CodecList The list of names of available codecs.
Read/write property ColorDepth The number of bits per pixel in each video frame.
Read/write property DataRate The maximum number of bytes per second.
Method ExportAnimation Export the animation into a video file.
Read/write property ExportFileName The exported file name.
Read-only property FileExtension The file extension associated with the current exporter.
Read-only property Filter The filter string used in the CFileDialog class.
Read/write property FrameDuration The duration of each frame in milliseconds.
Read/write property FrameRate The frame rate in images per second.
Method GetCustomSize The custom image size for video export.
Read-only property IsInstalled Indicates if the video exporter is installed.
Read/write property KeyFrameRate The frequency of keyframes in the video.
Read-only property Name The name of the exporter.
Method PutCustomSize The custom image size for video export.
Read/write property Quality The quality of video compression (1-100). 200 - Lossless.
Read/write property RecordOffScreen Indicates if video is to be recorded offscreen.
Read/write property RecordWindow Indicates if entire window is to be recorded.
Read/write property ResizeExportWindow Indicates if the viewer window is to be resized during video export.
Read/write property ShowSettingsDialog Indicates if video compression settings dialog is to be displayed.
Read/write property UseCustomSize Indicates if a custom image size should be used.

CoClasses that implement IVideoExporter

CoClasses and Classes Description
AnimationExporterAVI An exporter of animations to AVI video format.
AnimationExporterQT An exporter of animations to QuickTime video format.
AnimationExporterSeqImages An exporter of animations to a folder of sequential images.

Remarks

Some of the properties in this interface may not be applicable to the AVI exporter.  They include IsInstalled, ColorDepth, KeyFrameRate, DataRate, and FrameDuration.

For AVI, all codec codes use upper cases.  So querying a codec code always returns a string in upper case.  When you assign a codec code, however, you can assign it in either case (but internally it always uses the upper case).

For QuickTime, codec code cases are mixed.  Some use upper cases while others use lower cases.  Therefore a developer needs to be careful because it's case sensitive.  Pay special attention to some peculiar codecs when a four-letter codec code appears to only contain three letters - the last letter is actually a blank space.  There're also some other rare codecs that have no codec names; they only have codec code used as an identifier.

.NET Snippets

Create Animation AVI | Create Animation QuickTime

.NET Related Topics

How to export animations to video