低延时、地卡顿、高音画质是直播技术方向追求的方向,webrtc属于业内良心开源项目,绝大多数连麦直播技术基于此项目,连麦技术架构有Mesh、MCU、SFU三种技术架构。三种技术架构优缺点各异,大家可以自行查阅。但是基于目前的直播状况,现在最合适的,也是使用比较多的是SFU架构。但是SFU架构除了客户端的webrtc需要完成,更重要的服务器也需要搭建。
如果你需要多人连麦直播
Janus-gateway-iOS是一个基于janus-gateway 服务器的sfu架构的连麦直播iOS客户端框架,封装了webrtc、视频采集、janus-gateway通信部分,能实现iOS、Android、网页三端多人连麦(最大人数可配置,但是也受资源限制),项目完全开源。
如果你需要借鉴或者学习使用此框架,请注意一下几点:
如果你不是为了连麦,请考虑是否真的需要使用webrtc技术。
请自行完成Janus-gateway服务端搭建(https://github.com/meetecho/janus-gateway)。
此框架只支持websocket通信,所以服务器部分务必开启此模块。
开发时间短,写的比较糙,但是也是janus的第一个iOS端开源项目,所以敬请谅解。
并且现在工作繁忙,不做维护(但是目前是可以正常连麦运行,如有编译问题直接找我)。
项目地址
https://github.com/MinorUncle/Janus-gateway-iOS
如果你只是需要低延时、低卡顿、低码率适应强的直播
GJLiveEngine是一个基于TCP的的低延时、低卡顿、兼容超低码率的直播框架。直播性能、卡顿率、直播质量、秒开效果,超低码率(150kbps超低带宽测试)等各项综合指标远优于开源框架和市场各大平台的直播框架,正常带宽下能实现0.8s左右的直播,延迟高于webrtc,但是远低于webrtc+rtmp直播。并且在音画质量方面优于webrtc,特别是在弱网情况下更加明显,市场上首个超低延迟的TCP直播,兼容各类基于TCP的直播协议。