• H.264 Video Codec速度和质量


     H.264 Video Codec速度和质量

    从Kepler开始的所有 NVIDIA GPUs 都支持完全加速的硬件视频编码; GPUs 从费米开始支持完全加速的硬件视频解码。最近发布的图灵硬件提供了张量核心和更好的机器学习性能,但新的 GPU 还加入了新的多媒体功能,如改进的 NVENC 单元,以在视频编解码器中提供更好的压缩和图像质量。

    仔细地看一看图灵设计的新的 NVENC 单元的性能和质量。

    NVENC 性能测试设置

    H.264 出现于 15 年前,已经成为一种无处不在的视频编码标准。它已经成为业界最重要和最广泛的编解码器。这些测试展示了 Tesla T4 与著名的开源编码器 libx264 在两种情况下的性能:

    • 高质量模式,代表最常见的编码方案与 VBR 控制和 B 帧启用。
    • 低延迟快速模式,适用于对延迟敏感的应用程序,如远程游戏或视频会议。

    为此,测试计算机的配置如表 1 所示:

    Testing Configuration

    Component

    Tesla T4 NVENC

    libx264

    CPU

    Dual Intel Xeon E5-2660v3 @ 2.6 GHz

    Dual Intel Xeon E5-2660v3 @ 2.6 GHz

    GPU

    TU104 (Tesla T4)

    N/A

    RAM

    128 GB

    128 GB

    FFMPEG

    4.0.2

    4.0.2

    Driver

    415.15

    N/A

    这些性能测试将编码参数设置为表 2 中所示的参数:

    Encoding Parameters

    Preset

    NVENC

    libx264

    High Quality

    -c:v h264_nvenc -preset medium -b:v BITRATE -bufsize BITRATE*2 -profile:v high -bf 3 -b_ref_mode 2 -temporal-aq 1 -rc-lookahead 20 -vsync 0

    -c:v libx264 -preset medium -b:v BITRATE -bufsize BITRATE*2 -profile:v high -tune psnr -vsync 0 -threads 4

    Low Latency Fast

    -c:v h264_nvenc -preset llhp -rc cbr_ld_hq -b:v BITRATE -bufsize BITRATE/FRATE -profile:v high -g 999999 -vsync 0

    -c:v libx264 -preset fast -b:v BITRATE -bufsize BITRATE/FRATE -profile:v high -g 999999 -x264opts no-sliced-threads:nal-hrd=cbr -tune zerolatency -threads 4 -vsync 0

    使用了各种输入视频进行 RD 估计,如 basketball _ drive 、 bq _ terrace 、仙人掌、 crowd _ run 、 ducks _ take _ off 、 jokey 、和服,以及更多分辨率为 1280 × 720 、 1920 × 1080 和 3840 × 2160 的视频。

    效果和质量

    平衡序列

    图 1 到图 4 显示, Tesla T4 在高质量模式下为 libx264 提供相同或稍好的视觉质量,如 Kimono、 BQ Terrace 和 Park Scene 。

    图 1. 720p 分辨率和服序列的 PSNR-RD 曲线。

    图 2 . BQ 阶地序列 1080p 分辨率下的 PSNR-RD 曲线。

    图 3 .公园场景序列在 720p 分辨率下的 PSNR-RD 曲线。

    图 4 .公园场景序列的 PSNR-RD 曲线,分辨率为 1080p 。

    与 libx264 相比, T4 显示了更好的预测和过滤,如图 5 和 6 所示。

    图 5 .由 libx264 编码的 bq _ terrace 序列的帧。

    图 6 . T4-Nvenc 编码的 bq_terrace 序列的帧。

    高运动序列

    红皮艇和仙人掌序列分别包含显著的混沌运动和圆周运动。与 libx264 相比, NVENC 在这些包含复杂内部预测的场景中显示出明显的优势,如图 7 和 8 所示。

    图 7.红皮艇序列在 1080p 分辨率下的 PSNR-RD 曲线。

    图 8 .仙人掌序列 1080p 分辨率的 PSNR-RD 曲线。

    如图 9 和图 10 所示, Tesla T4 NVENC 在低延迟模式下的性能很容易超过 libx264 。请注意 Tesla T4 如何在高分辨率下更有效,在相同的比特率下提供 1db 更好的视觉质量。

    图 9 . 1080p 分辨率和低延迟模式下仙人掌序列的 PSNR-RD 曲线。

     

    图 10 .鸭起飞序列在 2160p 分辨率下的 PSNR-RD 曲线。

    如图 11 和图 12 所示,视觉质量的差异很容易被肉眼看到:

    图 11 .由 libx264 编码的 ducks_take_off 序列的第一帧。

    图 12 .由 T4 NVENC 编码的鸭子取下序列的第一帧。

    图灵 GPUs 配备了功能强大的 NVENC 视频编码单元,与 libx264 等复杂的软件编码器相比,它提供了更高的视频压缩效率,因为它结合了更高的性能和更低的能耗。理想的代码转换解决方案需要具有成本效益(美元/流)和节能(瓦/流)。看看在多个测试序列中平均的性能和功耗结果,如图 13 和 14 所示。

    图 13 .在高质量模式下以每秒 30 帧同时编码的流数。

     

    图 14 .在低延迟模式下以每秒 30 帧同时编码的流数。

    T4 以高质量模式同时编码 22 个 720p 流。 GPU 还可以平均处理 10 个 1080p 的流和 2 到 3 个超高清( 2160p )分辨率的流。这相当于在相同的视觉质量级别上几乎是 libx264 的两倍。

    在低延迟模式下运行显示出 T4 更大的优势。它可以编码 37 个 720p 分辨率的流, 17-18 个 1080p , 4-5 个超高清,性能比 libx264 高 2-2 . 7 倍,具有更高的视觉质量。可以在图 15 和图 16 中看到每个流的瓦特数。

     

    图 15.  高质量模式下平均每流功耗瓦特

    图 16.  低延迟模式下平均每流功耗瓦特

    Tesla 还显示出很高的功率效率,在高质量模式下优于 libx264 2-4x ,在低延迟模式下高达 5 倍,同时保持低负载CPU。 

    结论

    与前几代相比, NVIDIA 的 Tesla T4 的编码能力有了很大的提高。与 libx264 这样的软件编码器相比,它在高质量模式下显示出相同或更好的视觉质量,而在低延迟模式下则优于它们。这相当于在功耗降低 2-5 倍时性能提高了一倍。

    人工智能芯片与自动驾驶
  • 相关阅读:
    2019/10/9 CSP-S 模拟测
    简单的面向对象
    魔术变量
    函数
    全局变量
    超级全局变量
    for循环
    while循环
    php数组排序
    python打造XslGenerator
  • 原文地址:https://www.cnblogs.com/wujianming-110117/p/14091900.html
Copyright © 2020-2023  润新知