【2015~2024】大牛直播SDK演化史

简介: 大牛直播SDK始创于2015年,旨在提供低延迟的RTMP推拉流解决方案,特别适用于毫秒级延迟的应用场景。初始版本针对Android平台实现RTMP直播推送,随后扩展至Windows、iOS和Linux平台,支持RTMP与RTSP播放器,延迟稳定在一秒以内。SDK涵盖实时推流、播放、GB28181设备接入、录像、多路流媒体转发、轻量级RTSP服务等多种功能,并支持H.265编码格式。该SDK适用于在线教育、智慧安防等多个行业场景,并已发展成为GitHub上获得超过10000星标的强大跨平台流媒体内核直播SDK。

大牛直播SDK的由来

大牛直播SDK始于2015年,最初我们只是想做个低延迟的RTMP推拉流解决方案,用于移动单兵等毫秒级延迟的场景下,我们先是实现了Android平台RTMP直播推送模块,当我们用市面上可以找到的RTMP播放器测试时延的时候,居然都要6-7秒延迟,这在直播场景下,几乎是不可接受的,所以我们有了做RTMP直播播放器的想法。

最早我们是实现了Windows平台RTMP直播播放,整体延迟,控制在几百毫秒,然后是Android和iOS平台,再后来,覆盖了Linux平台。

RTMP推流模块,也从Android平台慢慢覆盖了Windows、Android、iOS和Linux,从单纯的采集摄像头,到屏幕,再到Unity窗体。

模块覆盖了轻量级RTSP服务、RTSP播放、一对一互动、推拉流录像、GB28181设备接入模块等。

image.gif

至此,大牛直播SDK已经成为Github过10000⭐的超强全自研跨平台流媒体内核直播SDK。

我们致力于传统行业极致体验的音视频直播技术解决方案,产品涵盖跨平台的实时RTMP推流、RTMP/RTSP直播播放(支持RTSP/RTMP H.265)、GB28181设备接入、实时录像、多路流媒体转发(RTSP转RTMP,RTMP转RTMP,RTSP|RTMP转GB28181)、音视频导播、动态视频合成、音频混音、一对一互动直播、内置轻量级RTSP服务、RTSP网关服务等,比快更快,业界真正靠谱的超低延迟直播SDK。

场景覆盖在线教育、智慧教室|无纸化推屏|会议、运营商视频云平台、执法记录、电力巡检、智慧水利、智慧煤矿、管廊隧道、虚拟仿真实训教学、VR教育、云展会、金融双录、远程医疗、智能可视门禁对讲、智慧安防、智能家居、物联网、智能车载、传统硬件领域、媒体移动直播、应急指挥调度(针对保险、城管、交警、消防、公安等职能管理部门的单兵应急执法系统)、远程专家诊断、可视化巡检、(如电信/电力线路/铁路沿线/水利设施/油田/消防设施巡检)、移动视频安防监控,企业内训、监控对接等。

我们做了什么

支持平台架构

支持平台 支持架构
Windows平台 x86 debug/release, x64 debug/release
Linux(含麒麟操作系统) x86_64, aarch64
Android平台 armeabi-v7a, arm64-v8a, x86, x86_64
iOS平台 arm64

最新Release Note:

大牛直播SDK Release note

Windows端

  • RTMP直播推流SDK RTMP推送SDK(支持同时推多路url,支持RTMP扩展H.265推送));
  • RTMP直播播放器SDK 业内首屈一指的RTMP超低延迟直播播放器SDK(支持RTMP H.265扩展播放);
  • RTSP直播播放器SDK 支持RTSP H.265播放及扩展录像、业内为数不多真正好用的RTSP播放器SDK,支持IE浏览器OCX控件接口调用;
  • Unity3D RTMP/RTSP直播播放器SDK 业内为数不多的Windows支持Unity3D的超低延迟RTMP/RTSP直播播放器SDK,支持快照、录像、实时静音、view旋转、快速切换URL等特性;
  • RTMP/RTSP多路流媒体转RTMP推送SDK 支持同时多路拉取rtmp/rtsp流/本地flv文件,并分别转发到服务器,业内为数不多支持RTSP/RTMP H.265拉流转发的SDK;
  • 轻量级RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持,windows端特定机型支持RTSP H.265视频输出,支持单播组播模式;
  • 内网RTSP网关SDK 内网RTSP网关SDK,系内置轻量级RTSP服务SDK扩展,完成外部RTSP/RTMP数据拉取并注入到轻量级RTSP服务SDK工作,多个内网客户端直接访问内网轻量级RTSP服务获取公网数据,无需部署单独的服务器,支持RTSP/RTMP H.265数据接入,支持单播组播模式;
  • 导播SDK 数据源:1. rtmp/rtsp音视频流;2. 本地屏幕/摄像头/音频数据;3.本地flv文件;多路流合成一路实时导播推送;
  • 录像SDK 支持拉取rtmp/rtsp流实时录像模块/实时快照功能,支持纯音频、纯视频、音视频录制模式,支持音频(PCMU/PCMA,Speex等)转AAC后再录像,业内为数不多的支持RTSP/RTMP H.265录制到MP4文件的录像SDK;
  • RTMP/RTSP一对一互动SDK 基于标准协议(RTMP或RTSP)的跨平台(Windows/Andriod/iOS)一对一互动SDK,支持回音消除,完美支持一对一互动场景;
  • SEI扩展数据发送/接收SDK 支持推送端通过H.264 SEI信息扩展,实时传输文本/二进制数据信息(如实时字幕/时间戳/题目分发/公告广播等),播放端做相应解析和回显;

Linux|麒麟操作系统

  • RTMP直播推流SDKRTMP推送SDK(支持推送屏幕、摄像头数据,支持RTMP扩展H.265推送);
  • RTMP直播播放器SDK业内首屈一指的RTMP超低延迟直播播放器SDK(支持RTMP H.265扩展播放);
  • RTSP直播播放器SDK支持RTSP H.265播放及扩展录像、业内为数不多真正好用的RTSP播放器SDK;
  • [RTMP/RTSP多路流媒体转RTMP推送SDK]支持同时多路拉取rtmp/rtsp流,并分别转发到服务器,业内为数不多支持RTSP/RTMP H.265拉流转发的SDK;
  • 轻量级RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持;
  • [录像SDK]支持拉取rtmp/rtsp流实时录像模块/实时快照功能,支持纯音频、纯视频、音视频录制模式,支持音频(PCMU/PCMA,Speex等)转AAC后再录像,业内为数不多的支持RTSP/RTMP H.265录制到MP4文件的录像SDK。

Android端

  • RTMP直播推流端SDK Android屏幕、摄像头RTMP推流SDK,支持RTMP扩展H.265推送(H.265硬编码);
  • GB28181接入SDK Android屏幕、摄像头编码注册接入到GB28181服务平台;
  • RTMP直播播放器SDK 业内首屈一指的RTMP超低延迟直播播放器SDK(支持RTMP H.265扩展播放);
  • RTSP直播播放器SDK 支持RTSP H.265播放及扩展录像、业内为数不多真正好用的RTSP播放器SDK;
  • Android平台外部编码数据实时预览播放SDK 外部编码后音视频数据(视频:H.264/H.265,音频:AAC/PCMA/PCMU)实时预览播放SDK;
  • Unity3D RTMP/RTSP直播播放器SDK 业内为数不多的Android支持Unity3D的超低延迟RTMP/RTSP直播播放器SDK,支持快照、录像、实时静音、view旋转、快速切换URL等特性;
  • 录像SDK 支持拉取rtmp/rtsp流实时录像模块/实时快照功能,支持纯音频、纯视频、音视频录制模式,支持音频(PCMU/PCMA,Speex等)转AAC后再录像,业内为数不多的支持RTSP/RTMP H.265录制到MP4文件的录像SDK;
  • RTMP/RTSP多路流媒体转RTMP推送SDK 支持实时拉取的rtmp/rtsp流转发到指定rtmp url;
  • 轻量级RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持(支持H.265);
  • RTMP/RTSP一对一互动SDK 基于标准协议(RTMP或RTSP)的跨平台(Windows/Andriod/iOS)一对一互动SDK,支持回音消除,完美支持一对一互动场景;
  • SEI扩展数据发送/接收SDK 支持推送端通过H.264 SEI信息扩展,实时传输文本/二进制数据信息(如实时字幕/时间戳/题目分发/公告广播等),播放端做相应解析和回显。

iOS端

  • RTMP直播推流端SDK iOS屏幕(基于ReplayKit)、摄像头RTMP推流SDK;
  • RTMP直播播放器SDK 业内首屈一指的RTMP超低延迟直播播放器SDK(支持RTMP H.265扩展播放);
  • RTSP直播播放器SDK 支持RTSP H.265播放及扩展录像、业内为数不多真正好用的RTSP播放器SDK;
  • Unity3D RTMP/RTSP直播播放器SDK 业内为数不多的iOS支持Unity3D的超低延迟RTMP/RTSP直播播放器SDK,支持快照、录像、实时静音、view旋转、快速切换URL等特性;
  • 录像SDK 支持拉取rtmp/rtsp流实时录像模块/实时快照功能,支持纯音频、纯视频、音视频录制模式,支持音频(PCMU/PCMA,Speex等)转AAC后再录像,业内为数不多的支持RTSP/RTMP H.265录制到MP4文件的录像SDK;
  • RTMP/RTSP多路流媒体转RTMP推送SDK 支持实时拉取的rtmp/rtsp流转发到指定rtmp url;
  • 轻量级RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持;
  • 内网RTSP网关SDK 内网RTSP网关SDK,系内置轻量级RTSP服务SDK扩展,完成外部RTSP/RTMP数据拉取并注入到轻量级RTSP服务SDK工作,多个内网客户端直接访问内网轻量级RTSP服务获取公网数据,无需部署单独的服务器,支持RTSP/RTMP H.265数据接入;
  • RTMP/RTSP一对一互动SDK 基于标准协议(RTMP或RTSP)的跨平台(Windows/Andriod/iOS)一对一互动SDK,支持回音消除,完美支持一对一互动场景;
  • SEI扩展数据发送/接收SDK 支持推送端通过H.264 SEI信息扩展,实时传输文本/二进制数据信息(如实时字幕/时间戳/题目分发/公告广播等),播放端做相应解析和回显。

相关模块:

1. Windows平台测试EXE:

  • [SmartPublisherDemo.exe] RTMP|RTSP推送、轻量级RTSP服务、扩展SEI发送、采集录像演示程序;
  • [SmartPlayer.exe] RTMP|RTSP播放SDK、扩展SEI接收、拉流录像演示程序;
  • [SmartStreamRelayDemo.exe] 多路RTSP|RTMP转RTMP推送演示程序;
  • [SmartMixStreamDemo.exe] RTMP|RTSP拉流然后和本地摄像头或屏幕合流演示程序;
  • [SmartEchoCancellation.exe] 基于标准RTMP服务的一对一互动演示程序(demo源码以C#为例);
  • [Windows平台RTMP|RTSP 4路播放演示程序] Windows 4路RTSP/RTMP播放Demo;
  • [Windows平台IE浏览器OCX控件RTMP|RTSP播放测试程序] Windows平台RTMP|RTSP播放SDK OCX控件。

2.Windows平台集成对接DEMO:

  • [Windows平台C++ SDK demo工程代码] Windows平台RTMP|RTSP推送SDK、内置RTSP服务SDK、录像SDK(C++) Demo工程;
  • [Windows平台C++ SDK demo工程代码] Windows平台RTMP|RTSP播放SDK(C++) Demo工程;
  • [Windows平台C++ SDK demo工程代码] Windows平台多路RTSP|RTMP转RTMP推送模块SDK(C++) Demo工程;
  • [Windows平台C++ SDK demo工程代码] Windows平台混流SDK(C++) Demo工程;
  • [Windows平台C# SDK demo工程代码] Windows平台RTMP|RTSP推送SDK、内置RTSP服务SDK、录像SDK(C#) Demo工程;
  • [Windows平台C# SDK demo工程代码] Windows平台RTMP|RTSP播放SDK(C#) Demo工程;
  • [Windows平台C# SDK demo工程代码] Windows平台多路RTSP|RTMP转RTMP推送模块SDK(C#) Demo工程;
  • [Windows平台一对一互动SDK demo工程代码(以C#为例)] 基于标准RTMP服务的一对一互动demo,可扩展RTSP一对一互动;

3.Android平台集成对接DEMO:

对应Android Studio DEMO工程说明:

  • SmartPlayerV2: RTMP|RTSP直播播放SDK demo,涵盖实时录像、快照、扩展SEI数据接收等功能;
  • SmartPublisherV2: RTMP直播推送SDK、RTSP直播推送SDK、GB28181接入SDK、轻量级RTSP服务SDK、扩展SEI发送SDK、实时录像SDK多合一demo;
  • SmartEchoCancellationV2: 基于RTMP的一对一互动demo(可扩展RTSP一对一互动);
  • SmartServiceCameraPublisherV2: 后台摄像头RTMP直播推送SDK;
  • SmartServicePublisherV2: 智慧教室|无纸化会议等屏幕采集(推屏) 、RTMP直播推送demo;
  • SmartRelayDemoV2: RTMP|RTSP直播播放SDK、RTMP|RTSP转RTMP推送SDK、RTMP|RTSP实时录像、轻量级RTSP服务四合一demo。

4.iOS平台集成对接DEMO:

  • SmartiOSPlayerV2: RTMP|RTSP直播播放SDK demo,涵盖实时录像、快照、扩展SEI数据接收等功能;
  • SmartiOSPublisherV2: RTMP直播推送SDK、RTSP直播推送SDK、轻量级RTSP服务SDK、扩展SEI发送SDK、实时录像SDK多合一demo;
  • SmartiOSEchoCancellation: 基于RTMP的一对一互动demo(可扩展RTSP一对一互动);
  • SmartiOSScreenPublisherV2: 基于ReplayKit采集的智慧教室|无纸化会议等屏幕采集(推屏) 、RTMP直播推送demo;
  • SmartiOSRelayDemoV2: RTMP|RTSP直播播放SDK、RTMP|RTSP转RTMP推送SDK、RTMP|RTSP实时录像、轻量级RTSP服务四合一demo。

大牛直播SDK集成和调用说明

平台扩展

除了Windows/Linux/Android/iOS Native SDK,大牛直播SDK发布了Unity环境下的RTMP推流|轻量级RTSP服务(Windows平台+Linux平台+Android平台)和RTMP|RTSP拉流(Windows、Linux、Android和iOS平台全覆盖)低延迟的解决方案。

目前,大牛直播SDK的Unity3D环境下,已覆盖以下SDK:

  • Windows平台RTMP直播推送SDK(采集Unity窗体、摄像头或屏幕);
  • Windows平台轻量级RTSP服务SDK(采集Unity窗体、摄像头或屏幕);
  • Windows平台RTMP|RTSP直播播放SDK;
  • Linux平台RTMP直播推送SDK(采集Unity窗体、Unity声音);
  • Linux平台RTMP|RTSP直播播放SDK;
  • Android平台RTMP直播推送SDK(采集Unity窗体、摄像头、麦克风或Unity声音);
  • Android平台轻量级RTSP服务SDK(采集Unity窗体、摄像头、麦克风或Unity声音);
  • Android平台RTMP|RTSP直播播放SDK;
  • iOS平台RTMP|RTSP直播播放SDK。

总结

厚积薄发,登上山顶,不是为了饱览风光,是为了寻找更高的山峰,从敬畏到颠覆,以匠人之心,专注、极致、智慧,志在成为业内为数不多真正靠谱的流媒体技术方案提供商。

相关文章
|
Web App开发 应用服务中间件 Go
尝鲜:如何搭建一个简单的webrtc服务器
前几天我一朋友问我有关webrtc的事,简单了解了下相关知识,搭建了一个webrtc的服务,以及经历的各种踩坑事件,感觉踩坑主要是Python、Node、OpenSSL等版本问题和证书问题导致。本来以为很简单的搭建,但在搭建的过程中遇到各种阻碍,写一篇文章梳理一下。
13247 0
|
缓存 API 开发工具
几款优秀的点播、RTSP/RTMP直播播放器介绍
介绍:Ijkplayer 是Bilibili发布的基于 FFplay 的轻量级 Android/iOS 视频播放器。实现了跨平台功能,API 易于集成;编译配置可裁剪,方便控制安装包大小;支持硬件加速解码,更加省电;提供 Android 平台下应用弹幕集成的解决方案。
2749 0
|
9月前
|
人工智能 监控 算法
Python下的毫秒级延迟RTSP|RTMP播放器技术探究和AI视觉算法对接
本文深入解析了基于Python实现的RTSP/RTMP播放器,探讨其代码结构、实现原理及优化策略。播放器通过大牛直播SDK提供的接口,支持低延迟播放,适用于实时监控、视频会议和智能分析等场景。文章详细介绍了播放控制、硬件解码、录像与截图功能,并分析了回调机制和UI设计。此外,还讨论了性能优化方法(如硬件加速、异步处理)和功能扩展(如音量调节、多格式支持)。针对AI视觉算法对接,文章提供了YUV/RGB数据处理示例,便于开发者在Python环境下进行算法集成。最终,播放器凭借低延迟、高兼容性和灵活扩展性,为实时交互场景提供了高效解决方案。
678 5
|
编解码 监控 API
惊艳登场!揭秘如何在Android平台上轻松玩转GB28181标准,实现多视频通道接入的超实用指南!
【8月更文挑战第14天】GB28181是公共安全视频监控联网的技术标准。本文介绍如何在Android平台上实现该标准下的多视频通道接入。首先准备开发环境,接着引入GB28181 SDK依赖并初始化SDK。实现设备注册与登录后,通过指定不同通道号请求多路视频流。最后,处理接收到的数据并显示给用户。此过程涉及视频解码,需确保应用稳定及良好的用户体验。
581 0
|
编解码 网络协议 前端开发
如何实现Android平台GB28181设备接入模块按需打开摄像头并回传数据
后台采集摄像头,如果想再进一步扩展,可以把android平台gb28181的camera2 demo,都移植过来,实现功能更强大的国标设备侧,这里主要是展示,收到国标平台侧的回传请求后,才打开摄像头,才开始编码打包,最大限度的减少资源的占用
280 3
|
存储 关系型数据库 分布式数据库
GraphRAG:基于PolarDB+通义千问+LangChain的知识图谱+大模型最佳实践
本文介绍了如何使用PolarDB、通义千问和LangChain搭建GraphRAG系统,结合知识图谱和向量检索提升问答质量。通过实例展示了单独使用向量检索和图检索的局限性,并通过图+向量联合搜索增强了问答准确性。PolarDB支持AGE图引擎和pgvector插件,实现图数据和向量数据的统一存储与检索,提升了RAG系统的性能和效果。
|
编解码 开发工具 Android开发
Android平台RTSP|RTMP播放器如何实现TextureView渲染
本文介绍了在Android平台上使用TextureView进行RTSP和RTMP视频流渲染的技术背景和实现方法。TextureView相较于SurfaceView具备更高性能、更强功能性和更灵活的绘制方式等优势,但也有必须在硬件加速环境下运行和较高内存占用等局限。文中详细展示了如何在SmartPlayerV2工程中创建和配置TextureView,并通过代码示例解释了如何根据视频分辨率信息调整显示比例,以及处理TextureView的各种生命周期回调。此外,还列举了该播放器SDK支持的多项高级功能,如多实例播放、多种编码格式支持、硬解码能力等,旨在帮助开发者更好地理解和实现高性能的直播播放器。
471 3
|
编解码 网络协议 开发工具
Android平台RTSP|RTMP直播播放器技术接入说明
大牛直播SDK自2015年发布RTSP、RTMP直播播放模块,迭代从未停止,SmartPlayer功能强大、性能强劲、高稳定、超低延迟、超低资源占用。无需赘述,全自研内核,行业内一致认可的跨平台RTSP、RTMP直播播放器。本文以Android平台为例,介绍下如何集成RTSP、RTMP播放模块。
675 0
|
编解码 vr&ar 图形学
惊世骇俗!Unity下如何实现低至毫秒级的全景RTMP|RTSP流渲染,颠覆你的视觉体验!
【8月更文挑战第14天】随着虚拟现实技术的进步,全景视频作为一种新兴媒体形式,在Unity中实现低延迟的RTMP/RTSP流渲染变得至关重要。这不仅能够改善用户体验,还能广泛应用于远程教育、虚拟旅游等实时交互场景。本文介绍如何在Unity中实现全景视频流的低延迟渲染,并提供代码示例。首先确保Unity开发环境及所需插件已就绪,然后利用`unity-rtsp-rtmp-client`插件初始化客户端并设置回调。通过FFmpeg等工具解码视频数据并更新至全景纹理,同时采用硬件加速、调整缓冲区大小等策略进一步降低延迟。此方案需考虑网络状况与异常处理,确保应用程序的稳定性和可靠性。
640 1
FFmpeg学习笔记(二):多线程rtsp推流和ffplay拉流操作,并储存为多路avi格式的视频
这篇博客主要介绍了如何使用FFmpeg进行多线程RTSP推流和ffplay拉流操作,以及如何将视频流保存为多路AVI格式的视频文件。
1377 0

热门文章

最新文章