github

AnyRTC / AnyRTC-RTMP

  • среда, 21 сентября 2016 г. в 03:14:05
https://github.com/AnyRTC/AnyRTC-RTMP

C++
RTMP 推流器,RTMP播放器(秒开),跨平台(Win,IOS,Android)开源代码



AnyRTC-RTMP

AnyRTC-RTMP
本次开源的客户端基于RTMP协议的推流拉流客户端,由我司CTO亲自操刀设计,采用跨平台架构一套代码支持Android、iOS、Windows等平台。
直播涉及的流程:『采集->编码->传输->解码->播放』本项目统统包含,这不是软文,这是实实在在的商业级实战代码;无论是你新手还是老司机,我们都热烈欢迎您前来筑码。

项目特点

1,商业级开源代码,高效稳定
2,超小内存占有率,移动直播针对性极致优化,代码冗余率极低
3,打破平台壁垒,真正的跨平台,一套核心代码支持Android、iOS、Windows等
4,超过200+Android手机、iOS全平台适配,硬件编解码可保证99%的可用性
5,接口极简,推流:2个 拉流:2个
6,底层库C++核心库代码风格采用:Google code style
7,极简内核,无需再去深扒复杂的FFMpeg代码
8,实用主义,那些什么坑什么优化等概念请搜索相关文章

为什么开源?

本公司此次开源移动直播解决方案的根本目的:回馈开源社区,特别是SRS和WebRTC项目,大家也可以看到本次开源项目的框架使用了WebRTC,RTMP协议部分使用的是srs_librtmp;这两个开源项目可以说在流媒体领域给予了大家太多,所以适当的回馈是理所应当。

编译环境

Android Studio、NDK
XCode
VS2015

支持的系统平台

Android 4.0及以上
iOS 8.0及以上
Windows 7及以上

支持的CPU架构

Android armv7 arm64
iOS armv7 armv7s arm64
Windows win32、x64

支持的流媒体服务端

fms, wowza, evostream, red5, crtmpserver, nginx-rtmp-module, srs及其他标准RTMP协议服务端

支持的流媒体云服务器

网宿UCloud及其他标准RTMP协议云服务器

直播发布特性

  • H.264/AAC 组合的RTMP协议音视频流发布
  • 全屏视频采集,原画质缩放
  • 集优化H.264软/硬件编码器,性能强劲,兼容性极强
  • 视频分辨率以及码率自选
  • 支持发布中途切换前后摄像头
  • 支持发布中网络自适应,根据带宽大小来自动适应分辨率以及码率,让视频更顺畅
  • 支持基于GPU加速的实时美颜滤镜

直播播放特性

  • 只为RTMP/FLV协议优化的码流解析器,极短的分析时间,秒开RTMP视频流
  • 支持的视频解码器:H.264
  • 支持的音频解码器:AAC
  • OpenGL ES视频渲染
  • 支持主播停止推流后,播放端立即获取到结束状态(RTMP协议下)

第三方库版本

libfaac 1.28
libfaad2 2.7
ffmpeg 3.0
libyuv newest
openh264 1.6.0

商用授权

本次开源在未授权情况下不可应用于任何的闭源商业项目,具体请参照GNU License中的声明。
咨询QQ:2628840833
联系电话:021-65650071

技术交流

直播技术QQ群:554714720
连麦技术QQ群:580477436

捐赠

本项目不接受任何形式的捐赠,您的支持就是最大的动力。

License

AnyRTC-RTMP is available under the GNU license. See the LICENSE file for more info.