Flash 视频正日新月异的改变着网络视频的发展,开发者们需要一种全新的技术和知识标准来创新视频编辑、视频编码和传输。本文介绍了使用Flash8 视频编码器进行视频编码的实践过程,为Flash开发者提供一个样板。
要求:需要安装如下软件:
Flash8 专业版
必备知识
Flash和视频的基础知识
网络视频的发展简史一直到1998年,以Real Media为代表的视频技术是当时网络视频领域佼佼者,提供着最好的视频编码技术和服务器。微软公司以Windows Media视频技术一直活跃在视频领域的前沿,苹果公司的QuickTime视频技术也一直伴随着其不断发展。许多年以来这些公司已经垄断了网络视频市场,所有的对于技术的改进与否都是基于项目类型和客户的需求。一般来说,他们都是凭借现代视频、音频技术,并且依靠网络下载和流媒体技术来传输视频。他们所欠缺的是用一种比较简单的方法来增加富媒体和交互的视频体验。而专业开发者们也懂得使用HTML实现Windows Media应用,使用SMIL来创建Real多媒体内容,多种技术方法来实现QuickTime视频的应用。令人遗憾的是,这几家公司中并没有任何一家提供一个基于网络视频的完美解决方案。
Flash视频发展的经验历程在上述视频技术发展的同期,Flash也慢慢成为网络矢量动画和交互动画的行业标准。Flash插件和Flash播放器几乎已无处不在,无论是在桌面PC还是掌上电脑。开发者们使用多种方法以使视频与Flash融为一体,后来将
flash内容输出为视频文件的格式。许多人使用Flash来使播放器适应Windows Media 、Real、QuickTime文件的播放。其他的则尝试着开发了Flash视频的早期版本,一些开发者开始创建基于Flash动画的视频,后来将内容输出为视频文件的格式,慢慢的,对于Flash视频编码的需求也就变得呼之欲出了。
Spark编码将交互视频带给了Flash,这是一个极大的进步,由此Flash视频也成为网络视频发展中很值得期待的一个选择。
新的On2 VP6 编码和它的特性 首先,Spark有它的局限性,在客户端下载时,网络视频的质量和带宽就产生了矛盾。对于网络视频来说,最重要的是视频编码的效率和性能,编码应该能将高品质图象编码压缩到更小的比特率,这对于使用流式视频的时候特别重要。新的On2 VP6编码能有效带动Flash视频随着这个视频编码产业领导者一起加速发展,以便使Flash视频能降低比特率和提高视频的质量。
关于视频你应该知道的:如果你是一个Flash开发者但对于视频来说是个新手,这里介绍一些相关知识和需要注意的地方供参考。
视频画面大小和比例(Frame size):
标准NTSC视频—这种视频格式大多为美国使用,通常输出的数字化画面为720×480像素,忽略这些尺寸。在对视频进行编码前,讲其设定为4×3的比率—例如,640×360,320×240等等。万一你曾习惯于宽银幕状态,例如2.35:1—调整letterboxing,取用640像素宽画面。
虽然这些比例是一个标准,应该应用于消除扭曲的视频,但编码视频的大小设置也不是硬性不变的。原始视频的大小使用高与宽均为16的像素块均匀的分开。这是早期视频编码的强制标准。虽然这对于现代编码并不是必须的,但也应该坚持这样的高宽比率。
隔行扫描(Interlacing):
当视频应用于电视,它是交错处理的。每一帧的画面(frame)由两个交错的行围成的区块构成。在一台计算机上能以蜂窝的效果显示出来,这是因为其中一个区块比其他的早1/60秒显示出来。交错视频应该在编码之前进行隔行扫描,交错处理。
如果原始编码是电影,交错可能发生在三个或两个进程帧当中。一般的方法是,将电视电影原始的24帧每秒的帧速转换为视频的29.97fps。同样,视频反转回原始视频的24fps也是可行的。
帧率(Frame rate):
视频项目帧率(Frame rate)通常在30 fps或者设定为24fps。如果你想降低比特率,你应该将视频源帧率(Frame rate)进行等量分割,例如对30fps来说可以设为15fps,10fps,7.5fps等等,对于24fps来说使用12fps,8fps,6fps等等。
Flash8 视频编码应用Flash8视频编码器作为Flash8 专业版一部分安装在一个独立的目录下。这方便你了解它的一些性能和特征。在你了解了在哪里及如何进行设置以后,最后检查一下平台。适应不同类型的项目,这里给出一些推荐的设置方法!
当你激活Flash 8 视频编码器后,会出现一个简单的交互界面,点添加按钮你可以将内容添加到编码器中,也可以拖动内容直接到队列窗口中(如图一)。缺省设置为中等品质400Kbps。如果视频来源是320×240像素或者更小,你可以点初始队列按钮。这些初始设置将使你在同画面大小(frame size)和帧率(frame rate)下获得更高的VP6视频品质。

图1 Flash视频编码提示窗口(
点击看大图)
如果你需要改变设置或者使用高级的设置,选中一个或几个待编码视频文件,点击设置按钮。
提示如果你想用不同的设置编译同样的视频源文件,选中视频文件,点复制按钮,单独调整视频源文件每一个实例的设置。
通过这样简单的设置,你能将视频转换为Flash7 或者Flash8形式。你也能对输出文件重新命名,调整(或修改)编码进程的输入/输出值。如果你需要调的更高些,点高级设置按钮会显示更多的Flash视频编码设置选项(如图示2)

图2 高级编码设置(
点击看大图)
Crop和Trim标签给出了高级设置选项,可以象调整文字信息一样对画面进行修整(图示3)

图3 Crop和Trim标签(
点击看大图)
小提示:
裁剪视频的同时,为避免画面扭曲,要依照视频画面的比率。例如,当修剪一个4×3的视频时(240×180,320×240等等),从宽和高的各自长度分别截取4像素和3像素的画面。点击拖动滚动刷,自左到右的顺序来调整相应设置。
在编码标签你可以通过新建帧率(frame rate)、关键帧间隔、画面大小(frame size)、和音视频的比特率来创建一个自定义的设置。(图示4)

图4 编码标签(
点击看大图)
小提示:不要将画面(frame size)的大小设置高于视频源文件画面的大小
表格一和表格二列出了为你的项目进行视频编码的初始设置参数。最重要的变量是剪辑里章节(movement)的数目。快节奏的视频需要较高的比特率。对一个谈话中的人头画面视频(Talking-head video)需要较低比特率设置来进行编码。根据项目中音频的重要性来进行音频设置调整。音乐的设置应为立体声并且超过64Kbps。演讲的视频剪辑应设为
峰值式中频(mono),在16Kbps下运行。
表格一 VP6编码下推荐Flash视频编码标准设置: 高速移动视频(High-Motion Video)

*初始以8帧/秒,运行后按需要设置。
**没有56K modem视频流的选项,你必须设置在40K,不能将MP3音频设置在16K以下。
表格二 VP6编码下推荐Flash视频编码标准设置:低速移动视频(Low-Motion Video)
网络视频前景网络视频是令人激动的领域,还有许多未知需要去学习和探索。或许你创新自己的视频,或许从不同的视频源文件中获取,也或许从实践中获得完美的编码方案,准备好创建你自己的Flash视频播放器。
相关资料连接:Best Practices for Encoding Video with the VP6 CodecMetro EncodingFlash 8 Professional
Flash Video Developer CenterFlash Video Learning Guide