流媒体服务器

基础知识:

简单的说就是把视频设备(摄像机,监控头等)的视频信号采集到服务器,供网络访问。能够像Web服务器发布HTML文件一样发布流媒体文件和从摄像机、视频采集卡等设备传来的实况流。

 

nginx-rtmp-module

NGINX的流媒体插件,除了直播发布音视频流之外具备流媒体服务器的常见功能

  • 比如推拉流媒体资源
  • 基于HTTP的FLV/MP4 VOD点播
  • HLS (HTTP Live Streaming) M3U8的支持
  • 基于http的操作(发布、播放、录制)
  • 可以很好的协同现有的流媒体服务器以及播放器一起工作
  • 在线调用ffmpeg对流媒体进行转码
  • H264/AAC音视频编码格式的支持
  • linux/BSD/MAC系统的支持

simple-rtmp-server

一个采用MIT协议授权的国产的简单的RTMP/HLS 直播服务器,其核心的价值理念在于简单高效。

tep 1: build srs

tar xf simple-rtmp-server-*.*.tar.gz
cd simple-rtmp-server-*.*/trunk
./configure --with-ssl --with-hls
make

step 2: start srs

./objs/simple_rtmp_server -c conf/srs.conf

step 3(optional): start nginx for HLS

sudo ./objs/nginx/sbin/nginx

step 4: publish live stream

FMS URL: rtmp://127.0.0.1:1935/live
Stream:  livestream
For example, use ffmpeg to publish:
    ffmpeg -re -i source.flv -vcodec copy -acodec copy \
    -f flv -y rtmp://127.0.0.1:1935/live/livestream

step 5: play live stream

rtmp url: rtmp://127.0.0.1:1935/live/livestream
m3u8 url: http://127.0.0.1:80/live/livestream.m3u8

 

Flazr

Flazr 是一个实现了 RTMP 流媒体传输协议的 Java 类库,该项目包含一个流媒体服务器和相关的工具。

 

Red5 Pro

是Red5的升级版,它不仅支持RTMP协议,还支持RTSP、HLS协议。是一个采用Java开发开源的Flash流媒体服务器。它支持:把音频(MP3)和视频(FLV)转换成播放流; 录制客户端播放流(只支持FLV);共享对象;现场直播流发布;远程调用。Red5使用RTMP, RTMPT, RTMPS, 和RTMPE作为流媒体传输协议,在其自带的一些示例中演示了在线录制,flash流媒体播放,在线聊天,视频会议等一些基本功能。

 

Darwin streaming server(简称DSS)

DSS是Apple公司提供的开源实时流媒体播放服务器程序。整个程序使用C++编写,在设计上遵循高性能,简单,模块化等程序设计原则,务求做到程序高效,可扩充性好。并且DSS是一个开放源代码的,基于标准的流媒体服务器,可以运行在Windows NT和Windows 2000,以及几个UNIX实现上,包括Mac OS X,Linux,FreeBSD,和Solaris操作系统上的。

 

EasyDarwin

EasyDarwin开源流媒体服务器是基于Apple的开源项目Darwin Streaming Server v6.0.3开发和扩展的,EasyDarwin支持标准RTSP/RTP/RTCP协议,具备RTSP直播功能,适应PC、安卓、IOS直播等各终端平台,最大程度贴近安防监控、移动互联网流媒体需求。

 

EasyRMS

EasyRMS是EasyDarwin开源流媒体平台的录像与回放服务,能够直接对接安防摄像机、EasyDarwin流媒体服务器、其他标准RTSP服务,基于HLS协议,录像存储为ts流,支持本地存储与阿里云对象存储(OSS云存储),接口调用非常简单,架构灵活,而且非常易于扩展,开发者可以用EasyRMS进行扩展,开发成自己需要的云存储服务。

 

Kurento

Kurento 是一个 WebRTC 流媒体服务器以及一些客户端API,有了它,开发WWW及智能手机平台的高级视频应用就变得更加容易。可以利用Kurento开发的应用类型包括,视频会议,音视频广播,音视频录制、转码等。

 

Feng

Feng是LSCUBE维护的开源流媒体服务器,兼容IETF标准,实现了RTSP、RTP/RTCP。

Feng支持的编码标准:

音频:

  • MPEG Audio (MPEG-1/2 Layer I/II/III) (rfc2250)
  • Vorbis (draft)
  • AAC (MPEG-4 Part 3) (rfc3640)

视频:

  • MPEG Video (MPEG-1/2) (rfc2250)
  • MPEG 4 Visual (MPEG-4 Part 2) (rfc3016)
  • H.264 (MPEG-4 Part 10) (rfc3984)
  • H.263 / H.263+ (rfc4629)
  • VP8 (draft)
  • Theora (draft)

Feng的主要特性包括:多格式支持、媒体定位、模块化架构。

Feng由C语言编写,依赖Glib、ffmpeg、libev和netembryo等库。

 

Live555

Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+、DV、JPEG视频和多种音频编码。同时由于良好的设计,Live555非常容易扩展对其他格式的支持。目前,Live555已经被用于多款播放器的流媒体播放功能的实现,如VLC(VideoLan)、MPlayer。

 

转载于:https://my.oschina.net/yangty2017/blog/950160

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值