您的位置:首页 > 其它

播放RTMP协议的流媒体的几种选择

2017-04-26 19:29 627 查看
播放网络视频,通常解析库我们可以有多个选择 FFMPEG,Daniulive 或者 vitamio。

什么FFMPEG?

官网地址: 地址

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。

支持的编码 源自FFmpeg项目组的两个视频编码 Snow FFV1 

支持的格式 ASF、AVI、BFI、IFF、RL2、FLV、MXF、Material eXchange Format、SMPTE、377M、Matroska、Maxis XA、MSN Webcam stream、MPEG transport stream、TXD、OMA、GXF、General eXchange Format、SMPTE、360M、mov、mp4、m4a、3gp。

大牛直播(Daniulive)

官网地址: 地址

github地址:地址

国内外为数不多不依赖开源框架、公网毫秒级延迟、跨平台(windows/android/iOS)rtmp推流、rtmp/rtsp直播播放利器"SmarterStreaming",系daniulive(大牛直播)出品的跨平台视频采集、直播SDK(支持rtmp推流/rtmp播放/rtsp播放,如windows推流(windows pusher)/android推流(android pusher)/iOS推流(iOS pusher)/windows播放器(windows player)/android播放器(android
player)/iOS播放器(iOS player)),也许是最靠谱的视频直播推流、播放SDK之一,助您轻松实现类似于花椒、映客、斗鱼或传统行业低延迟、高稳定直播推送与播放。

适用于秀场直播、媒体移动直播、应急指挥调度(针对保险、城管、交警、消防、公安等职能管理部门的单兵应急执法系统)、可视化购物、远程专家诊断、可视化巡检、(如电信/电力线路/铁路沿线/水利设施/油田/消防设施巡检)、移动视频安防监控,企业内训、金融在线直播室、在线教育、微信直播、监控对接、活动现场直播、游戏直播等场景。

支持平台:windows/android/iOS

功能列表:

 超低延迟的rtmp播放器;

 超低延迟的rtsp播放器;

 完美支持多实例播放(同时播放多路stream,可同时支持rtmp、rtsp stream播放);

 支持RTSP TCP/UDP模式切换;

 支持播放端,buffer设置;

 支持秒开模式;

 audio支持aac/speex/g.711;

 支持自定义播放布局;

 音视频多种render机制;

 支持播放过程中,'实时静音/取消静音';

 支持播放url快速切换;

 android/iOS支持软硬解码,业内真正靠谱的超低延迟、低资源占用播放rtsp/rtmp 1080p+。

什么是Vitamio?

官网地址: 地址

github地址:地址

Vitamio是一款 Android 与 iOS 平台上的全能多媒体开发框架,全面支持硬件解码与 GPU 渲染。

Vitamio能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频,还可以在Android 与 iOS 上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8) 等常见的多种视频流媒体协议,包括点播与直播。

Vitamio支持各种常见的流媒体协议,可以点播或者直播音频和视频,例如如下常见协议均能无缝支持: 

MMS、RTSP (RTP, SDP)、RTMP、HTTP progressive streaming、HLS - HTTP live streaming (M3U8)

音频和视频格式 

Vitamio使用了 FFmpeg 做为媒体解析器和最主要的解码器,同时开发了针对不同移动平台的硬解码方案,能够完美支持 H.264/AVC、H.263、MPEG4 等常见的视频编码,覆盖上百种多媒体格式。下表只是一些最常见的视频格式支持,除特殊标明,全部支持硬件加速: 

DivX/Xvid、WMV (一般只有软解码)、FLV、TS/TP、RMVB (只有软解码)、MKV、MOV、M4V、AVI、MP4、3GP。

Vitamio 项目托管在Github 上面,,这里有很多公司的开源项目,其中: 

  1、VitamioBundle是Vitamio核心插件,(大家可以搜一下"Android Library"这个关键字,和jar差不多的用途),可以方便集成到项目中。 

  2、VitamioDemo是Vitamio的官方例子。

使用方式 

1.导入。通过github下载VitamioBundle。下载回来后大家可能发现没有.project工程文件,可以通过File-> Import -> Android -> Existing Android Code Into Workspace来导入工程,然后改一下工程名称即可。 

2、将VitamioBundle工程作为Android Library引入Demo工程使用即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息