【问题标题】:Streaming using GStreamer使用 GStreamer 进行流式传输
【发布时间】:2011-12-04 05:53:18
【问题描述】:

我在 System#1 上有一个高清视频“ed_hd.avi”。想通过网络流式传输并播放 System#2 中的内容。我在 Ubuntu 11.04 上使用 GStreamer,对此进行了很多尝试。各种各样的错误使这个目标难以诊断。将感谢您获得 System#1-end 和 System#2-end 的工作命令。

我尝试过的如下:

系统#1:

gst-launch filesrc location=ed_hd.avi ! decodedin ! x263enc ! video/x-h264 ! rtph264pay ! udpsink host=127.0.0.1 port=5000

系统#2:

gst-launch udpsrc port=5000 ! rtph264depay ! decodebin ! xvimagesink

目标是:将 avi 文件转换为原始视频。从第二个 System#2 流式传输。

谢谢。

【问题讨论】:

    标签: gstreamer rtp live-streaming


    【解决方案1】:

    你可以试试下面的

    gst-launch filesrc location=ed_hd.avi ! decodebin ! ffenc_mpeg4 ! rtpmp4vpay ! udpsink host=127.0.0.1 port=5000 
    

    如果这不起作用,请继续:

    您是否尝试过以下操作?您需要用视频箱替换他的音频箱

    http://delog.wordpress.com/2011/06/01/stream-raw-vorbis-audio-over-udp-or-tcp-with-gstreamer/

    也可以看看

    http://pastebin.com/PtD21Bx7

    这里将 v4l2src 替换为您的视频 src

    还有

    https://metalab.at/wiki/Gstreamer_One_Liners

    【讨论】:

      【解决方案2】:

      我认为您的问题是127.0.0.1 部分。那是一个 loopback 地址(检查ifconfig lo0 以查看Link encap:Local Loopback127.0.0.1 地址)。这不适用于两个系统,但它可能在单个系统上正常工作。

      改为使用对第二台机器公开可见的地址;检查ip addr showifconfig 输出以查找地址。在 System #1 的命令行中写入 System #2 的实际地址。

      【讨论】:

      • 在您的示例中,您混合了 H263 和 H264。同上关于 127.0.0.1 的评论。
      • @Wes,您可能希望直接评论 deltasumo 的问题——我没有提到 h263 和 h264...
      猜你喜欢
      • 2016-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-22
      相关资源
      最近更新 更多