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.

[参考译文] Linux/AM5728:8位原始编码问题

Guru**** 2601915 points
Other Parts Discussed in Thread: AM5728

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/649282/linux-am5728-8-bit-raw-encode-issue

器件型号:AM5728

工具/软件:Linux

大家好、

我们使用8位原始  视频输入, 将其与 am5728的 vip1 vin1a 连接。

当我使用 GST 命令  "gst-launch-1.0 -e v4l2src device=/dev/video1! 'video/x-raw、format=(string) NV12、width=(int) 640、height=(int) 480、framerate=(fraction) 30/1'! ducatih264enc! filesink location=test.h264"

视频 图像不正确。

我的 SDK 是 ti-processor-sdk-linux-am57xx-evm-03.00.04

有没有解决方案?

此致

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

    您的意思是不正确、能否链接图像?
    您是否观察到最新 PSDK 存在相同的问题?
    您是否可以尝试添加... !! VPE num-input-buffers=8! … 元件的位置?
    我还建议您在编码器后面添加 h264parse 元素、因为即使在流水线中有-e 选项、保存的视频也可能会损坏。
    当您尝试使用 yavta 时、您是否认为它正确?

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

    您好、Margarita、


    我尚未使用最新的 PSDK。

    根据您的建议、我使用

    " gst-launch-1.0 -e v4l2src device=/dev/video1! 'video/x-raw、format=(string) NV12、width=(int) 640、height=(int) 480、framerate=(fraction) 30/1'! VPE num-input-buffers=8! 'video/x-raw、format=(string) NV12、width=(int) 640、height=(int) 480、framerate=(fraction) 30/1'! ducatih264enc! h264parse! 文件链接位置=youjia.h264"

    但 视频图像不是正确的、  如图所示

    我没有使用 Yata、但我编写了一个测试程序来从  V4L2获取图像, 该图像与 所示的图像相同。

    这是 我的 test.c

    e2e.ti.com/.../v4l2_5F00_capture.c 当我向我可以使用的 VIP 输入 YUYV 16位时

    "gst-launch-1.0 -e v4l2src device=/dev/video1! 'video/x-raw、format=(string) NV12、width=(int) 640、height=(int) 480、framerate=(fraction) 30/1'!  ducatih264enc! !! filesink location=youjia.h264" 获取正确的映像。  

    当我向   VIP 输入原始的8位灰度时,am5728编码仍然 使用“format=(string) NV12”? 或需要  其他 格式

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

    是否确定格式正确?

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

    您好、Margarita、
    在 RAW 模式下,VIP 需要哪种格式?

    BR
    Jiffy

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

    请查看本指南:
    processors.wiki.ti.com/.../Linux_Core_VIP_User's_Guide
    您还可以尝试以下管道:
    gst-launch-1.0 -e v4l2src device=/dev/video1! 'video/x-raw、format=(string) NV12、width=(int) 640、height=(int) 480、framerate=(fraction) 30/1'! filesink location=x.yUV 要检查的是 v4l2src 元素的输出是否正确。
    在我看来、这个问题不是编码器问题。


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

    您好、Margarita、

    好的、非常感谢。

    我在本指南中找到:

    两个独立的24位视频端口、用于传输高达165MHz 的并行 RGB/ YUV/原始(或 BT656/1120)数据

    这意味着原始模式需要输入 BT656或 BT1120?

    BR
    Jiffy

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在原始捕获模式下、VIP 是一个只将数据按原样传递的接口、VIP 模块内不会进行进一步的处理。 现在、编码器需要 NV12 (单独的 Y 和 UV 交错缓冲器)数据格式进行编码。 在原始模式下进行捕获时、传感器用于流式传输数据的数据格式是什么? 如果是以原始 Bayer 模式发送数据、则需要先将数据转换为 NV12格式、然后再将其发送到 IVA 编码器。 AM5728没有任何像 ISP 这样的硬件加速器来执行原始 Bayer 到 YUV 的转换。 这需要在软件中完成。