快直播传输层SDK提供基于原生WebRTC升级扩展的传输能力,用户仅需对已有播放器进行简单改造,即可接入快直播。在完全兼容标准直播的推流、云端媒体处理能力的基础上,实现高并发低延迟直播,帮助用户实现从现有的标准直播平滑地迁移到快直播上来。也可以帮助用户在现有RTC场景中快速实现低成本的大房间低延迟旁路直播。
快直播传输层SDK主要功能:
LEB_EXPORT_API LebConnectionHandle* OpenLebConnection(void* context, LebLogLevel loglevel);
LEB_EXPORT_API void RegisterLebCallback(LebConnectionHandle* handle, const LebCallback* callback);
LEB_EXPORT_API void StartLebConnection(LebConnectionHandle* handle, LebConfig config);
LEB_EXPORT_API void StopLebConnection(LebConnectionHandle* handle);
LEB_EXPORT_API void CloseLebConnection(LebConnectionHandle* handle);
typedef struct LebCallback {
// 日志回调
OnLogInfo onLogInfo;
// 视频信息回调
OnVideoInfo onVideoInfo;
// 音频信息回调
OnAudioInfo onAudioInfo;
// 视频数据回调
OnEncodedVideo onEncodedVideo;
// 音频数据回调
OnEncodedAudio onEncodedAudio;
// MetaData回调
OnMetaData onMetaData;
// 统计信息回调
OnStatsInfo onStatsInfo;
// 错误回调
OnError onError;
} LebCallback;
Notes:详细数据结构定义请见头文件leb_connection_api.h
SDK提供FFmpeg webrtc demuxer源码:webrtc_demuxer.c,可以实现FFmpeg快直播拉流和媒体处理,以及ffplay播放
快直播FFmpeg配置编译可以参考: linux_build_guide, mac_build_guide