FFMPEG音视频开发 发布RTSP流(采用EasyDarwin作为流媒体服务器)

举报
DS小龙哥 发表于 2022/07/17 19:36:24 2022/07/17
【摘要】 EasyDarwin拥有完整的源代码,可以帮助开发者更快更简单实现流媒体音视频产品功能,使用完全免费;下面就介绍一下EasyDarwin的使用过程。

环境介绍

当前使用的操作系统: win10 64位

一、部署EasyDarwin服务器

据官网介绍,EasyDarwin拥有完整的源代码,可以帮助开发者更快更简单实现流媒体音视频产品功能,使用完全免费;下面就介绍一下EasyDarwin的使用过程。

官网地址: http://www.easydarwin.org/

img

img

img
img

运行成功会弹出一个控制台窗口:

img

然后打开浏览器输入 http://localhost:10008, 进入控制页面,默认用户名密码是admin/admin

img

img

img

二、ffmpeg命令行推rtsp流进行测试

win32下使用FFMPEG 4.2.2库下载地址: https://download.csdn.net/download/xiaolong1126626497/12321684

ffmpeg推流本地视频文件到RTSP服务器: (UDP这是采用协议)

C:/FFMPEG/ffmpeg_x86_4.2.2/bin/ffmpeg.exe -re -i "D:/BaiduNetdiskDownload/测试视频/Earth_enc_ass.mp4" -vcodec copy -codec copy -f rtsp rtsp://127.0.0.1:554/stream

img

打开EasyDarwin后台网页可以看到流已经上传上来了。

img

接下来使用VLC、PotPlayer、或者自己编写一个流媒体播放器就可以拉取ffmpeg发布的RTSP流。

下面这个是采用自己开发的流媒体播发器播放的效果:

img

这是采用PotPlayer播放器播放的效果:

img

采用TCP协议方式推流:(支持外网更加稳定)

C:/FFMPEG/ffmpeg_x86_4.2.2/bin/ffmpeg.exe -re -i "D:/BaiduNetdiskDownload/测试视频/Earth_enc_ass.mp4" -rtsp_transport tcp -vcodec h264 -f rtsp rtsp://127.0.0.1:554/stream

img

img

播放测试:

img

img

三、采用ffmpeg代码方式推rtsp流到服务器

对于RTMP和RTSP两种格式需要使用两种不同的封装器。

//RTMP封装器
//avformat_alloc_output_context2(&oc,nullptr,"flv",filename); //发布到网络

//RTSP封装器
avformat_alloc_output_context2(&oc,nullptr,"rtsp",filename); //发布到网络

软件运行效果:

img

网页上已经提示收到发布的rtsp流:

img

采用PotPlayer****播放的效果: 效果:  实现桌面同屏/声画同步。

img

img

如果想自己采用FFMPEG代码方式推流本地摄像头+声卡数据或者摄像头+声卡数据到服务器,可以参考这里:
https://blog.csdn.net/xiaolong1126626497/article/details/105324396

如果想自己采用FFMPEG代码方式开发流媒体播放器,可以参考这里:
https://blog.csdn.net/xiaolong1126626497/article/details/119247481

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。