了解视频格式

Flash Player 9 和更高版本,Adobe AIR 1.0 和更高版本

除了 Adobe FLV 视频格式之外,Flash Player 和 Adobe AIR 还支持从 MPEG-4 标准文件格式中以 H.264 和 HE-AAC 编码的视频和音频。这些格式以更低的比特率提供高质量的视频流。开发人员可利用业界标准工具(包括 Adobe Premiere Pro 和 Adobe After Effects)来创建并提供引入注目的视频内容。

类型

格式

容器

视频

H.264

MPEG-4:MP4、M4V、F4V、3GPP

视频

Sorenson Spark

FLV 文件

视频

ON2 VP6

FLV 文件

音频

AAC+ / HE-AAC / AAC v1 / AAC v2

MPEG-4:MP4、M4V、F4V、3GPP

音频

Mp3

Mp3

音频

Nellymoser

FLV 文件

音频

Speex

FLV 文件

针对移动设备对视频进行编码

Android 上的 AIR 可以对各种 H.264 视频进行解码。但是,只有一小部分 H.264 视频适合于在移动手机上流畅播放。这是因为许多移动手机受处理能力的限制。用于移动设备的 Adobe Flash Player 可以使用内置硬件加速对 H.264 视频进行解码。这种解码方式可以确保以较低的处理能力消耗实现较高的播放质量。

H.264 标准支持多种编码技术。只有高端设备才能够流畅播放具有复杂配置文件和级别的视频。但是,大多数设备均可播放采用基本配置文件编码的视频。在移动设备上,为上述部分技术提供了硬件加速功能。配置文件和级别参数定义了支持硬件加速的部分编码技术以及编码器所使用的设置。对于开发人员,可理解为采用能够在大多数设备上流畅播放的所选分辨率对视频进行编码。

尽管能够利用硬件加速的分辨率因设备而异,但大多数设备均支持下列标准分辨率。

高宽比

推荐分辨率

4:3

640 × 480

512 × 384

480 × 360

16:9

640 × 360

512 x 288

480 × 272

注: Flash Player 支持 H.264 标准的所有级别和配置文件。遵循上述建议可确保在大多数设备上实现硬件加速和更佳的用户体验。这些建议并非强制性的。

有关 Adobe Media Encoder CS5 的详细介绍和编码设置,请参阅针对为移动设备上的 Flash Player 10.1 编码 H.264 视频提出的建议

注: 在 iOS 上,只有使用 Sorenson Spark 和 On2 VP6 编解码器编码的视频可以使用 Video 类播放。可以通过使用 flash.net.navigateToURL() 函数启动视频 URL ,从而在设备视频播放器中播放 H.264 编码的视频。还可以在 StageWebView 对象中显示的 html 页中使用 <video> 标签播放 H.264 视频。

Flash Player 和 AIR 与编码的视频文件的兼容性

Flash Player 7 支持用 Sorenson™ Spark™ 视频编解码器编码的 FLV 文件。Flash Player 8 支持用 Flash Professional 8 中的 Sorenson Spark 或 On2 VP6 编码器编码的 FLV 文件。On2 VP6 视频编解码器支持 Alpha 通道。

Flash Player 9.0.115.0 及更高版本支持从标准 MPEG-4 容器格式派生的文件。这些文件包括 F4V、MP4、M4A、MOV、MP4V、3GP 和 3G2(如果这些文件包含 H.264 视频和/或 HEAAC v2 编码音频)。与 Sorenson 或 On2 中相同的编码配置文件相比,H.264 可以在更低的比特率下传送更高品质的视频。HE-AAC v2 是 AAC 的扩展,AAC 是在 MPEG-4 视频标准中定义的一种标准音频格式。HE-AAC v2 使用频带复制 (SBR) 和参量立体声 (PS) 技术来提高低比特率下的编码效率。

下表列出了支持的编解码器。表中还显示了相应的 SWF 文件格式以及播放这些文件所需的 Flash Player 和 AIR 版本:

编解码器

SWF 文件格式版本(支持的最早发布版本)

Flash Player 和 AIR(播放所需要的最早的版本)

Sorenson Spark

6

Flash Player 6、Flash Lite 3

On2 VP6

6

Flash Player 8、Flash Lite 3。

只有 Flash Player 8 及更高版本才支持 On2 VP6 视频的发布和播放。

H.264 (MPEG-4 Part 10)

9

Flash Player 9 Update 3、AIR 1.0

ADPCM

6

Flash Player 6、Flash Lite 3

Mp3

6

Flash Player 6、Flash Lite 3

AAC (MPEG-4 Part 3)

9

Flash Player 9 Update 3、AIR 1.0

Speex(音频)

10

Flash Player 10、AIR 1.5

Nellymoser

6

Flash Player 6

了解 Adobe F4V 和 FLV 视频文件格式

Adobe 提供了 F4V 和 FLV 视频文件格式,以用于向 Flash Player 和 AIR 流式传输内容。有关这些视频文件格式的完整描述,请参阅 www.adobe.com/go/video_file_format_cn

F4V 视频文件格式

从 Flash Player Update 3 (9.0.115.0) 和 AIR 1.0 开始,Flash Player 和 AIR 支持 Adobe F4V 视频格式,该格式基于 ISO MP4 格式,MP4 格式的不同子集支持不同的功能。Flash Player 需要有效的 F4V 文件来从以下某个顶级框开始:
  • ftyp

    ftyp 框标识程序为播放特定的文件格式而必须支持的功能。

  • moov

    moov 框实际是 F4V 文件的标头。该框包含一个或多个其他框,这些框又包含定义 F4V 数据结构的其他框。F4V 文件必须包含且只能包含一个 moov 框。

  • mdat

    mdat 框包含 F4V 文件的数据负载。一个 FV 文件只包含一个 mdat 框。moov 框也必须存在于文件中,因为 mdat 框在单独使用时没有意义。

F4V 文件支持 big-endian 字节顺序的多字节整数,按照该顺序,最高有效字节在最低地址中最先出现。

FLV 视频文件格式

Adobe FLV 文件格式包含可供 Flash Player 传送的音频和视频编码数据。可以使用编码器(如 Adobe Media Encoder 或 Sorenson™ Squeeze)将 QuickTime 或 Windows Media 视频文件转换为 FLV 文件。

注: 可通过将视频导入 Flash,然后再导出为 FLV 文件来创建 FLV 文件。可以使用“FLV 导出”插件从受支持的视频编辑应用程序中导出 FLV 文件。若要从 Web 服务器加载 FLV 文件,请向您的 Web 服务器注册文件扩展名和 MIME 类型。请查看您的 Web 服务器文档。FLV 文件的 MIME 类型是 video/x-flv。有关详细信息,请参阅关于配置 FLV 文件以便在服务器上托管

有关 FLV 文件的详细信息,请参阅 视频文件的高级主题

外部视频和嵌入视频

使用外部视频文件可以提供使用导入的视频时不可用的某些功能:

  • 可在应用程序中使用较长的视频剪辑,而不会降低播放速度。外部视频文件可使用缓存内存,这意味着大文件将分成小片断存储,并可以动态访问。因此,外部 F4V 和 FLV 文件所需要的内存比嵌入的视频文件要少。

  • 外部视频文件的帧速率可以不同于它所播放的 SWF 文件。例如,可以将 SWF 文件帧速率设置为 30 帧/秒 (fps),而将视频帧速率设置为 21 fps。与嵌入的视频相比,此项设置可使您更好地控制视频,确保视频顺畅地播放。此项设置还允许您以不同的帧速率播放视频文件,而无需更改现有 SWF 文件的内容。

  • 如果使用外部视频文件,则不会在加载视频文件时中断 SWF 内容的播放。导入的视频文件有时可能需要中断文档播放来执行某些功能,例如,访问 CD-ROM 驱动器。视频文件可独立于 SWF 内容执行功能,而不会中断播放。

  • 对于外部 FLV 文件,为视频内容加字幕更加简单,这是因为您可以使用事件处理函数访问视频元数据。