龙空技术网

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

音视频开发老舅 381

前言:

此刻同学们对“ffmpeg录制rtsp”可能比较关心,小伙伴们都想要知道一些“ffmpeg录制rtsp”的相关知识。那么小编在网上搜集了一些对于“ffmpeg录制rtsp””的相关知识,希望兄弟们能喜欢,姐妹们一起来学习一下吧!

环境介绍

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

一、部署EasyDarwin服务器

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

官网地址:

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

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

【相关学习资料推荐,点击下方链接免费报名,先码住不迷路~】

【免费】FFmpeg/WebRTC/RTMP/NDK/Android音视频流媒体高级开发-学习视频教程-腾讯课堂

C++音视频配套学习资料点击莬费领取→音视频开发(资料文档+视频教程+面试题)(FFmpeg+WebRTC+RTMP+RTSP+HLS+RTP)

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

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

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

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

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

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

采用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

播放测试:

【相关学习资料推荐,点击下方链接免费报名,先码住不迷路~】

【免费】FFmpeg/WebRTC/RTMP/NDK/Android音视频流媒体高级开发-学习视频教程-腾讯课堂

C++音视频配套学习资料点击莬费领取→音视频开发(资料文档+视频教程+面试题)(FFmpeg+WebRTC+RTMP+RTSP+HLS+RTP)

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

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

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

软件运行效果:

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

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

如果你对音视频开发感兴趣,觉得文章对您有帮助,别忘了点赞、收藏哦!或者对本文的一些阐述有自己的看法,有任何问题,欢迎在下方评论区与我讨论!

标签: #ffmpeg录制rtsp