-->

教程:使用Windows Media注册表项

本文的另一个版本刊登在2006年11月号的 流媒体 magazine. Click here 免费订阅.

在相对平静的2005年之后, 2006年对Windows Media编解码器进行了一些重大改进,为点播和直播提供了更好的效果. 本文将介绍新的和增强的编解码器以及利用这些新技术的一些方法.

最大的新闻是Windows Media Video 9编解码器的标准化,即VC-1, 或SMPTE标准421M. 这意味着编解码器的标准是广泛可用的, 包括编码和解码的参考源代码. 幕后故事, 视频编解码器本身有了实质性的增强, 提高性能和压缩效率.

通过安装新的编解码器,可以自动获得许多质量改进, 而其他可以通过调整注册表项设置获得, 下面描述. 虽然整体性能有所提高, 最大的改进是视频编解码器现在是4路线程而不是2路线程. 因此,它可以使双核双插槽工作站饱和,使现代硬件的性能加倍.

Windows Media Video 9 (WMV3)
Windows Media中用于流媒体和其他网络使用的主流视频编解码器一直是并且仍然是我们的老朋友Windows Media video 9 (WMV 9). Windows Media Video 9包括VC-1的Simple和Main配置文件, 并使用“WMV3”的四字母代码(FourCC),代表编解码器的第三个主要版本(是的, WMV3与wm9相同).

对于计算机播放,主配置文件是您想要使用的. Simple Profile是一个限制版本,允许在低功耗设备(如手机)上播放.

Windows Media Video 9高级配置文件(WVC1)
Windows Media Video 9高级配置文件(WMV9 AP或WVC1)的最初实现是在Windows Media Format SDK 9中引入的.5,并且今天与许多工具捆绑在一起.

That said, 使用WMV 9 AP进行流媒体的唯一原因是,如果你试图提供原生交错内容. 当从交错源传输640x480或更高分辨率时, 保持内容隔行可以提供两倍于去隔行到30p的运动, 但是比特率比60p要低. 当你想让视频比特率超过1Mbps时,隔行传输就能得到回报, 它可以提供一个生动的, smooth video. 解码器自动负责将视频转换为计算机播放的渐进式.

请注意,WMV 9 AP解码仅内置在WMP 11中, 尽管解码器可以通过自动编解码器下载回WMP 9. 从Flip4Mac 2开始,它不支持Mac.但Telestream正在寻求在未来的版本中增加支持.

注册表项选项
仅仅安装新的编解码器就提供了大量的性能和质量改进. 但要挤出最大的爆炸声, 有许多注册表项设置可用于显著改变编解码器的行为.

对于那些不熟悉注册表项, 你可以使用下面提到的一个简单的GUI应用程序进行修改. 对于那些喜欢使用命令行编码器而不是更改注册表项的人, 您可以下载本文底部链接的WMCmd编码器.如果有更复杂的选项(如果没有列出任何选项),我会列出所使用的键, 它遵循的规则是,值0等于“关闭”,值1等于“打开”."

压缩优化类型
压缩优化类型是您选择整体设置以优化编码模式的一站式商店. 0模式针对性能进行调整,而1模式针对视频质量进行优化. 它大大提高了压缩效率,但速度可能会慢两到四倍. 请注意,此模式会打开一些与Simple Profile编码不兼容的设置, 所以它不应该使用,如果目标简单配置文件.

如果你有时间的话, 点播内容应该从选项1开始, 并根据需要添加其他选项. 对于网络广播,1可能太慢,无法在较旧的硬件上使用. 与往常一样,在尝试编码实时事件之前,请使用适当的测试内容测试您的设置.

除了Encoder Complexity之外的所有设置都可以通过使用这些参数的不同值来覆盖.

NumBFrames
该参数设置使用的b帧数. By default, WMV 9只使用i帧(关键帧)和p帧(预测帧), 基于先前的P-或i -框架). b帧的独特之处在于它既可以引用前面的帧,也可以引用后面的帧, 但没有框架是基于它的. 这意味着b帧可以更有效地编码(特别是当与下面的b帧增量QP结合时), 这意味着它们在解码上提供可扩展性. For example, 在没有b帧的文件中, 如果解码器无法解码特定帧, 之后的所有帧都被删除,直到下一个i帧. 然而,当存在b帧时,解码器可以丢弃它们,保留所有p帧. 这将产生较低的帧率,但仍然保留运动.

对于大多数网页内容,一到两个b框架是合适的. 在较高的数据速率下,一个b帧通常是最佳选择. 三个或更多很少有用.

b帧的编码速度比其他帧类型稍慢. Also, b帧在编码整帧变化时效率较低, 像交叉溶解或褪色到或从黑色. 但是对于大多数内容来说,一个B-Frame是安全的默认设置.

力b框架Delta QP
QP是对帧的压缩程度的度量, 由注册表项中的增量值0-31表示. 相对于I帧和p帧,b帧增量QP参数降低了b帧的质量. 使用1的值,b帧比周围的I帧和p帧被压缩得稍微多一点. 因为其他帧从不基于b帧, b帧图像数据在显示后立即被“丢弃”. 通过稍微降低b帧的质量, 位是为I帧和p帧保存的, 提高质量, 然后结转到基于它们的帧. 这在质量上是一个很好的胜利, 特别是如果有长静态镜头或i帧之间的长间隔.

将b帧的QP减小1, 也许相反, 能提高b帧的质量吗, 因为它有助于B-Frame所基于的框架的质量. 唯一的缺点是,在非常缓慢的动作中,图像质量可能会有轻微的可见变化. 随着b - frame数量的增加,出现这种情况的风险也越来越大.

流媒体覆盖
Free
合资格订户
Subscribe Now Current Issue Past Issues
提及的公司及供应商