【问题标题】:Gstreamer - stream with image overlay to youtubeGstreamer - 带有图像叠加层的流式传输到 youtube
【发布时间】:2022-04-04 06:01:05
【问题描述】:

尝试使用 picamera 2 从我的 Jetson nano 流式传输到使用 gstreamer 的 youtube。
仅流式传输视频有效,但我需要使用 multifilesrc 将视频与图像叠加(图像会随时间变化)。 几个小时后,a 没有成功将 multifilesrc 合并到管道中。 我尝试过合成器、视频混音器,但都失败了。也许使用 nvcompositor? 有任何想法吗?

这就是我到目前为止所拥有的

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! \\
  \"video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)NV12, framerate=(fraction)30/1\" ! omxh264enc ! \\
  \'video/x-h264, stream-format=(string)byte-stream\' ! \\
   h264parse ! queue ! flvmux name=muxer alsasrc device=hw:1 ! \\
   audioresample ! \"audio/x-raw,rate=48000\" ! queue ! \\
   voaacenc bitrate=32000 ! aacparse ! queue ! muxer. muxer. ! \\
   rtmpsink location=\"rtmp://a.rtmp.youtube.com/live2/x/xxx app=live2\"

编辑:试过这个但不工作

gst-launch-1.0 \\
    nvcompositor name=mix sink_0::zorder=1 sink_1::alpha=1.0 sink_1::zorder=2 ! nvvidconv ! omxh264enc ! \\
    \'video/x-h264, stream-format=(string)byte-stream\' ! \\
    h264parse ! queue ! flvmux name=muxer alsasrc device=hw:1 ! \\
    audioresample ! \"audio/x-raw,rate=48000\" ! queue ! \\
    voaacenc bitrate=32000 ! aacparse ! queue ! muxer. muxer. ! \\
    rtmpsink location=\"rtmp://a.rtmp.youtube.com/live2/x/xxx app=live2\" \\
    nvarguscamerasrc sensor-id=0 ! \\
    \"video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)NV12, framerate=(fraction)30/1\" ! \\
    nvvidconv ! video/x-raw, format=RGBA, width=1920, height=1080, framerate=30/1 ! autovideoconvert ! queue ! mix.sink_0 \\
    filesrc location=logo.png ! pngdec ! alphacolor ! video/x-raw,format=RGBA ! imagefreeze ! nvvidconv ! mix.sink_1

    标签: youtube gstreamer nvidia-jetson-nano picamera


    【解决方案1】:

    尽管在某些情况下它可能在没有这些的情况下工作,但对于使用 nvcompositor,我建议在 NVMM 内存中使用 RGBA 格式,输入和输出的像素纵横比 = 1/1。在 nvvidconv 之后使用 caps 以确保在输入管道中,并在编码之前使用 nvvidconv 将 nvcompositor 输出转换为 NV12(仍在 NVMM 内存中)。

    您还可以在合成器之前为徽标的第二个输入添加一个队列。可能不是强制性的,但更安全。你也可以在 imagefreeze 之后设置一个大写的帧率。

    最后,您可能必须为所有来源设置 xpos、ypos、宽度和高度,以获得更可靠的行为。

    【讨论】:

      猜你喜欢
      • 2021-03-15
      • 1970-01-01
      • 1970-01-01
      • 2011-09-24
      • 2013-04-13
      • 1970-01-01
      • 2019-01-16
      • 2016-06-13
      • 2020-03-22
      相关资源
      最近更新 更多