当你在Wowza transcoder插件中使用NVIDIA的NVENC硬件加速编码时,如何降低对图像质量的影响?
转载请注明:文章来自www.wowza.cn
注意: 要访问最新的技术资料,请访问http://www.ttstream.com/wowza/
当你在Transcoder插件中使用NVIDIA NVENC硬件加速编码时,如果显卡的驱动有些老,你可能会注意到每隔几秒中会出现视觉模糊或图像质量下降的现象。 这在低码率的码流上可能会更引起注意。这种情况是由于NVENC编码时的默认设置限制了关键帧的比特率,从而导致关键帧的质量下降。www.wowza.cn Wowza 和 NVIDIA 的工程师一起解决了这个问题。

更新显卡的驱动,或在Transcoderd的转码模版中提高视频的码率可以在大多数场景解决这个问题。如果还不行,你可以根据下面的操作降低影响提高图像质量。 这个解决方法禁用了对最大码率的设置,因此当编码器在创建关键帧时不再限制码率大小。www.wowza.cn

注意:
  • 重要: NVIDIA 在最新的NVENC显卡驱动中已经解决了这个问题。

  • 这个解决方法应用于Wowza Streaming Engine™ 4.0.3 及更高版本。之前的版本存在一个Bug阻碍了这个解决方法的使用。

  • 这个解决方法中的参数设置还不能通过Wowza Streaming Engine Manager来设置。你必须编辑转码的模版文件。
  1. 在文本编辑器中打开你的转码模版文件(例如,[install-dir]/transcoder/templates/[your-template-name].xml)

  2. 在每一个启用了NVENC硬件加速编码功能的图像编码设置部分的<Video>/<Parameters> 中增加nvenc.peakBitRate 参数。
    Code:
    <Parameter>
    	<Name>nvenc.peakBitRate</Name>
    	<Value>0</Value>
    	<Type>Long</Type>
    </Parameter>
    注意: 不要将这个参数加到<Audio>/<Parameters> 中。
  3. 保存修改后的转码模版文件,然后重新发布输入流。无需重启Wowza 服务器,但只有重新发布输入流后,才能看到修改后的效果。

这个设置可能会在总体上导致码率增大。你可以在转码模版中降低码率让总码率降低一些。 www.wowza.cn 默认的峰值码率是你设置的码率上浮10%。你可以在设置码率时下调10%以让总码率回到期望的区间。