RTSP直播推流SDK

大牛直播Windows RTSP推送端SDK特点:

  1. 全自研框架,易于扩展,自适应算法让延迟更低、采集编码传输效率更高;
  2. 所有功能以SDK接口形式提供,所有状态,均有event回调,完美支持断网自动重连;
  3. SDK模块化,可和大牛直播播放器SDK组合实现流媒体数据转发、内置轻量级RTSP服务、连麦、一对一互动等场景;
  4. Windows推送端SDK以层级模式提供,开发者可以自行组合数据源(如多摄像头/屏幕/水印叠加);
  5. 支持外部YUV/RGB/H.264/AAC/SPEEX/PCMA/PCMU数据源接入;
  6. 所有参数均可通过SDK接口单独设置,亦可通过默认参数,傻瓜式设置;
  7. RTMP推送、RTSP推送、录像、内置轻量级RTSP服务模块完全分离,可单独使用亦可组合使用;
  8. 业内甚至很难找到效果接近的SDK

功能支持:

  •  [视频采集处理]Windows平台涵盖“Windows视频采集处理SDK”功能;
  •  [音频采集处理]Windows平台涵盖“Windows音频采集处理SDK”功能;
  •  [本地预览]Windows平台支持摄像头/屏幕/合成数据实时预览功能,Android/iOS平台支持本地前后置摄像头预览;
  •  [摄像头反转/旋转]Windows平台支持摄像头水平反转、垂直反转、0°/90°/180°/270°旋转;
  •  [RTSP推流]超低延时的RTSP协议直播推流SDK;
  •  [RTSP鉴权]支持RTSP鉴权推送;
  •  [TCP/UDP模式]支持rtp over udp和rtp over tcp两种传输方式;
  •  [401事件处理]RTSP推送支持401事件上报;
  •  [视频格式]支持H.264/H.265(64位库)编码;
  •  [音频格式]支持AAC编码;
  •  [软硬编码参数配置]支持gop间隔、帧率、bit-rate设置;
  •  [软编码参数配置]支持软编码profile、软编码速度、可变码率设置;
  •  [多实例推送]支持多实例推送(如同时推送屏幕/摄像头和外部数据);
  •  [多分辨率支持]支持摄像头或屏幕多种分辨率设置;
  •  [Windows推屏]支持屏幕裁剪、窗口采集、屏幕/摄像头数据合成等多种模式推送;
  •  [事件回调]支持各种状态实时回调;
  •  [水印]Windows平台支持文字水印、png水印、实时遮挡,Android平台支持文字水印、png水印;
  •  [复杂网络处理]支持断网重连等各种网络环境自动适配;
  •  [动态码率]支持根据网络情况自动调整推流码率;
  •  [实时静音]支持推送过程中,实时静音/取消静音;
  •  [实时快照]支持推流过程中,实时快照;
  •  [纯音频推流]支持仅采集音频流并发起推流功能;
  •  [纯视频推流]支持特殊场景下的纯视频推流功能;
  •  [降噪]平台支持降噪处理、自动增益、VAD检测;
  •  [回音消除]android支持实时传递远端PCM数据,方便回音消除处理;
  •  [外部编码前视频数据对接]支持YUV数据对接;
  •  [外部编码前音频数据对接]支持PCM对接;
  •  [外部编码后视频数据对接]支持外部H.264数据对接;
  •  [外部编码后音频数据对接]外部AAC/PCMA/PCMU/SPEEX数据对接;
  •  [扩展录像功能]完美支持和录像SDK组合使用,录像相关功能,可参见”8. Windows/Android/iOS录像SDK“;
  •  [服务器兼容]支持支持自建服务器(如Darin Stream Server)。

对应Demo:

  •  Windows测试程序:SmartPublisherDemo.exe;
  •  Windows C++工程:WIN-PublisherSDK-CPP-Demo。

大牛直播RTMP播放器SDK

大牛直播RTMP播放器SDK特点:

在没测试过大牛直播SDK的RTMP播放器之前,你甚至不相信行业内,RTMP播放器延迟可以稳定的做到1秒以内。

无需赘述,全自研内核,行业内一致认可的跨平台RTMP直播播放器SDK,功能齐全、高稳定、超低延迟、近200家公司明智之选。

功能支持:

如不单独说明,系Windows、Android、iOS全平台支持。

  •  [支持播放协议]高稳定、超低延迟(一秒内,行业内几无效果接近的播放端)、业内首屈一指的RTMP直播播放器SDK;
  •  [多实例播放]支持多实例播放;
  •  [事件回调]支持网络状态、buffer状态等回调;
  •  [视频格式]支持RTMP扩展H.265,H.264;
  •  [音频格式]支持AAC/PCMA/PCMU/Speex;
  •  [H.264/H.265软解码]支持H.264/H.265软解;
  •  [H.264硬解码]Android/iOS支持H.264硬解;
  •  [H.265硬解]Android/iOS支持H.265硬解;
  •  [H.264/H.265硬解码]Android支持设置Surface模式硬解和普通模式硬解码;
  •  [缓冲时间设置]支持buffer time设置;
  •  [首屏秒开]支持首屏秒开模式;
  •  [低延迟模式]支持类似于线上娃娃机等直播方案的超低延迟模式设置(公网200~400ms);
  •  [复杂网络处理]支持断网重连等各种网络环境自动适配;
  •  [快速切换URL]支持播放过程中,快速切换其他URL,内容切换更快;
  •  [音视频多种render机制]Android平台,视频:surfaceview/OpenGL ES,音频:AudioTrack/OpenSL ES;
  •  [实时静音]支持播放过程中,实时静音/取消静音;
  •  [实时快照]支持播放过程中截取当前播放画面;
  •  [渲染角度]支持0°,90°,180°和270°四个视频画面渲染角度设置;
  •  [渲染镜像]支持水平反转、垂直反转模式设置;
  •  [实时下载速度更新]支持当前下载速度实时回调(支持设置回调时间间隔);
  •  [解码前视频数据回调]支持H.264/H.265数据回调;
  •  [解码后视频数据回调]支持解码后YUV/RGB数据回调;
  •  [解码前音频数据回调]支持AAC/PCMA/PCMU/SPEEX数据回调;
  •  [音视频自适应]支持播放过程中,音视频信息改变后自适应;
  •  [扩展录像功能]完美支持和录像SDK组合使用(支持RTMP扩展H.265流录制,支持PCMA/PCMU/Speex转AAC后录制,支持设置只录制音频或视频),录像相关功能,可参见”Windows/Android/iOS录像SDK“。

对应Demo:

  •  Windows测试程序:SmartPlayer.exe;
  •  Windows C++工程:WIN-PlayerSDK-CPP-Demo;
  •  Windows C#工程:WIN-PlayerSDK-CSharp-Demo;
  •  Android工程:SmartPlayerV2;
  •  iOS工程:SmartiOSPlayerV2。

大牛直播RTSP播放器SDK

大牛直播RTSP播放器SDK特点:

无需赘述,全自研内核,行业内一致认可的跨平台RTSP直播播放器SDK,功能齐全、高稳定、超低延迟,适用于安防、教育、单兵指挥等行业。

功能支持:

如不单独说明,系Windows、Android、iOS全平台支持。

  •  [支持播放协议]高稳定、超低延迟、业内首屈一指的RTSP直播播放器SDK;
  •  [多实例播放]支持多实例播放;
  •  [事件回调]支持网络状态、buffer状态等回调;
  •  [视频格式]支持H.265、H.264;
  •  [音频格式]支持AAC/PCMA/PCMU;
  •  [H.264/H.265软解码]支持H.264/H.265软解;
  •  [H.264硬解码]Android/iOS支持H.264硬解;
  •  [H.265硬解]Android/iOS支持H.265硬解;
  •  [H.264/H.265硬解码]Android支持设置Surface模式硬解和普通模式硬解码;
  •  [RTSP模式设置]支持RTSP TCP/UDP模式设置;
  •  [RTSP TCP/UDP自动切换]支持RTSP TCP、UDP模式自动切换;
  •  [RTSP超时设置]支持RTSP超时时间设置,单位:秒;
  •  [RTSP 401认证处理]支持上报RTSP 401事件,如URL携带鉴权信息,会自动处理;
  •  [缓冲时间设置]支持buffer time设置;
  •  [首屏秒开]支持首屏秒开模式;
  •  [复杂网络处理]支持断网重连等各种网络环境自动适配;
  •  [快速切换URL]支持播放过程中,快速切换其他URL,内容切换更快;
  •  [音视频多种render机制]Android平台,视频:surfaceview/OpenGL ES,音频:AudioTrack/OpenSL ES;
  •  [实时静音]支持播放过程中,实时静音/取消静音;
  •  [实时快照]支持播放过程中截取当前播放画面;
  •  [渲染角度]支持0°,90°,180°和270°四个视频画面渲染角度设置;
  •  [渲染镜像]支持水平反转、垂直反转模式设置;
  •  [实时下载速度更新]支持当前下载速度实时回调(支持设置回调时间间隔);
  •  [解码前视频数据回调]支持H.264/H.265数据回调;
  •  [解码后视频数据回调]支持解码后YUV/RGB数据回调;
  •  [解码前音频数据回调]支持AAC/PCMA/PCMU/SPEEX数据回调;
  •  [音视频自适应]支持播放过程中,音视频信息改变后自适应;
  •  [扩展录像功能]完美支持和录像SDK组合使用(支持RTSP H.265流录制,支持PCMA/PCMU转AAC后录制,支持设置只录制音频或视频),录像相关功能,可参见”Windows/Android/iOS录像SDK“。

对应Demo:

  •  Windows测试程序:SmartPlayer.exe;
  •  Windows C++工程:WIN-PlayerSDK-CPP-Demo;
  •  Windows C#工程:WIN-PlayerSDK-CSharp-Demo;
  •  Android工程:SmartPlayerV2;
  •  iOS工程:SmartiOSPlayerV2。

一对一互动SDK

大牛直播一对一互动SDK涵盖Windows和Android平台。

目前市面上大多一对一互动都是基于WebRTC,缺点如下:

  1. 服务器部署非常复杂,不利于私有部署,在一些私密性高的场景下,无法使用,如公安、市政等体系;
  2. 传输基于P2P,很难保证传输质量;
  3. 难以应对复杂的互联网环境,如跨区跨运营商、低带宽、高丢包等场景;
  4. 整个框架体系不够灵活,代码复杂度高。

大牛直播一对一互动SDK有以下优点:

  1. 基于官方现有RTMP、RTSP推送、或内置RTSP服务、播放SDK,产品稳定度高,行业内首屈一指的超低延迟特性;
  2. 加入噪音抑制、回音消除、自动增益控制等特性,确保通话效果,如设备软处理不好,可加入麦克风阵列;
  3. 采用通用的RTMP和RTSP服务器,如nginx、SRS或 Darwin Stream Server(原生版本),更有利于私有部署;
  4. 支持H.264的扩展SEI消息发送机制;
  5. 支持H.265编码(Windows 64位库,Android硬编码)和H.264可变码率设定,换句话说,之前大牛直播SDK推送端支持的功能,都可以同步支持;
  6. 支持H.265解码,直播播放器支持的功能,一队一互动模块都可以有选择的支持;
  7. Windows平台支持双流合成大小屏录制;
  8. Windows支持摄像头、屏幕合成、水印等各种组合模式,扩展度高;
  9. 适用于应急指挥、教育培训等领域。

Windows平台,对外提供C++/C#两套接口(测试或集成可参考WIN-PublisherSDK-CPP-Demo和WIN-PlayerSDK-CPP-Demo,或相应C# demo),Android对外提供SmartEchoCancellationV2供开发者集成测试。

本地FLV播放SDK

大牛直播本地FLV播放SDK,目前覆盖Windows平台。

功能支持:

  1. 视频:H.264;
  2. 音频:AAC;
  3. 支持本地flv文件播放(支持获取flv文件的duration(时长);
  4. 支持显示当前播放位置;
  5. 支持开始播放或播放过程中seek(跳转播放位置),也许是行业内seek最快的flv点播播放器);
  6. 可通过回调本地FLV音视频数据帧,配合RTMP推送模块,实现本地FLV文件的实时RTMP流转发。

大牛直播SDK Demo展示

大牛直播SDK Demo页面展示:

1. Windows RTMP直播推送SDK:

2. Windows转发SDK:

3.Windows导播SDK:

4. Android RTMP直播推送SDK:

5. iOS RTMP直播推送:

6. Windows RTMP/RTSP直播播放SDK:

7. Android RTMP/RTSP直播播放SDK:

8. iOS RTMP/RTSP直播播放SDK:

9. Android播放、录像、RTMP转发-内置网关SDK(SmartRelayDemoV2)

音频采集处理SDK

Windows音频采集处理SDK

  1. 支持音频源
  •  支持Windows采集麦克风扬声器和外部AAC, Speex WB, PCMA, PCMU数据接口输入;
  1. 音频合成
  •  [音频]支持扬声器和麦克风音频混音输出(同时选择“采集扬声器”和“采集麦克风”);
  1. 音频处理
  •  支持音频“端点检测(VAD)”,自适应码流,音频码流更节省;
  •  支持回音消除功能;
  •  支持噪音抑制功能;
  •  支持自动增益控制。
  1. 对应Demo:
  •  测试程序:SmartPublisherDemo.exe;
  •  C++工程:WIN-PublisherSDK-CPP-Demo;
  •  C#工程:WIN-PublisherSDK-CSharp-Demo。

大牛直播互动SDK

目前,大牛直播SDK支持Windows/android一对一互动。

其中,windows需要在推送端,开启回音消除功能,移动端,参考 SmartEchoCancellationV2 工程。

互动SDK
功能 功能描述
标准功能 支持推送端常规功能
支持播放端常规功能
回音消除 支持回音消除
降噪 支持环境音、手机干扰等引起的噪音降噪处理、自动增益、VAD检测

大牛直播SEI扩展数据发送/接收SDK

大牛直播SDK支持推送端通过H.264 SEI信息扩展,实时传输文本/二进制数据信息,播放端做相应解析和回显。

适用场景:

1、公告广播:推送将相对/绝对时间戳/时间/公告内容发到播放端,播放端实时接收消息并做相应的逻辑处理。

2、冲顶大会:推流端实时将题目分发到播放端,借助于大牛直播SDK低延迟特性,轻松实现“音-画-题”同步接收;

3、直播:推流端将歌词/字幕分发到播放端,播放端实时绘制出歌词;

4、应急指挥/单兵:推送端将GIS信息/现场采集到的数据实时写入并分发到播放端;

5、在线教育:推流端将激光笔涂鸦操作分发到播放端,播放端实时划圈划线,实现特定特效。

目前Windows/Android/iOS平台推送和播放端均已支持,效果如下:

http://daniulive.gz.bcebos.com/SEI_send_recv.png

 

大牛直播SDK-Windows RTMP/RTSP/本地FLV播放器使用说明

大牛直播播放器SDK相对推送SDK来说,接口没有那么多,不过客户95%以上的常规需求均已覆盖,目前支持RTMP和RTSP直播播放(涵盖H.265),还有本地flv文件回放。

大牛直播SDK播放端提供C++/C#两套接口,对外提供32/64位库。

对应Demo:

  •  Windows测试程序:SmartPlayer.exe;
  •  Windows C++工程:WIN-PlayerSDK-CPP-Demo;
  •  Windows C#工程:WIN-PlayerSDK-CSharp-Demo;

如何使用

RTMP/RTSP/本地FLV播放

根据提示,在RTMP/RTSP URL或FLV文件处,输入需要播放的url,如“rtmp://live.hkstv.hk.lxdns.com/live/hks”;

设置缓冲(buffer time)

播放RTMP/RTSP流之前,可以设置缓冲时间(单位:毫秒),SDK支持0~10000ms区间设置;

RTMP秒开

如果给出的rtmp url服务器缓存GOP,选中秒开模式,大牛直播SDK可以快速播放rtmp,实现秒开效果;

RTSP相关设置

点击页面“Rtsp设置”按钮,可以设置RTSP timeout时间、默认TCP还是UDP模式、是否TCP-UDP模式自动切换。

FLV本地文件播放

根据提示,在RTMP/RTSP URL或FLV文件处,输入整体的flv文件全路径,如“E:\daniulivetestflv.flv”,SDK会获取到FLV文件的时长(Duration)和当前播放位置。

FLV文件seek

在“设置位置(秒)”处输入需要跳转的秒数,设置后,可直接跳转到指定位置,并从flv制定位置开始播放;

FLV文件暂停

点击“暂停”按钮,即可暂停播放本地flv文件,如需回复播放,点击“恢复”按钮即可;

RTMP/RTSP/FLV文件播放实时静音

播放过程中,可选择实时静音/取消静音;

RTMP/RTSP/FLV文件播放实时快照

点击“设置截图路径”,播放过程中,点击“截图”按钮,即可完成快照保存;

RTMP/RTSP/FLV文件实时录像

点击“录像配置”,设置录像路径,播放或非播放状态下,点击“录像”,可拉取rtmp或rtsp流录制本地文件,如需截取flv文件一部分,亦可通过开始录像/停止录像重新录制mp4文件。

RTMP/RTSP/FLV文件切换地址

在url输入框输入新的播放地址,点击“切换地址”按钮,SDK快速跳转到指定地址,此功能如android/iOS播放端,用于快速切换URL,适用于多路URL轮询;

RTMP/RTSP/FLV文件播放过程中旋转view

不是所有的url播放角度都朝观众预期的方向,如需view旋转,用户可点击旋转按钮,我们的SDK将会对view进行 0° 90° 180° 270°旋转、除此之外,还可以进行水平反转、垂直反转;

播放过程中全屏

Windows C++ Demo双击播放画面或点击“全屏”按钮,进入全屏模式,再次双击,退出全屏。

大牛直播SDK功能支持列表

windows屏幕截取/摄像头推送录像

  1. 视频源相关:
  •  [屏幕/摄像头]支持帧率、关键帧间隔、码率、编码profile、编码速度等设置;
  •  [屏幕]支持屏幕裁剪,根据帧率和推送分辨率,自动推荐码流;
  •  [摄像头]支持摄像头选择、分辨率设置、帧率设置;
  •  [扩展数据]支持外部H.264接口输入;
  1. 音频源相关
  •  [音频]采集麦克风;
  •  [音频]采集扬声器;
  •  [扩展数据]AAC, Speex WB, PCMA, PCMU数据接口输入;
  1. 摄像头和屏幕合成
  •  [摄像头和屏幕实时切换]支持推送过程中,摄像头和屏幕互相切换,单画面显示摄像头或屏幕;
  •  [摄像头叠加到屏幕] 支持摄像头按照设置坐标,叠加到屏幕指定位置,并支持实时关闭叠加层;
  •  [屏幕叠加到摄像头] 支持屏幕按照设定坐标,叠加到摄像头指定位置,并支持实时关闭叠加层;
  1. 水印和透明度遮挡
  •  [实时水印]支持动态水印设置,完美支持文字水印、实时时间水印和图片水印
  •  [透明度]可以设置透明度处理(设置遮盖);
  1. 音频合成
  •  [音频]支持扬声器和麦克风音频混音输出(同时选择“采集扬声器”和“采集麦克风”);
  1. 音频处理
  •  [音频]支持音频“端点检测(VAD)”,自适应码流,音频码流更节省;
  •  [音频]支持回音消除功能(一对一功能:可通过在两台windows机器同时开启daniulive的推送和播放端demo,相互推送播放测试);
  •  [音频]支持噪音抑制功能;
  •  [音频]支持自动增益控制;
  1. 音视频推送类型选择
  •  [视频]支持推送H.264;
  •  [音频]支持推送AAC;
  •  [音频]支持推送Speex;
  •  [音频]支持推送PCMA/PCMU;
  1. 音视频类型、静音、快照、录像等
  •  [音视频]支持纯音频、纯视频、音视频推送;
  •  [音频]推送过程中实时静音/取消静音;
  •  [对接服务器]完美支持自建服务器或CDN;
  •  [录像]录像和推送完全分离,完美支持“边推送边录像”、“先推送、后录像”、“先录像,后推送;
  •  [录像]支持设置录像文件前缀、录像文件大小,录像文件增加日期、时间;
  •  [快照]支持推送或录像过程中,随时快照

Windows导播平台或多路合成、混音推流/录像

对应“SmartMixStreamDemo.exe”

  •  支持“windows屏幕截取/摄像头推送录像”模块所有功能;
  •  支持拉取rtmp流;
  •  支持拉取rtsp流;
  •  支持本地采集到屏幕或摄像头数据,和远程拉取得rtmp或rtsp流做合成、混音输出;
  •  支持导播过程中,随时切断某一路音视频或音频;
  •  支持rtsp数据转rtmp推送出去;
  •  音频混音同时选择“采集麦克风”+“采集扬声器”。

windows/iOS拉流转发模块

对应“SmartStreamRelayDemo.exe”

  •  [拉流]支持拉取rtsp流;
  •  [拉流]支持拉取rtmp流;
  •  [预览]支持拉取到的rtsp/rtmp随时本地预览、关闭预览;
  •  [拉流音频调节]支持拉取的rtsp/rtmp流静音;
  •  [url切换]支持转发过程中,拉取的rtsp/rtmp或本地flv文件实时内容切换
  •  [转发]超低延迟转发拉取的rtsp/rtmp流到rtmp server。

android推流/iOS推流

  •  多分辨率选择;
  •  支持横竖屏推送;
  •  音视频推送、纯音频推送、纯视频推送;
  •  支持边采集、边录像
  •  支持rtmp推送 live|record模式设置;
  •  真正靠谱的录像、推流分离模式,支持推流过程中随时开启录像,录像过程中,随时推流;
  •  支持本地录像文件回放、处理;
  •  采集过程中,前后摄像头切换;
  •  提供编码前(YUV/RGB)、编码后音视频(H.264/AAC)接口对接,方便AR/VR设备调用。
  •  android/iOS自带美颜功能;
  •  android完美支持文字水印、实时时间水印和图片水印
  •  支持推送端实时静音/取消静音
  •  支持软硬编码自适应;
  •  android支持后台service推送摄像头或屏幕(推送屏幕需要5.0+版本);
  •  iOS支持后台推送屏幕(基于ReplayKit,需要iOS 10.0+版本);
  •  android支持实时传递远端PCM数据;
  •  支持gop间隔、帧率、bierate、android编码profile和编码速度设置;
  •  支持推送端镜像设置;
  •  [音频]android支持噪音抑制功能;
  •  [音频]android支持自动增益控制;
  •  [音频]android支持Speex推送;
  •  [音频]android支持Speex编码质量设置;
  •  [快照]支持推送或录像过程中,随时快照;
  •  iOS支持裁剪模式设置;
  •  完美支持各个厂家CDN。

windows播放器/android播放器/iOS播放器

  •  超低延迟的rtmp播放器;
  •  超低延迟的rtsp播放器;
  •  完美支持多实例播放(同时播放多路stream,可同时支持rtmp、rtsp stream播放);
  •  支持RTSP TCP/UDP模式切换;
  •  支持播放端,buffer设置;
  •  支持秒开模式;
  •  windows双击画面进入全屏模式;
  •  audio支持aac/speex/g.711;
  •  windows/iOS播放端sdk支持回调编码过的音视频数据(Video:H.264/YUV Audio:aac/speex/pcma/pcmu)到上层;
  •  android播放端sdk支持回调编码过的音视频数据(Video:YUV/RGB Audio:pcma/pcmu)到上层;
  •  支持自定义播放布局;
  •  音视频多种render机制;
  •  支持播放过程中,’实时静音/取消静音’;
  •  支持播放段视频view实时旋转(0° 90° 180° 270°);
  •  支持播放url快速切换,同等配置的流,切换url依旧可以录制到同一个文件
  •  android/iOS支持软硬解码,业内真正靠谱的超低延迟、低资源占用播放rtsp/rtmp 1080p+;
  •  [快照]支持播放/录像过程中,随时快照
  •  [windows点播播放器]支持本地flv文件播放(支持获取flv文件的duration(时长);支持显示当前播放位置;支持开始播放或播放过程中seek(跳转播放位置),也许是行业内seek最快的flv点播播放器。)
  •  支持针对类似于娃娃机直播方案的超低延迟模式设置(公网200~400ms)。

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

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

大牛直播demo使用说明