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.

[参考译文] [TDA4VM] V4L2测试应用程序错误

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1121679/tda4vm-v4l2-test-application-error

大家好、TI 团队成员

我通过  阅读指南试用了 V4L2视频编码器测试应用程序。 (https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-jacinto7/08_02_00_03/exports/docs/linux/Foundational_Components_Multimedia_D5520_VXE384.html)

当我运行" tienc_encode -i 0000.yUV -f NV12 -c h264 -w 640 -h 480 -o video.h264"时、日志如下。

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
root@j7-evm:/run/media/sda1/dump# tienc_encode -i 0000000000.yuv -f NV12 -c H264 -w 640 -h 480 -o video.h264
query_ctrls Enumerating all non-compound
query_ctrls Got ctrl.id=0x9909cb type=1
query_ctrls name=GOP size minimum=1 maximum=7200
query_ctrls step=1 default_value=1800
query_ctrls flags=00000000
query_ctrls Got ctrl.id=0x9909cf type=1
query_ctrls name=Video Bitrate minimum=50000 maximum=100000000
query_ctrls step=1 default_value=500000
query_ctrls flags=00000000
query_ctrls Got ctrl.id=0x990a66 type=1
query_ctrls name=H264 I period minimum=1 maximum=600
query_ctrls step=1 default_value=30
query_ctrls flags=00000000
query_ctrls Enumerating all non-compound ended errno=22 Invalid argument
query_ctrls Enumerating all non-compound ext
query_ctrls Got ext_ctrl.id=0x9909cb type=1
query_ctrls name=GOP size minimum=1 maximum=7200
query_ctrls step=1 default_value=1800
query_ctrls elem_size=4 elems=1 nr_of_dims=0
query_ctrls flags=00000000
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

此外、我使用了 PSDK8.2。

我想知道我是否错过了像修补程序这样的东西。

此致

永西格。

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

    您好、Yongsig、

    我怀疑这可能是您使用的目录的问题。

    root@j7-evm:/run/smedia/sda1/dump  此目录是挂载目录,可能不存在写入权限。

    您能否检查 正常的主目录并查看其是否正常工作?
    如果可以、 您能否发送您 正在使用的输入文件(YUV 文件)、以便在我们的结尾重新生成该文件?

    此致、
    Nikhil


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

    你(们)好,Nikhil

    感谢您的回复。

    我在常规主目录中尝试过。 但它失败了。 日志与以前相同。

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    drwx------ 3 root root 4096 Mar 23 20:56 .
    drwxr-xr-x 3 root root 4096 Mar 23 2022 ..
    -rw------- 1 root root 6410 Mar 23 2022 .bash_history
    drwxr-xr-x 3 root root 4096 Mar 23 20:52 .cache
    -rwxrwxrwx 1 root root 460800 Mar 23 20:52 0000000000.yuv
    root@j7-evm:~# tienc_encode -i 0000000000.yuv -w 640 -h 480 -o test.h264
    No format found. Defaulting to NV12
    No format found. Defaulting to H264
    query_ctrls Enumerating all non-compound
    query_ctrls Got ctrl.id=0x9909cb type=1
    query_ctrls name=GOP size minimum=1 maximum=7200
    query_ctrls step=1 default_value=1800
    query_ctrls flags=00000000
    query_ctrls Got ctrl.id=0x9909cf type=1
    query_ctrls name=Video Bitrate minimum=50000 maximum=100000000
    query_ctrls step=1 default_value=500000
    query_ctrls flags=00000000
    query_ctrls Got ctrl.id=0x990a66 type=1
    query_ctrls name=H264 I period minimum=1 maximum=600
    query_ctrls step=1 default_value=30
    query_ctrls flags=00000000
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    我认为权限没有问题。

    我附加了 YUV 文件。

    e2e.ti.com/.../0000000000.zip

    此致

    永西格

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

    你(们)好,Nikhil

    我从 https://git.ti.com/cgit/jacinto7_multimedia/下载了 tienc_encode 的源代码

    因此我修复了一些代码、例如、我从 main.c 的第716行禁用到第842行

    然后 、来自 streaming_loop 模块中 POLL (&PFD、1、100)的 ret 值始终为0。

    您知道原因吗?

    此致

    永西格

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

    您好、Yongsig、

    您会看到上述内容、因为在 tienc_encode 框架中、我们需要多个帧(即多个帧)才能开始编码。


    您可以参考下面的函数

    https://git.ti.com/cgit/jacinto7_multimedia/videnc-test-app/tree/main.c?id=a5e7d820bea1be24f25a8369d4d4521c784f869a#n124

    因此、您是否可以尝试提供更多的帧来对其进行编码?

    编码单个图像的另一种方法是使用 gstreamer、如下所示

    gst-launch-1.0文件 rc location=./0000000000.yUV blocksize=460800! VIDEO/x-RAW、FORMAT=NV12、width=640、height=480、framerate=30/1、 隔行模式=逐行、比色法= bt601! v4l2h264enc! h264parse! filesink location=./video_gst.264

    此致、
    Nikhil

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

    如果我使用多个帧、它会起作用。

    谢谢 Nikhil。