搭建流媒体服务器,完成属于自己的直播服务

  • A+
所属分类:教程下载 服务器

搭建的原因

最近工作需要与异地工作的同事讨论问题,需求是能看到同事的画面和电脑桌面屏幕和还有声音。所以需要搭建一台流媒体服务器,现在很火的直播一般都是用RTSP和RTMP,做点播用HTTP。做视频会议的时候原来使用的是SIP协议,现在基本上被RTMP协议取代了。大体实现的思路是通过网络摄像头拍摄视频,然后将视频推给服务器,服务器接收监控摄像头的数据,然后转发给用户观看。

常用的两个协议

RTMP是流媒体协议。 它是Adobe的私有协议,未完全公开。 一般传输的是flv,f4v格式流。在TCP1个通道上传输命令和数据。

RTSP 是流媒体协议 ,它是共有协议,并有专门机构做维护。它的传输的是ts、mp4格式的流。它的传输一般需要 2-3 个通道,命令和数据通道分离。

实现方案

先说一下目前主流开源流媒体服务器:Live555,EasyDarwin,DarwinStreamingSrvr,jrtplib,ffmpeg,Libav,Red5,Open Streaming Server,FMS,Wowza,FreeCast,Ngix+RTMP模块等。如果使用rtsp协议目前用的比较流行的是live555、vlc、DarwinStreamingSrvr等开源软件。

如果使用rtmp协议可以使用Ngix+RTMP插件模块来搭建服务端。这次我们选用DSS(Darwin Streaming Server),DSS是Apple公司提供的开源实时流媒体播放服务器程序。采用C++编写, 并且DSS是一个开放源代码的,基于标准的流媒体服务器,可以运行在Windows NT和Windows 2000,以及几个UNIX实现上,包括Mac OS X,Linux,FreeBSD,和Solaris操作系统上的。 采用obs做推流,

用vlc拉流播放。

安装DSS

首先下载Darwin Streaming Server:

搭建流媒体服务器,完成属于自己的直播服务

下载完成后解包DarwinStreamingSrvr.tar.gz文件,进入dss目录启动shell中输入

sudo /usr/local/sbin/DarwinStreamingServer
sudo /usr/local/sbin/streamingadminserver.pl

确认dss服务启动,服务运行可以通过RTSP访问流媒体了,打开浏览器http://127.0.0.1:1220/,访问Darwin Streaming Server WEB界面默认端口1220.看到如下界面:

搭建流媒体服务器,完成属于自己的直播服务

OBS 推送

obs (OBS Studio)是 windows 系统端开源的推流软件,编码使用H264(X264)和AAC ,它一款非常好用的开源直播推流软件,为用户提供了视频、文本、图像等的捕获录制功能。基于GPU的高性能游戏流媒体游戏捕获。支持DirectShow的捕获设备(摄像头,采集卡,等),双线性或lanczos3重采样。当然选择它主要是开源,免费。也比较好用。

搭建流媒体服务器,完成属于自己的直播服务
搭建流媒体服务器,完成属于自己的直播服务

VLC拉流观看直播

首先打开VLC media player,然后点左上角"媒体"——"打开网络串流",然后输入网络URL输入rtsp://ip/xxx, 就可以播放了

搭建流媒体服务器,完成属于自己的直播服务

Ok~~

附上一份音视频大纲给大家

搭建流媒体服务器,完成属于自己的直播服务
  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
广告也精彩

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: