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:关于 AM5728 GP EVM 的全高清 H.264编码/解码的 gstreamer 命令

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

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/627791/linux-am5728-about-gstreamer-command-for-full-hd-h-264-enc-dec-for-am5728-gp-evm

器件型号:AM5728

工具/软件:Linux

您好、香榭丽舍

您能告诉我 AM5728 GP EVM 全高清 H.264编码/解码的 gstreamer 命令吗?
I'v 阅读下面的网站、但命令 用于 HD 1280x720、而不是全高清。  

 o TI EP Wiki:处理器培训:多媒体
   (processors.wiki.ti.com/.../Processor_Training:_Multimedia)

   -运行 gstreamer 流水线

此致、
J-Breeze

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

    以下是用于全高清编码的示例流水线:
    gst-launch-1.0 videotestsrc num-buffers=100! 'VIDEO/x-RAW、format=(string) NV12、width=1920、height=1080、帧速率=(分数) 60/1'! ducatih264enc level=level-51 profile=HIGH! 排队! h264parse! filesink location=test.h264

    您可以使用多媒体用户指南、只需更改分辨率/fps 的电容滤波器。

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

    您好、Margarita、

    感谢您的信息。 实际上、我想对 mp4文件进行解码和编码、并且我已经尝试遵循 GStreamer 流水线。

    gst-launch-1.0 -v 文件 rc location=/home/root/test.mp4! qtdemux! h264parse! ducatih264dec! 'VIDEO/x-RAW、format=(string) NV12、width=1920、height=1080、帧速率=(分数) 60/1'! ducatih264enc level=level-51 profile=基线! 排队! h264parse! mp4 mux! 文件链接位置= test2.mp4

    然后、我在下面得到了一个错误。 管道中是否有任何错误?

    root@am57xx-EVM:/# gst-launch-1.0 -v 文件 rc location=/home/root/test.mp4! qtdemux! h264parse! ducatih264dec! 'VIDEO/x-RAW、format=(string) NV12、width=1920、height=1080、帧速率=(分数) 60/1'! ducatih264enc level=level-51 profile=基线! 排队! h264parse! mp4 mux! 文件链接位置= test2.mp4
    正在将管道设置为暂停...
    [2149.953570] OMAP-IMU 55082000.MMU:55082000.MMU:2.1版
    管道是 PREROLLING ...
    /GstPipeline0/GstH264Parse:h264parse0.GstPad:sink:cap ="video/x-h264\、\ stream-format\=(string\) AVC、\对齐\=(string\) aeau\、\ level\=(string\) 5.1\、\、\(string\) ase-format= 1) 10001320/2801&baper=(faper=) 100020=(fx 1) fapere1000、faper1160 (faper1) faper1)
    /GstPipeline0/GstH264Parse:h264parse0.GstPad:src:cap ="video/x-h264\、\ stream-format\=(string\) byte-stream \、\对齐\=(string\) au、\ level\\\=(string\) 5.1、\(baseline\(string\) begy=)、try= 1) x (frensoritured、try= 1) x (frensority= 1) x (begraint、try= 1) x 1) x (begraint、turbegream1) x 1) x (begraint、x (begraint、x 1) x 1) x 1) x 1 (begraint (
    /GstPipeline0/GstDucatiH264Dec:ducatih264dec0.GstPad:src:cap ="video/x-ray\、\ format\=(string\) NV12\、\ width\=(int\) 2048\、\ height\=(int\) 1184\、\、\(trybegy\) begrey\(try\) m1) mity\(begrainity\、tury= 1) m/像素比例1、turbegray= 1 (1) m/(1) mperturbegray\
    /GstPipeline0/GstDucatiH264Dec:ducatih264dec0.GstPad:灌电流:cap ="VIDEO/x-h264\、\ stream-format\=(string\) byte-stream\、\(string\) alignment\=(string\) dimeperity\(string\)/framex (frame\) x) 1) x (convideal\、try= 1) x (tured perturbensority\、try= 1) x (turedpertured) x (turbensority\、tured) x 1) x 1) x 1、turbandurb针对 x 1 x 1 x 1 x 1 x 1 x 1、x (turb
    /GstPipeline0/GstDucatiH264Dec:ducatih264dec0.GstPad:src:cap ="VIDEO/x-RAW\、\ format\\(string\) NV12\、\ width\=(int\) 2048\、\ height\=(int\) 1184\、\、format\(frame= 1) mortex=(ture-me-mref)、turbegray= 1 m/ me-mref (try\) mecurbegray\(try\) m\
    错误:来自元素/GstPipeline:流水 线0/GstQTDemux:qtdemux0:Gstreamer 遇到常规流错误。
    其他调试信息:
    ./../../gst-plugins-good-1.8.3/gst/isomp4/qtdemux.c (5520):gst_qtdemux_loop ():/GstPipeline:流水 线0/GstQTDemux:qtdemux0:
    流媒体已停止、原因未协商
    错误:管道不想进行预发布。
    正在将管道设置为 NULL ...
    /GstPipeline:流水线0/GstDutatiH264Dec:ducatih264dec0.GstPad:src:cap ="NULL"
    /GstPipeline:流水线0/GstDutatiH264Dec:ducatih264dec0.GstPad:灌电流:电容="NULL"
    /GstPipeline:流水线0/GstH264Parse:h264parse0.GstPad:src:cap ="NULL"
    /GstPipeline:流水线0/GstH264Parse:h264parse0.GstPad:SINK:CAP ="NULL"
    /GstPipeline:流水线0/GstQTDemux:qtdemux0.GstPad:video_0:cap ="NULL"
    正在释放管道...
    root@am57xx-EVM://

    此致、
    J-Breeze

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

    您好!

    请尝试以下操作:
    gst-launch-1.0 -v 文件 rc location=/home/root/test1.mov! qtdemux! h264parse! ducatih264dec! VPE! 'VIDEO/x-RAW、format=(string) NV12、width=1920、height=1080、帧速率=(分数) 30/1'! 排队! ducatih264enc level=level-51 profile=基线! 排队! h264parse! mp4 mux! 文件链接位置= test2.mp4

    这在我这边工作。


    BR
    玛格丽塔

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

    您好、Margarita、

    感谢您的快速回复。 您告诉我的命令正常工作。

    我想再问一件事。 我已经尝试关注 用于 RTP 流的 GStreamer 流水线。 但它不会向网络发送数据。
    它有什么问题吗?

    …!  ducatih264enc level=level-51 profile=基线! rtph264支付! udpsink 主机=x.x.x.x

    此致、
    J-Breeze

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

    您好、Margarita、

    请给我一些建议吗?

    此致、
    J-Breeze

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

    您好!

    您能否发布您正在使用的完整流水线?

    我建议您尝试以下操作:

    !!  排队! ducatih264编码 !! 排队! h264parse! 排队! 太棒了! udpsink 端口=x host=x.x.x.x sync-false

    !!  排队! ducatih264编码 !! 排队! h264parse! 排队! rtph264支付 ! udpsink 端口=x host=x.x.x.x sync-false

    在这两种情况下、我都建议您在编码器之后添加解析器。

    [引用 user="j-cane">但它不会向网络发送数据。
    它有什么问题吗?
    [/报价]

    您是否看到任何错误? 如果是、您能否发布它。

    BR
    玛格丽塔

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

    您好、Margarita、

    以下命令有效。 感谢您的支持。

    …! ducatih264enc level=level-51 profile=基线! 太棒了! 非常棒! udpsink 主机=x.x.x.x

    此致、
    J-Breeze

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

    您好!


    我很高兴这个问题得到解决。

    有关新问题、请打开新主题。 我要关闭这个。

    BR
    玛格丽塔