如何搭建gstreamer中的rtsp服务器进行推流

系列文章目录

Gstreamer从入门到放弃?


前言

使用gstreamer中自带的rtsp服务器,就能快速的以管道的形式搭建rtsp服务器推流


提示:以下是本篇文章正文内容,下面案例可供参考

下载gst-rtsp-server

在gstreamer官网下载相关版本源码包。首先查看自己系统gstreamer的版本。比如我使用的ubuntu20.04的gstreamer是1.16.2版本:

>
这里下载1.16.2.tar.xz就行了。在这里插入图片描述
解压后进入目录。./configurer 然后make编译。进入examples目录就能看到已经编译好的各种示例程序以及源码。在这里插入图片描述

推流测试

test-launch

下面演示test-launch测试。

  • 推流usb摄像头JPEG格式视频同时显示

./test-launch “( v4l2src device=/dev/video0 ! image/jpeg,width=1280,height=720,framerate=30/1 ! jpegdec ! timeoverlay ! tee name=vsrc vsrc. ! queue ! videoconvert ! ximagesink vsrc. ! queue ! x264enc tune=zerolatency ! rtph264pay name=pay0 pt=96 )”

在这里插入图片描述

  • 推流videotestsrc

    为了方便演示,我这里使用videotestsrc来推流

./test-launch “( videotestsrc ! video/x-raw,width=640,height=480,framerate=30/1 ! timeoverlay ! tee name=vsrc vsrc. ! queue ! videoconvert ! ximagesink vsrc. ! queue ! x264enc tune=zerolatency ! rtph264pay name=pay0 pt=96 )”

程序运行会有提示本地回环rtsp地址 。使用vlc拉流
在这里插入图片描述
其中左边视频显示窗口是推流端显示窗口。右边是vlc拉流端显示窗口。通过叠加一个计时器timeoverlay可以比较拉流显示的延迟时间。在外部使用推流端IP地址拉流同样可以拉流。这里虚拟机的ip地址是192.168.31.36。使用windows端的vlc中使用 rtsp://192.168.31.36:8554/test 同样可以拉流成功。
在这里插入图片描述

其他使用方式

在example目录下还有许多其他测试程序。比如test-appsrc。源代码中是使用appsrc方式送入一张RGB16格式不断黑白交替的图片进入gstreamer管道中,再经过rtsp推流。我们也可以在此基础上将自己需要的的外部数据送进gstreamer管道内推流。其他的示例程序就不再一一讲述了。有兴趣的朋友可以留言私下交流讨论。


总结

gst-rtsp-server可以结合gstreamer建立管道可以更加快速、灵活的推流。

2021.11.23 晚上

  • 8
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 32
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 32
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

此心安处是吾鄕

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值