-->
保存您的免费座位流媒体连接今年八月. Register Now!

如何将dvd转换为自适应流媒体:3 / 4

Welcome to Part III of our case study 我们把三张训练dvd转换成多个H.264文件的自适应流. When I left you in the last segment, 客户对我最初展示的质量不满意, 如果我们不能提高质量达到他的标准,他会选择取消这个项目. 在这一部分中,我将详细介绍我用来做到这一点的技术.

As part of this, 我将讨论用于从dvd中撷取文件并在Adobe Premiere Pro中编辑它们的工作流程. 这包括我使用Adobe Premiere Pro的原因, 我如何创建我的序列预设, how and why I filtered, 用于创建中间文件的格式, 以及为什么我决定不在Adobe Premiere Pro中去隔行渲染成最终格式.

As an overview, 有(至少)三个因素会影响编码到H.264 format. First is the H.使用的264编解码器和编码工具. 我最初是在使用MainConcept H的Adobe Premiere Pro中对测试文件进行编码的.264编解码器,这是最好的可用在任何商业编码工具. 根据为StreamingMedia Sourcebook和我自己的书所做的试验, Adobe媒体编码器产生H.264文件,比较相当有利的最好的类. 显然,这个问题与编解码器或编码工具无关.

下一个因素是预处理. 当你在处理之前被压缩过的镜头时, 就像这个项目中基于dvd的镜头一样, 过滤掉噪音确实有助于提高质量. 我给客户看的原始片段没有经过过滤,现在回想起来这是个错误. 面对第四种情况,我不会再犯同样的错误了.

最后一个因素是去隔行, 这真的涉及到确定最好的去隔行处理工具和技术以及实现这一目标的最佳工作流程吗. 我选择在Adobe Premiere Pro中编辑和过滤,原因如下所述, 但Adobe的去隔行滤镜在我最初使用客户端的试用中失败了. 我必须找到另一种编码工具,以及使用该工具的最佳工作流程.

Just for the record, 这次我是按工作计酬的, not by the hour, 因此,从经济上讲,尽快完成这项工作是有意义的. 在这方面,有一个停止撕裂/H.264编码工具,我可以使用,包括Handbreak和其他几个. 然而,由于我需要过滤dvd,一站式工具是不可能的. 是的,我确实检查了原始的未压缩源代码是否可用,但没有.

Ripping the DVDs
如前所述,dvd没有复制保护. 最初,我正在寻找一个工具来转换视频对象(VOB)文件在DVD到 .无需重新编码的MPG文件, 因为我发现我可以在Adobe Premiere Pro和Apple Final Cut Pro中输入MPEG-2视频. 请注意,我是在Mac上进行编辑的,因为我知道我可能需要输出一个中间文件才能导入到单独的编辑器中, 我选择的格式是Apple ProRes.

我记得几年前使用Pinnacle Studio将未加密的VOB文件撕成 .mpg files, 但我目前的工具都不具备这种能力, So, 我在谷歌上搜索了“刻录DVD”或类似的东西,并找到了几个工具, 尽管没有人将VOB文件转换为 .mpg format. On a whim, 我使用文件管理器将VOB文件从DVD复制到我的硬盘上, 然后试图将它们直接导入Final Cut Pro. No dice. 然后我尝试了Adobe Premiere Pro,它们直接导入了. I had found my editor.

Choosing a Sequence Preset
For this project, 我们输入的是交错4:3的视频, 它的分辨率为720x480,像素宽高比为 .9, 并使用正方形像素输出640x480分辨率的渐进式文件, or a pixel aspect ratio of 1.0. 在这个过程中,我们将不得不去交叉.

当处理输出文件与输入文件具有不同配置的项目时, 当涉及到创建序列预设时,您有两个基本选项. First, 您可以创建与输出文件匹配的序列预设, 在本例中为640x480渐进预设. If you choose this option, 编辑器自动将所有素材输入到序列中, 产生了如图6所示的令人不快的结果.

第二种选择是使用与输入文件的参数匹配的序列预设,并在编码期间去隔行, 哪一个产生了右图所示的框架. 视频开始35秒的时候,他的脸上就出现了这个锯齿状的东西, 难怪客户拒绝了.

To be fair, Premiere Pro在去隔行化大多数视频片段方面做得很好, 但是这个项目中使用的文本需要一些专门的控件. So, 我们必须从Premiere Pro输出一个隔行中间文件,然后在另一个工具中去隔行并编码.

这种认识推动了多方决策. First, 我们将使用与从DVD导入的素材相匹配的预设, 哪个Premiere Pro可以很容易地创建. 我只是把一个VOB拖到项目面板底部的New按钮上,然后Premiere Pro创建了一个序列,参数与撕裂的文件相同. 然后我把所有的VOB文件按适当的顺序拖到序列中, 并准备好进行噪声过滤.

我还知道我将使用 Neat Video filter. Unlike most noise filters, 整洁的视频过滤器使用复杂的算法来识别和去除真正的噪音, 几乎没有模糊或失真.

虽然滤镜将渲染时间提高了6倍, 它减少了所有编码文件中的可见噪声,并减少了块性. 您可以在图8中看到这一点,我对其进行了处理,以突出显示背景中的块. 左边是过滤后的版本, on the right, the unfiltered, 说话人的右肩最明显. 这种差异在实时播放时更加明显, 滤过的画面明显有噪音吗.

Finally, 我知道我要用Apple ProRes 422输出,创建一个可以输入到编码工具中的文件. 尽管ProRes并不是完全无损的, 这是一种快速有效的方式,过去对我来说一直很有效.

做了这么多决定, 是时候选择一个编码工具,提供必要的去隔行质量,以满足我们的目标. 幸运的是,搜索时间很短.

Choosing an Encoding Tool
多年来,Sorenson Squeeze在H.264的质量,去隔行化的质量一直是顶级的,直到版本5.0. So, I tried Squeeze first.

挤压提供了多种去隔行选择, as shown in Figure 9, 自动自适应丢弃字段为默认值. Unfortunately, 因为这个方法会丢弃一个字段, 它会产生巨大的锯齿,其中包含非常详细的内容,如图10中左侧所示. 所以我尝试了自适应混合,它产生了如图所示的输出. 这是到目前为止我看到的最好的结果, 我们最终在生产中使用了它.

我应该说,自动适应丢弃场做了一个稍微更好的工作与现实世界的镜头, 如果你仔细看最后为太阳摄像机制作的编码片段, 有些帧显示了一些轻微的锯齿,如果我使用Auto Adaptive Discard Field,就不会出现这种锯齿. 但显然自适应混合产生了最好的结果与关键序列在测试视频的开始.

As mentioned previously, 当编码自适应流, 您应该使用恒定比特率编码, 为所有禁用场景变化检测的文件选择相同的关键帧间隔,并使用相同的音频参数编码所有文件. Otherwise, the H.264编码参数类似于您将用于单个文件编码的参数. Figure 11 shows the encoding parameters that I used for the 700 kbps file; other encodes were identical except for the video data rate.

So, back at the ranch, 我从测试序列中删除了快速缩放,并使用此工作流和编码参数重新编码其余部分, 包括一个400 KBPS的文件只是为了好玩. 然后,我把文件上传到一个Dropbox账户,让客户端播放,并祈祷.

不到一个小时,我就收到了以下回复. "Excellent! 甚至400kbps的文件现在看起来更好了,1mbps的文件看起来也很棒. 让我们使用新的比特率,然后继续. Nice work!"

Whew, the project was on. 现在我只需要弄清楚如何最有效地制作和质量控制编码文件.

Jan Ozer的文章首先出现在在线视频上.net

Streaming Covers
Free
for qualified subscribers
Subscribe Now Current Issue Past Issues
提及的公司及供应商