RTMP直播推送SDK

面向 Windows、Linux、Android、iOS、HarmonyOS NEXT 的低延迟直播推流能力

大牛直播SDK(SmartMediaKit)RTMP直播推流SDK,是面向实时音视频应用场景打造的跨平台直播推流模块。SDK 自 2015 年推出以来持续迭代,支持 Windows、Linux、Android、iOS、HarmonyOS NEXT 等平台,覆盖摄像头采集、屏幕采集、麦克风采集、扬声器采集、外部编码前数据接入、外部编码后数据接入、实时水印、快照、录像扩展、断网重连、状态回调等能力。

RTMP直播推流SDK 可将终端侧采集或外部输入的音视频数据,通过 RTMP 协议推送至自建 RTMP 服务器、CDN 或业务直播平台。配合大牛直播 SmartPlayer 播放器,可在典型低延迟场景下实现 100~200ms 级端到端延迟,适用于安防监控、远程教育、工业可视化、移动执法、应急指挥、远程巡检、无纸化会议、电子教室、远程医疗等行业场景。


模块定位:

RTMP直播推流SDK 主要解决端侧音视频采集、编码、封装和推送问题。开发者可根据业务需求,快速实现摄像头推流、屏幕推流、纯音频推流、纯视频推流、音视频混合推流、外部音视频数据推流、推流端录像等能力。

在复杂业务场景中,RTMP直播推流SDK 还可与录像SDK、轻量级RTSP服务SDK、RTSP/RTMP播放器SDK、GB28181设备接入模块组合使用,构建“采集推流 + 本地录像 + 局域网分发 + 远程播放 + 国标平台接入”的完整实时音视频链路。

技术特点和优势:

全自研推流框架

SDK 基于大牛直播自研音视频框架设计,覆盖采集、编码、封装、推流、状态回调等核心链路,具备良好的性能、稳定性和可扩展性。

跨平台能力完整

覆盖 Windows、Linux、Android、iOS、HarmonyOS NEXT 等主流平台,适合多终端、多系统、多行业场景统一建设。

原生鸿蒙集成

HarmonyOS NEXT 平台采用 ArkTS + NAPI + Native C/C++ 分层接入方式,既保留鸿蒙原生应用开发体验,又将复杂的采集、编码、推流、录像和事件回调能力封装在 SDK 内部,降低业务侧集成成本。

接口化集成

所有能力均以 SDK 接口形式提供,支持参数设置、状态反馈、事件回调和异常通知,便于集成到不同类型的业务系统中。

参数配置灵活

支持帧率、码率、GOP、分辨率、编码方式、推流模式、音频参数等配置。开发者既可使用默认参数快速接入,也可根据业务场景进行精细化调优。

网络适应能力强

支持断网自动重连、推流状态回调和网络状态监听,可满足移动网络、弱网、专网、局域网等复杂部署环境下的工程化需求。

多类型数据源接入

支持摄像头、屏幕、麦克风、扬声器、外部YUV/RGB、外部H.264/H.265、外部AAC/PCM等多类型数据源,适合标准直播推流和行业定制推流场景。

易于组合扩展

推流、录像、轻量级RTSP服务、播放、GB28181接入等模块解耦设计,可按需组合,适合构建实时监控、远程巡检、会议同屏、屏幕直播、移动执法、国标平台接入辅助链路等系统。

功能支持:

Windows平台RTMP直播推送SDK

  • 音频编码:AAC/SPEEX;
  • 视频编码:H.264、H.265;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • [屏幕/摄像头]支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • [屏幕]支持屏幕裁剪,根据帧率和推送分辨率,自动推荐码流;
  • [摄像头]支持摄像头选择、分辨率设置、帧率设置;
  • [摄像头]摄像头支持水平反转、垂直反转、0° 90° 180° 270°旋转;
  • [屏幕]支持DXGI采集设置、启/停用Aero;
  • [音频]采集麦克风;
  • [音频]采集扬声器;
  • [预览]支持推送端实时预览;
  • 支持实时静音、取消静音;
  • [对接服务器]支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 屏幕和摄像头合成/多层合成;
  • 支持窗口采集(一般不建议使用);
  • 支持实时动态水印;
  • 支持实时快照;
  • 支持降噪处理、自动增益控制、VAD端点检测;
  • 支持扬声器和麦克风混音;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持RTMP扩展H.265(需设备支持H.265特定机型硬编码)和Enhanced RTMP;
  • 支持特定机型硬编码;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持Unity接口;
  • 支持H.264扩展SEI发送模块;
  • 支持Windows7及以上版本。

—————————————————————————————————————————————-

Linux平台x64_64架构|aarch64架构RTMP直播推送SDK

  • 音频编码:AAC/SPEEX;
  • 视频编码:H.264;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • 支持X11屏幕采集;
  • 支持部分V4L2摄像头设备采集;
  • [屏幕/V4L2摄像头]支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • [V4L2摄像头]支持V4L2摄像头设备选择(设备文件名范围:[/dev/video0, /dev/video63])、分辨率设置、帧率设置;
  • [V4L2摄像头]支持水平反转、垂直反转、0° 90° 180° 270°旋转;
  • [音频]支持基于alsa-lib接口的音频采集;
  • [音频]支持基于libpulse接口采集本机PulseAudio服务音频;
  • [预览]支持推送端实时预览;
  • [对接服务器]支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 屏幕和摄像头合成/多层合成;
  • 支持窗口采集(一般不建议使用);
  • 支持实时快照;
  • 支持降噪处理、自动增益控制、VAD端点检测;
  • 支持扬声器和麦克风混音;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持Unity接口;
  • 支持H.264扩展SEI发送模块;
  • 支持x64_64架构、aarch64架构(需要glibc-2.21及以上版本的Linux系统, 需要libX11.so.6, 需要GLib–2.0, 需安装 libstdc++.so.6.0.21、GLIBCXX_3.4.21、 CXXABI_1.3.9);

—————————————————————————————————————————————-

Android平台RTMP直播推送SDK

  • 音频编码:AAC/SPEEX;
  • 视频编码:H.264、H.265;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • [摄像头]支持采集过程中,前后摄像头实时切换;
  • 支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • 支持RTMP推送 live|record模式设置;
  • 支持前置摄像头镜像设置;
  • 支持软编码、特定机型硬编码;
  • 支持横屏、竖屏推送;
  • 支持Android屏幕采集推送;
  • 支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 支持实时动态水印;
  • 支持实时快照;
  • 支持降噪处理、自动增益控制;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持RTMP扩展H.265(需设备支持H.265特定机型硬编码)和Enhanced RTMP;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持Unity接口;
  • 支持H.264扩展SEI发送模块;
  • 支持Android 5.1及以上版本。

—————————————————————————————————————————————-

鸿蒙NEXT 平台RTMP直播推送SDK

  • 音频编码:AAC/SPEEX;
  • 视频编码:H.264、H.265;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • [摄像头]支持采集过程中,前后摄像头实时切换;
  • 支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • 支持RTMP推送 live|record模式设置;
  • 支持前置摄像头镜像设置;
  • 支持软编码、特定机型硬编码;
  • 支持横屏、竖屏推送;
  • 支持鸿蒙NEXT 屏幕采集推送;
  • 支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 支持实时快照;
  • 支持降噪处理、自动增益控制;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持RTMP扩展H.265(需设备支持H.265特定机型硬编码)和Enhanced RTMP;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持H.264扩展SEI发送模块;
  • 支持HarmonyOS 5.0及以上版本。

—————————————————————————————————————————————-

iOS平台RTMP直播推送SDK

  • 音频编码:AAC;
  • 视频编码:H.264、H.265;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • [摄像头]支持采集过程中,前后摄像头实时切换;
  • 支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • [RTMP协议]支持RTMP推送 live|record模式设置;
  • 支持前置摄像头镜像设置;
  • 支持软编码、特定机型硬编码;
  • 支持实时静音、取消静音;
  • 支持横屏、竖屏推送;
  • [对接服务器]支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 实时快照;
  • 外部编码前音视频数据对接;
  • 外部编码后音视频数据对接;
  • 特定设备H.265硬编码;
  • RTMP扩展H.265(需设备支持H.265特定机型硬编码);
  • 扩展录像模块;
  • H.264扩展SEI发送模块;
  • 支持iOS 9.0及以上版本。

典型应用场景:

对应Demo:

  •  Windows测试程序:SmartPublisherDemo.exe;
  •  Windows C++工程:WIN-PublisherSDK-CPP-Demo;
  •  Windows C#工程:WIN-PublisherSDK-CSharp-Demo;
  •  Linux工程:publisherdemo;
  •  Android工程:SmartPublisherV2;
  •  iOS工程:SmartiOSPublisherV2。

技术对接文档:

相关博客: