This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM62A7:在场景中运动时使用 h264 编码器观察伪影

Guru**** 2927100 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1651080/am62a7-observing-artefacts-with-h264-encoder-while-motion-in-scene

器件型号: AM62A7

您好团队:

我们使用 SDK9 在产品中以 1920x1080@60fps 图像流运行 gstreamer 流水线。 作为流水线的一部分、我们使用以下设置执行 H264 编码
VIDEO_GOP_SIZE=60、h264_I_FRAME_PERIOD=60、h264_PROFILE=4、VIDEO_bitrate=0、FRAME_LEVEL_RATE_CONTROL_ENABLE=0、VIDEO_bitrate_MODE=0、vbV_BUFFER_SIZE=200、h264_LEVEL=12、prepend_sps_and_pps_to_idr=1

当场景中有运动时、我们通常可以在视频中看到清晰的伪影(参见图像)。

我使用 perf_stat 测量 DDR 的总带宽、其平均值为~3000MB/s 内存带宽饱和是否是导致 H.264 编码器实时性能下降的一个因素?

技术参考手册中有一个用于系统互连的 QoS 块。 我们是否可以使用此 QoS 块提高 H264/H265 编码器的优先级? 它是否有助于解决存储器访问问题、使编码器更加实时敏感。

57270694-77a8-4135-85c8-4f7e69f1ff05.PNG
谢谢
Jay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Jay Kaneria、

    感谢您的查询和提供的详细信息!  

    我正在将其分配给软件团队、以便对根本原因进行初步分析。 请预计、根据软件专家的工作量、他们的响应可能会有所延迟。

    谢谢!

    此致、

    Anastas Yordanov

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Jay:

    为了更好地为您提供支持、您能否提供完整的渠道? 您在设置中还在使用哪个摄像头? 您是否观察到 11.1 SDK 的类似行为?

    此致、

    Suren

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我们正在使用下面的流水线来完成应用程序。

    gst-launch-1.0 v4l2src device=/dev/video-rpi-cam0 io-mode=dmabuf-import num-buffers=500 ! \
    video/x-bayer, width=1920, height=1200, framerate=60/1, format=grbg ! \
    tiovxisp sink_0::device=/dev/v4l-rpi-subdev0 \
    dcc-isp-file=/opt/imaging/ar0235/dcc_viss_8bit_1920x1200.bin \
    sink_0::dcc-2a-file=/opt/imaging/ar0235/dcc_2a_8bit_1920x1200.bin \
    format-msb=9 sink_0::ae-mode=2 ! \
    video/x-raw, format=NV12, width=1920, height=1200, framerate=60/1 ! \
    tiovxmultiscaler name=msc \
    src_0::roi-startx=0 \
    src_0::roi-starty=60 \
    src_0::roi-width=1920 \
    src_0::roi-height=1080 \
    src_1::roi-startx=0 \
    src_1::roi-starty=60 \
    src_1::roi-width=1920 \
    src_1::roi-height=1080 \
    msc. ! \
    queue ! video/x-raw, format=NV12, width=1920, height=1080, framerate=60/1 ! \
    textoverlay text="src0" ! \
    v4l2h264enc extra-controls="c,video_gop_size=60,h264_i_frame_period=60,h264_profile=4,video_bitrate=0,frame_level_rate_control_enable=0,video_bitrate_mode=0,vbv_buffer_size=200,h264_level=12,prepend_sps_and_pps_to_idr=1" ! \
    video/x-h264,profile=high,width=1920,height=1080,stream-format=byte-stream,level=\(string\)3.1 ! \
    h264parse ! \
    mp4mux ! queue max-size-buffers=5000 !\
    filesink location=output1.mp4 \
    msc. ! \
    queue ! video/x-raw, format=NV12, width=640, height=360, framerate=60/1 ! \
    textoverlay text="src1" ! \
    v4l2h264enc extra-controls="c,video_gop_size=60,h264_i_frame_period=60,h264_profile=4,video_bitrate=0,frame_level_rate_control_enable=0,video_bitrate_mode=0,vbv_buffer_size=200,h264_level=12,prepend_sps_and_pps_to_idr=1" ! \
    video/x-h264,profile=high,width=640,height=360,stream-format=byte-stream,level=\(string\)3.1 ! \
    h264parse ! \
    mp4mux ! queue max-size-buffers=5000 !\
    filesink location=output2.mp4



    但是、当我们通过命令行执行此流水线时、我们无法重现此问题。 问题只能在我们的应用中重现。

    在这里、我们想知道 QoS 如何实现存储器互连? 如果有任何外设的存储器请求优先级高于其他外设、并且可以更改该外设、

    我不确定这是否可以帮助我们、但它至少会让我们更好地了解系统及其局限性。

    谢谢、
    Jay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在我们的定制器件中、我们使用 AR0235 单色图像传感器。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jay、  

    您是否验证了即使在我们 EVM 或定制电路板上发布的 SDK 11.1 代码中也可以观察到行为?

    此致

    Suren

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我们无法使用给定的流水线在 SDK9 和 SDK11 中重现此问题、但在应用中会出现问题。

    因此、 我们需要在以下几点输入:

    在这里、我们想知道 QoS 如何实现存储器互连? 如果有任何外设的存储器请求优先级高于其他外设、并且可以更改该外设、

    我不确定这是否可以帮助我们、但它至少会让我们更好地了解系统及其局限性。

    Jay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请允许我在几天内返回与 QoS 相关的查询。  

    是否还调试了从应用程序运行时显示伪影的原因。 您看到任何与延迟相关的问题吗? 您是否可以启用跟踪器以查看是否存在导致问题的任何延迟。

    此外、伪影是否会随着较新帧的显示而消失?

    此致

    Suren

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Suren、  

    一旦您对 QoS 相关查询进行了说明、请告诉我们。

    此致、

    Jay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Jay:

    TI 提供了 ",="" roboto,="" arial,="" sans-serif;="" font-size:="" 16px;="" font-weight:="" 400;="" margin:="" 0px;="" text-decoration:="" none;="" border-bottom:="" 0px="" rgb(10,="" 10,="" 10);"="">",="" roboto,="" arial,="" sans-serif;="" font-size:="" 16px;="" font-weight:="" 500;="" margin:="" 0px;="" text-decoration:="" underline="" 1px="" rgb(26,="" 13,="" 171);="" border-bottom:="" 0px="" 171);"="">K3 资源分区工具 来配置和生成 QoS 设置。 您是否查看过以下内容:

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62AX/11_01_07_05/exports/docs/linux/How_to_Guides/Host/K3_Resource_Partitioning_Tool.html

    此致

    Suren