关于 AGV 文件视频源标记

视频图层需要具有一个与源数据(可以是文件、文件夹或服务)的连接,这些数据源提供可叠加在 globe 表面的单独的视频帧。要显示视频图层,必须有视频源并且 ArcGlobe 必须能够访问该视频源。

视频源信息必须包括视频类型和数据位置。

视频源有三种常见的类型,由以下标记组表示:

视频源路径可采用以下任一格式:

提示提示:
  • 当定义相对路径时,使用标准格式规则。例如,前接 .\ 字符串表示包含 AGV 文件的当前文件夹,而前接 ..\ 字符串则表示父文件夹。

以下将对这三种常见视频源类型逐一作详细介绍。

视频文件源

此选项适用于以支持的视频文件格式存储在磁盘中的视频,如 AVI 或 MPG。AGV 文件通过将连接信息包含在以下 XML 标签中识别该视频源:<VideoSource FrameSourceType="File"></VideoSource>(如下方示例 XML 文本所示)。

此视频图层类型的主数据源标记是 <VideoFilePath> 元素,它定义视频文件的位置。您可以包含多个 XML 标记以在单个视频图层中连接多个视频文件。

您还需要定义以下内容:

视频文件可以存储在非常大的格式阵列中,并可带有多个可用的编解码器。要在本地机器上播放视频(在 ArcGlobe 内部或通过 Windows Media Player 等视频播放器),所需的编解码器必须位于该机器中。取决于您的机器,支持的视频文件格式可能包括:

注意事项

以下是一些在创建视频源文件时应该牢记的提示:

  • 如果在 VideoFilesSource 组内指定了多个视频文件,所有视频必须具有相同的图像分辨率。
  • 在 Windows Media Player 中可将预览源文件作为简单测试,来确定视频是否能在 ArcGlobe 中显示。如果视频无法在其中播放,则它也无法在 ArcGlobe 中作为视频图层显示。

示例

下例是使用两个 AVI 源文件生成的视频源图层,播放速度为每秒 20 帧:

<VideoSource FrameSourceType="File">  <VideoFilesSource>   <VideoFilePath>.\Security_BldF_10.00AM.avi</VideoFilePath>   <VideoFilePath>.\Security_BldF_10.05AM.avi</VideoFilePath>  </VideoFilesSource>  <FrameRequestRate>50</FrameRequestRate>  </VideoSource>

图像文件夹源

此选项用于本地不支持的视频格式,如 QuickTime (.mov) 文件格式,它会在使用这些图像前,将其转换为图像容器。它还支持可从 ArcGIS 动画框架输出的帧文件夹。AGV 文件通过将连接信息包含在以下 XML 标签中识别该视频源:<ImageSource FrameSourceType="Folder"></ImageSource>(如下方示例 XML 文本所示)。

此视频图层类型的主数据源标记是 <ImageFolderPath>,它定义包含图像文件的文件夹的路径。

您还需要定义以下内容:

示例

下例是生成自帧文件夹的视频源图层,播放速度为每秒 10 帧。

<ImageSource FrameSourceType="Folder">  <ImageFolderPath>\\server1\VideoOverlays\Analysis1</ImageFolderPath>   <Frames>    <NameFormat>Frame#.jpg</NameFormat>    <FirstIndex>1</FirstIndex>    <Width>600</Width>    <Height>480</Height>   </Frames>  <FrameRequestRate>100</FrameRequestRate> </ImageSource>

自定义源

此选项适用于那些编写代码来创建自定义视频图层的高级用户,如行进车辆发出的动态源。ArcGlobe 将以确定的间隔从自定义 DLL 请求帧,而不是访问磁盘上的特定文件或文件夹。AGV 文件通过将连接信息包含在以下 XML 标签中识别该视频源:<VideoSource FrameSourceType="DLLServer"><VideoSource>(如下方示例 XML 文本所示)。

此视频图层类型的主数据源标记是 <Location>,它定义将响应 ArcGlobe 的视频帧图像请求和地理配准信息请求的 DLL 所在的完整路径。

您还需要定义以下内容:

示例

下例是生成自自定义 DLL 服务器的视频源图层,播放速度为每分钟 10 帧:

<VideoSource FrameSourceType="DLLServer">   <Location>C:\Program Files\App1\bin\MyVideoFrameProvider.dll</Location>   <FrameRequestRate>6000</FrameRequestRate>   <Parameter>VideoSource 1</ Parameter > </VideoSource>

相关主题

9/15/2013