RTSP推流+流媒体+播放流媒体技术方案
分类:
文章
•
2024-09-28 09:00:28
-
推流与拉流的前提都是需要有流媒体服务器,所以第一步是进行搭建流媒体服务器,本文的流媒体服务器搭建方式使用的是EasyDarwin流媒体方案

下载EasyDarwin流媒体服务器,进行服务安装,本机ip地址加端口10008就可查看服务安装结果与推流拉流列表等。
网站地址:http://ip:10008

EasyDarwin官网是:http://www.easydarwin.org/
可以在官网上进行下载EasyDarwin,EasyDarwin流媒体服务是免费,不过EasyDarwin整体技术方案是收费的,所以没有整体使用EasyDarwin官网的技术方案,只使用了EasyDarwin流媒体服务的其中这一项。
-
我们在第一步搭建好了流媒体服务器,第二步进行推流,推流的方案使用的ffmpeg进行的推流,ffmpeg是特别强大的专门用于处理音视频的开源库,这里就不做特殊的介绍了,使用ffmpeg的推流指令可以进行推流操作。

如上图就是通过ffmpeg进行的推流实现的推流操作,具体推流指令可以去ffmpeg官网进行查询,针对视频处理采集、音频处理采集、推流等指令都可以结合操作。
-
做好以上两步后就只剩下取流播放了,取流播放器使用的是MediaPlayer播放器进行的播放
/**
* 此处可以进行api接口
* api接口进行获取推流列表、拉流列表等等
* 详细的可看api文档信息
* 接口地址查看信息
* http://本机ip:10008/apidoc/#api-stats
*
*/
string ip = txt_userip.Text;
string rtsp = $"rtsp://{ip}/xxx";
if (libvlc_instance == IntPtr.Zero)
{
libvlc_instance = MediaPlayer.Create_Media_Instance();
player = MediaPlayer.Create_MediaPlayer(libvlc_instance, pictureBox1.Handle);
}
var isPlay = MediaPlayer.NetWork_Media_Play(libvlc_instance, player, rtsp);