大牛直播连麦SDK

大牛直播连麦SDK,系一对一互动SDK的扩展,关于一对一互动SDK说明,可点我查看

连麦SDK,目前覆盖Windows平台,如一对一互动SDK提及,基于官方现有RTMP、RTSP推送、或内置RTSP服务、播放SDK,产品稳定度高,行业内首屈一指的超低延迟特性,采用通用的RTMP服务器,如nginx、SRS,更有利于私有部署。

连麦SDK特别适用于教育培训、指挥系统等场景,连麦后的流数据,以RTMP流形式出去,并支持连麦流数据双屏录制、快照等操作。

以Windows与android端连麦为例(Windows端作为连麦主体端/指挥中心):

Windows端

  1. 打开”SmartMixStreamDemo.exe”;
  2. [视频] 选择期望的视频采集模式,并获取推荐的码流(码率可根据需求自行调整);
  3. [音频] 选择”采集麦克风”,并选择”回音消除”、”噪音抑制”、”端点检测(VAD)”(可选);
  4. [推送地址设置] 输入合流后的rtmp推送地址(可以直接推到CDN),对应”RTMP推送地址1″,如”rtmp://player.daniulive.com:1935/hls/streammix”;
  5. [推送地址设置] 输入原始rtmp推送地址,对应”RTMP原始流推送地址”,如”rtmp://player.daniulive.com:1935/hls/streamorg”;
  6. [播放连麦互动rtmp] 在SmartMixStreamDemo.exe左下角播放器部分,在”播放URL”栏,输入android端的推送地址,如”rtmp://player.daniulive.com:1935/hls/streamandroid”;

[推送] 点击”推送”和”推送原始流”。

Android端

  1. 打开SmartEchoCancellation.apk
  2. [推送]根据需求,选择合适的分辨率和帧率,并选择”使用噪音抑制”,输入推送地址,如”rtmp://player.daniulive.com:1935/hls/streamandroid”,点击开始推送;
  3. [播放]输入Windows推送的原始rtmp推送地址,如此次设置,输入 “rtmp://player.daniulive.com:1935/hls/streamorg”,点击开始播放。

iOS端

  1. 打开SmartiOSEchoCancellation工程
  2. [推送]根据需求,选择合适的分辨率和帧率,输入推送地址,如”rtmp://player.daniulive.com:1935/hls/streamios”,点击开始推送;
  3. [播放]输入Windows推送的原始rtmp推送地址,如此次设置,输入 “rtmp://player.daniulive.com:1935/hls/streamorg”,点击开始播放。

至此,以Windows为连麦主体端的设置完成,可与Windows、Android、iOS平台完成连麦操作,如第三方平台(windows/android/iOS)需要观看此次实时互动视频(连麦效果),在播放端,输入合流后的rtmp推送地址,此次demo为 “rtmp://player.daniulive.com:1935/hls/streammix”,即可完成播放。

大牛直播导播SDK

适用场景:

大牛直播导播SDK适用于外部如多路RTMP/RTSP流,本地摄像头/屏幕/flv文件,多路流合成一路流,然后单路输出的场景。

技术优势:

1. 以SDK形式输出,企业或开发者可根据需求完成多样化的产品需求;

2. 行业内接口更灵活,资源占用更低;

3. 超低延迟输出,效率更高;

4. 支持合流后的图像预览;

5. 支持合流后的音频混音;

6. 支持导播过程中,随时切断某一路音视频或音频;

7. 岂止是合流,还可以实时录像、快照等,接口更丰富。

数据源:

1. rtmp/rtsp音视频流;

2. 本地屏幕/摄像头/音频数据;

3.本地flv文件。

输出:

1. 多路流合成一路流后,推送到RTMP服务器;

2. 多路合成后的流,支持本地录像、快照。

支持平台:Windows

对应Demo:

SmartStreamRelayDemo.exe、SmartMixStreamDemo.exe

相关博客:

轻量级RTSP服务SDK

为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端发布了轻量级RTSP服务SDK:

简单来说,之前推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持。

轻量级RTSP服务解决的核心痛点是避免用户或者开发者单独部署RTSP或者RTMP服务,实现本地的音视频数据(如摄像头、麦克风),编码后,汇聚到内置RTSP服务,对外提供可供拉流的RTSP URL,轻量级RTSP服务,适用于内网环境下,对并发要求不高的场景,支持H.264/H.265,支持RTSP鉴权、单播、组播模式,考虑到单个服务承载能力,我们支持同时创建多个RTSP服务,并支持获取当前RTSP服务会话连接数。

具体参见下图“轻量级RTSP服务器SDK”关联部分:

功能说明:

  •  [基础功能]支持Windows/Linux(含x86_64|aarch64)/Android/iOS平台RTMP直播SDK除推送RTMP外的所有常规功能;
  •  [音频格式]AAC;
  •  [视频格式]H.264、H.265;
  •  [协议类型]RTSP;
  •  [传输模式]支持单播组播模式;
  •  [端口设置]支持RTSP端口设置;
  •  [鉴权设置]支持RTSP鉴权用户名、密码设置;
  •  [获取session连接数]支持获取当前RTSP服务会话连接数;
  •  [多服务支持]支持同时创建多个内置RTSP服务;
  •  [RTSP url回调]支持设置后的rtsp url通过event回调到上层。

对应Demo:

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

技术对接文档(Android为例):

以Windows平台为例:

1. 在选择好需要推送出去的音视频数据类型、调整好码率后(以采集Windows桌面为例,设置好采集帧率,看是否用硬编码,码率如果不想自己配置的话,可以点击按钮“获取视频码率默认值”,如需采集麦克风或扬声器,选择即可),点击“配置查看RTSP服务”:

2. 根据需求,可以启动一路或者多路服务,每路服务,并可配置用户名密码信息(可选)。启动服务后,点击“确定”退出设置页面;

3. 配置流名称(可自定义),默认是 stream1;

4. 发布RTSP流:

5. 发布后,播放地址列表里面,会显示当前发布的url,拷贝其中一个或多个,用大牛直播直播播放器SDK,分别播放即可;

6.服务器负载查看:再次点击“配置查看RTSP服务”,即可看到每个服务连接的会话数:

7. 如需停止服务,点击页面的“停止RTSP流”即可;

8. 如需启动RTSP服务的同时,还需要把数据推到其他RTMP服务,输入推送的RTMP url,点击“推送”即可。

视频展示:

经测试,整体延迟在200-300毫秒区间,在高稳定低CPU占用的前提下,也可能是行业内功能支持最全面,延迟最低的商用级内置RTSP服务方案。

Android平台启动轻量级RTSP服务和推送RTMP,Windows平台分别拉取RTSP流和RTMP流播放,毫秒级延迟体验:

相关博客:

大牛直播SDK-Unity3D直播播放器SDK

除了Windows/Android/iOS Native SDK,大牛直播SDK播放端还支持Unity3d(Windows/Linux/Android/iOS)二次封装,Unity3D下为数不多真正功能强大的高稳定、超低延迟的RTMP/RTSP直播播放器,此外Windows、Android平台RTMP推送端,也支持Unity3D基础对接(参考链接)。

实现流程:

1. Native RTSP或RTSP直播播放SDK回调RGB/YUV420/NV12等其中的一种未压缩的图像格式;

2. Unity3D创建相应的RGB/YUV420等Shader;

3.Unity3D从各个平台获取图像数据来填充纹理即可。

功能列表:

  •  [支持播放协议]高稳定、超低延迟(毫秒级延迟,行业内几无效果接近的播放端)、业内首屈一指的RTMP、RTSP直播播放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特定机型硬解;
  •  [RTSP模式设置]支持RTSP TCP/UDP模式设置;
  •  [RTSP TCP/UDP自动切换]支持RTSP TCP、UDP模式自动切换;
  •  [RTSP超时设置]支持RTSP超时时间设置,单位:秒;
  •  [RTSP 401认证处理]支持上报RTSP 401事件,如URL携带鉴权信息,会自动处理;
  •  [缓冲时间设置]支持buffer time设置;
  •  [首屏秒开]支持首屏秒开模式;
  •  [低延迟模式]支持超低延迟模式设置;
  •  [复杂网络处理]支持断网重连等各种网络环境自动适配;
  •  [快速切换URL]支持播放过程中,快速切换其他URL,内容切换更快;
  •  [实时静音]支持播放过程中,实时静音/取消静音;
  •  [实时快照]支持播放过程中截取当前播放画面;
  •  [渲染角度]支持0°,90°,180°和270°四个视频画面渲染角度设置;
  •  [渲染镜像]支持水平反转、垂直反转模式设置;
  •  [实时下载速度更新]支持当前下载速度实时回调(支持设置回调时间间隔);
  •  [音视频自适应]支持播放过程中,音视频信息改变后自适应播放;
  •  [扩展录像功能]完美支持和录像SDK组合使用(支持RTMP扩展H.265流录制,支持PCMA/PCMU/Speex转AAC后录制,支持设置只录制音频或视频),录像相关功能,可参见”Windows/Linux/Android/iOS录像SDK“。

相关资料:

视沃科技-大牛直播SDK(V2)Unity3D调用说明1.7

Unity3d RTSP/RTMP直播播放端SDK视频演示

Unity3d Linux平台直播播放视频演示(以Windows平台RTMP直播推送SDK采集秒表计时器推送到RTMP服务器,Unity发布的Linux平台RTSP|RTSP播放demo拉流为例):

 

相关博客:

 

[iOS]大牛直播SDK基于unity3d平台的rtmp/rtsp直播播放端SDK接口说明

2.1 demo说明

  • SmartU3diOSPlayer: 大牛直播SDK Unity3D iOS RTMP/RTSP直播播放端工程。

2.2 功能说明

标准接口:

  • 音频:AAC/PCMA/PCMU/SPEEX(RTMP);
  • 视频:H.264/H.265(RTSP);
  • 播放协议:RTMP/RTSP;
  • 支持RTSP TCP/UDP模式切换;
  • 支持RTSP timeout设置;
  • 支持RTSP TCP/UDP模式自动切换;
  • 支持纯音频、纯视频、音视频播放;
  • 支持秒开模式;
  • 音视频多种render机制;
  • 支持buffer设置;
  • 真正靠谱的超低延迟;
  • 支持多实例播放;
  • 支持播放url快速切换;
  • 断网自动重连,支持视频追赶;
  • 支持视频video实时旋转、水平反转、垂直反转。

增值接口:

  • 同时支持rtsp、rtmp播放;
  • 播放过程中,实时静音、取消静音;
  • 播放端回调YUV,供unity3d调用完成绘制;
  • 实时快照;
  • 实时录像。

2.3 集成说明

拷贝以下文件,到Assets–>Plugins–>iOS目录:

相关头文件和调用说明,参见:SmartPlayeriOSMono.cs

Unity3D工程下,File–>Build Settings,Platform选择iOS,然后点击build,设置目录,生成xcode工程:

生成后的xcode工程,添加以下依赖库:

  • 相关库:libSmartPlayerSDK.a
  • 引入以下依赖framework
    • libz.tbd
    • libbz2.tbd
    • libiconv.tbd
    • libstdc++.tbd
    • libc++.tbd
    • Accelerate.framework
    • AssetsLibrary.framework
    • AudioToolBox.framework
    • AVFoundation.framework
    • CoreMedia.framework
    • Foundation.framework
    • GLKit.framework
    • OpenGLES.framework
    • UIKit.framework
    • VideoToolBox.framework
  • 如需集成到自己系统测试,请用大牛直播的app name:

Info.plist–>右键Open As–>Source Code

添加或者编辑

<key>CFBundleName</key>

<string>SmartiOSPlayer</string>

  • 快照添加到“照片”权限:

Info.plist–>右键Open As–>Source Code

添加

<key>NSPhotoLibraryUsageDescription</key>
<string>1</string>

  • 导出后的xcode工程,如编译不过,参考以下设置: Library Search Paths:$(SRCROOT)/Libraries

2.4 调用时序(V2)

  1. 【最先调用】NT_U3D_Init:player初始化,目前预留;
  2. 【获得player句柄】NT_U3D_Open,设置上下文信息,返回player句柄;
  3. 【设置GameObject】NT_U3D_Set_Game_Object,注册Game Object,用于消息传递;
  4. 【设置硬解码】NT_U3D_SetVideoDecoderMode,设置是否用硬解码播放,如硬解码不支持,自动适配到软解码;
  5. 【缓冲设置】NT_U3D_SetBuffer,设置播放端缓存数据buffer,以毫秒(ms)为单位,如超低延迟模式下,不需buffer数据,设置为0;
  6. 【RTSP TCP/UDP设置】NT_U3D_SetRTSPTcpMode,设置TCP/UDP播放模式,注意:此接口仅用于RTSP;
  7. 【实时静音-可实时调用】NT_U3D_SetMute,设置播放过程中,实时静音/取消静音;
  8. 【快速启动】NT_U3D_SetFastStartup,Set fast startup(快速启动),设置快速启动后,如果CDN缓存GOP,daniulive player可快速出帧;
  9. 【低延迟模式】NT_U3D_SetPlayerLowLatencyMode,针对类似于直播娃娃机等期待超低延迟的使用场景,超低延迟播放模式下,延迟甚至可达到200~400ms;
  10. 【视频显示角度设置-可实时调用】NT_U3D_SetRotation,针对类似于安防摄像头或其他设备出来的图像倒置现象,支持视频播放view顺时针旋转, 当前支持 0度,90度, 180度, 270度 旋转,注意除了0度之外, 其他角度都会额外消耗性能;
  11. 【下载速度回调设置】NT_U3D_SetReportDownloadSpeed,设置下载速度上报, 默认不上报下载速度;
  12. 【快照设置】NT_U3D_SetSaveImageFlag(),设置是否需要在播放或录像过程中快照;
  13. 【快照-录像或播放后,可随时调用】NT_U3D_SaveCurImage,播放过程中,根据设置路径和文件名,实时快照;
  14. 【快速切换url-可实时调用】NT_U3D_SwitchPlaybackUrl,快速切换播放url,快速切换时,只换播放source部分,适用于不同数据流之间,快速切换(如娃娃机双摄像头切换或高低分辨率流切换);
  15. 【录像设置】NT_U3D_CreateFileDirectory,创建文件路径,注意:iOS只提供接口,未提供具体实现;
  16. 【录像设置】NT_U3D_SetRecorderDirectory,设置文件路径;
  17. 【录像设置】NT_U3D_SetRecorderFileMaxSize,设置每个录像文件最大size,以兆(M)为单位,范围(5M~500M);
  18. 【设置播放或录像URL】NT_U3D_SetUrl,设置播放/录像url;
  19. 【播放】NT_U3D_StartPlay,开始播放;
  20. 【播放】NT_U3D_GetVideoFrame,获取底层回调的YUV数据;
  21. 【播放】NT_U3D_StopPlay,停止播放;
  22. 【录像】NT_U3D_StartRecorder,开始录像;
  23. 【录像】NT_U3D_StopRecorder,停止录像;
  24. 【关闭】NT_U3D_Close, 关闭播放器实例;
  25. 【最后调用】NT_U3D_UnInit,UnInit Player,最后调用。

2.5 Event回调

/// <summary>

/// android 传递过来 code

/// </summary>

/// <param name=”code”></param>

public void onNTSmartEvent(string param)

{

if (!param.Contains(“,”))

{

Debug.Log(“[onNTSmartEvent] android传递参数错误”);

return;

}

string[] strs = param.Split(‘,’);

string player_handle =strs[0];

string code = strs[1];

string param1 = strs[2];

string param2 = strs[3];

string param3 = strs[4];

string param4 = strs[5];

Debug.Log(“[onNTSmartEvent] code: 0x” + Convert.ToString(Convert.ToInt32(code), 16));

switch (Convert.ToInt32(code))

{

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_STARTED:

Debug.Log(“开始。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CONNECTING:

Debug.Log(“连接中。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CONNECTION_FAILED:

Debug.Log(“连接失败。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CONNECTED:

Debug.Log(“连接成功。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_DISCONNECTED:

Debug.Log(“连接断开。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_STOP:

Debug.Log(“停止播放。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_RESOLUTION_INFO:

Debug.Log(“分辨率信息: width: ” + Convert.ToInt32(param1) + “, height: ” + Convert.ToInt32(param2));

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_NO_MEDIADATA_RECEIVED:

Debug.Log(“收不到媒体数据,可能是url错误。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_SWITCH_URL:

Debug.Log(“切换播放URL。。”);

break;

 

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CAPTURE_IMAGE:

Debug.Log(“快照: ” + param1 + ” 路径:” + param3);

 

if (Convert.ToInt32(param1) == 0)

{

Debug.Log(“截取快照成功。.”);

}

else

{

Debug.Log(“截取快照失败。.”);

}

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_RECORDER_START_NEW_FILE:

Debug.Log(“[record]开始一个新的录像文件 : ” + param3);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_ONE_RECORDER_FILE_FINISHED:

Debug.Log(“[record]已生成一个录像文件 : ” + param3);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_START_BUFFERING:

Debug.Log(“Start_Buffering”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_BUFFERING:

Debug.Log(“Buffering: ” + Convert.ToInt32(param1));

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_STOP_BUFFERING:

Debug.Log(“Stop_Buffering”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_DOWNLOAD_SPEED:

Debug.Log(“download_speed:” + param1 + “Byte/s” + “, ”

+ (Convert.ToInt32(param1) * 8 / 1000) + “kbps” + “, ” + (Convert.ToInt32(param1) / 1024)

+ “KB/s”);

break;

}

}

更多资料,可以访问 https://github.com/daniulive/SmarterStreaming or http://www.daniulive.com/

[Android]大牛直播SDK基于unity3d平台的rtmp/rtsp直播播放端SDK接口说明

1.1 demo说明

  • SmartU3dAndroidPlayer: 大牛直播SDK Unity3D Android RTMP/RTSP直播播放端工程。

1.2 功能说明

标准接口:

  • 音频:AAC/G.711/speex;
  • 视频:264;
  • 播放协议:RTMP/RTSP;
  • 支持RTSP TCP/UDP模式切换;
  • 支持纯音频、纯视频、音视频播放;
  • 支持秒开模式;
  • 音视频多种render机制;
  • 支持buffer设置;
  • 真正靠谱的超低延迟;
  • 支持多实例播放;
  • 支持播放url快速切换;
  • 断网自动重连,支持视频追赶;
  • 支持视频video实时旋转。

增值接口:

  • 同时支持rtsp、rtmp播放;
  • 播放过程中,实时静音、取消静音;
  • 播放端回调YUV,供unity3d调用完成绘制;
  • 实时快照;
  • 实时录像。

1.3集成说明

  • Unity3D接口和调用demo,参见:SmartPlayerAndroidMono.cs
  • SmartU3dAndroidPlayer\Assets\Plugins\Android\libs下相关库到工程:
  • Smartavengine.jar加入到工程;
  • smartplayerunity3d.jar加入工程;
  • libs\arm64-v8a 和 SmartPlayer\libs\armeabi 下 libSmartPlayer.so。
  • 在SmartU3dAndroidPlayer\Assets\Plugins\Android\AndroidManifest.xml配置相关权限:

<uses-permission android:name=”android.permission.WRITE_EXTERNAL_STORAGE” > </uses-permission>

<uses-permission android:name=”android.permission.INTERNET” ></uses-permission>

<uses-permission android:name=”android.permission.MOUNT_UNMOUNT_FILESYSTEMS” />

<uses-permission android:name=”android.permission.MODIFY_AUDIO_SETTINGS” />

  • 如需集成到自己系统测试,请用大牛直播SDK的app name(不然集成提示license failed),正式授权版按照授权app name正常使用即可:
  • 如何改app-name:
  • Unity3D模式下:File–>Build Settings–>Android–>Player Settings,设置Product Name。

1.4 调用时序(V2)

  1. 【最先调用】NT_U3D_Init:player初始化,目前预留;
  2. 【获得player句柄】NT_U3D_Open,设置上下文信息,返回player句柄;
  3. 【设置GameObject】NT_U3D_Set_Game_Object,注册Game Object,用于消息传递;
  4. 【设置硬解码】NT_U3D_SetVideoDecoderMode,设置是否用硬解码播放,如硬解码不支持,自动适配到软解码;
  5. 【audio输出类型】NT_U3D_SetAudioOutputType(),如果use_audiotrack设置为0,将会自动选择输出设备,如果设置为1,使用audiotrack模式;
  6. 【缓冲设置】NT_U3D_SetBuffer,设置播放端缓存数据buffer,以毫秒(ms)为单位,如超低延迟模式下,不需buffer数据,设置为0;
  7. 【RTSP TCP/UDP设置】NT_U3D_SetRTSPTcpMode,设置TCP/UDP播放模式,注意:此接口仅用于RTSP;
  8. 【实时静音-可实时调用】NT_U3D_SetMute,设置播放过程中,实时静音/取消静音;
  9. 【快速启动】NT_U3D_SetFastStartup,Set fast startup(快速启动),设置快速启动后,如果CDN缓存GOP,daniulive player可快速出帧;
  10. 【低延迟模式】NT_U3D_SetPlayerLowLatencyMode,针对类似于直播娃娃机等期待超低延迟的使用场景,超低延迟播放模式下,延迟甚至可达到200~400ms;
  11. 【视频显示角度设置-可实时调用】NT_U3D_SetRotation,针对类似于安防摄像头或其他设备出来的图像倒置现象,支持视频播放view顺时针旋转, 当前支持 0度,90度, 180度, 270度 旋转,注意除了0度之外, 其他角度都会额外消耗性能;
  12. 【下载速度回调设置】NT_U3D_SetReportDownloadSpeed,设置下载速度上报, 默认不上报下载速度;
  13. 【快照设置】NT_U3D_SetSaveImageFlag(),设置是否需要在播放或录像过程中快照;
  14. 【快照-录像或播放后,可随时调用】NT_U3D_SaveCurImage,播放过程中,根据设置路径和文件名,实时快照;
  15. 【快速切换url-可实时调用】NT_U3D_SwitchPlaybackUrl,快速切换播放url,快速切换时,只换播放source部分,适用于不同数据流之间,快速切换(如娃娃机双摄像头切换或高低分辨率流切换);
  16. 【录像设置】NT_U3D_CreateFileDirectory,创建文件路径;
  17. 【录像设置】NT_U3D_SetRecorderDirectory,设置文件路径;
  18. 【录像设置】NT_U3D_SetRecorderFileMaxSize,设置每个录像文件最大size,以兆(M)为单位,范围(5M~500M);
  19. 【设置播放或录像URL】NT_U3D_SetUrl,设置播放/录像url;
  20. 【播放】NT_U3D_StartPlay,开始播放;
  21. 【播放】NT_U3D_GetVideoFrame,获取底层回调的YUV数据;
  22. 【播放】NT_U3D_StopPlay,停止播放;
  23. 【录像】NT_U3D_StartRecorder,开始录像;
  24. 【录像】NT_U3D_StopRecorder,停止录像;
  25. 【关闭】NT_U3D_Close, 关闭播放器实例;
  26. 【最后调用】NT_U3D_UnInit,UnInit Player,最后调用。

1.5 Event回调

/// <summary>

/// android 传递过来 code

/// </summary>

/// <param name=”code”></param>

public void onNTSmartEvent(string param)

{

if (!param.Contains(“,”))

{

Debug.Log(“[onNTSmartEvent] android传递参数错误”);

return;

}

string[] strs = param.Split(‘,’);

string player_handle =strs[0];

string code = strs[1];

string param1 = strs[2];

string param2 = strs[3];

string param3 = strs[4];

string param4 = strs[5];

Debug.Log(“[onNTSmartEvent] code: 0x” + Convert.ToString(Convert.ToInt32(code), 16));

switch (Convert.ToInt32(code))

{

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_STARTED:

Debug.Log(“开始。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CONNECTING:

Debug.Log(“连接中。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CONNECTION_FAILED:

Debug.Log(“连接失败。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CONNECTED:

Debug.Log(“连接成功。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_DISCONNECTED:

Debug.Log(“连接断开。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_STOP:

Debug.Log(“停止播放。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_RESOLUTION_INFO:

Debug.Log(“分辨率信息: width: ” + Convert.ToInt32(param1) + “, height: ” + Convert.ToInt32(param2));

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_NO_MEDIADATA_RECEIVED:

Debug.Log(“收不到媒体数据,可能是url错误。。”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_SWITCH_URL:

Debug.Log(“切换播放URL。。”);

break;

 

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_CAPTURE_IMAGE:

Debug.Log(“快照: ” + param1 + ” 路径:” + param3);

 

if (Convert.ToInt32(param1) == 0)

{

Debug.Log(“截取快照成功。.”);

}

else

{

Debug.Log(“截取快照失败。.”);

}

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_RECORDER_START_NEW_FILE:

Debug.Log(“[record]开始一个新的录像文件 : ” + param3);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_ONE_RECORDER_FILE_FINISHED:

Debug.Log(“[record]已生成一个录像文件 : ” + param3);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_START_BUFFERING:

Debug.Log(“Start_Buffering”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_BUFFERING:

Debug.Log(“Buffering: ” + Convert.ToInt32(param1));

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_STOP_BUFFERING:

Debug.Log(“Stop_Buffering”);

break;

case EVENTID.EVENT_DANIULIVE_ERC_PLAYER_DOWNLOAD_SPEED:

Debug.Log(“download_speed:” + param1 + “Byte/s” + “, ”

+ (Convert.ToInt32(param1) * 8 / 1000) + “kbps” + “, ” + (Convert.ToInt32(param1) / 1024)

+ “KB/s”);

break;

}

}

经测试,Android、iOS端效果如下,播放端延迟低于1秒,也可能是unity3d平台下最快最稳定的rtmp播放器/rtsp播放器:

视频效果图:

更多资料,可以访问 https://github.com/daniulive/SmarterStreaming or http://www.daniulive.com/

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

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

大牛直播SDK播放端提供C++/C#两套接口,并支持IE浏览器OCX控件调用,对外提供32/64位debug/release库。

对应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/hks1”;

设置缓冲(buffer time)

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

RTMP秒开

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

RTSP相关设置

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

RTMP解密播放

SetUrl之前,设置解密的Key和IV解密向量即可。

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双击播放画面或点击“全屏”按钮,进入全屏模式,再次双击,退出全屏。

IE浏览器OCX控件调用说明

点我查看OCX控件使用说明和SDK集成文档

大牛直播SDK-Windows RTMP/RTSP推送端使用说明

由于大牛直播SDK Demo主要侧重于SDK接口展示,不必说自研,哪怕demo使用,庞大的功能让好多开发者望而却步,以下是Windows推送端SDK简单的介绍:

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

对应Demo:

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

使用说明:

1视频采集设置

说明:

1. 屏幕和摄像头相互切换:用于在线教育或者无纸化等场景,推送或录像过程中,随时切换屏幕或摄像头数据(切换数据源),如需实时切换,点击页面“切换到摄像头”按钮即可;

2. 设置遮盖层,用于设定一个长方形或正方形区域(可自指定区域大小),遮盖不想给用户展示的部分;

3. 水印:添加PNG水印,支持推送或录像过程中,随时添加、取消水印;

4. 摄像头叠加到屏幕:意在用于同屏过程中,主讲人摄像头悬浮于屏幕之上(可指定叠加坐标),实现双画面展示,推送或录像过程中,可以随时取消摄像头叠加;

5. 屏幕叠加到摄像头:同4,效果展示,实际根据需求实现;

6. 采集桌面:可以通过点击“选择屏幕区域”获取采集区域,并可在采集过程中,随时切换区域位置,如不设定,默认全屏采集;

7. 使用DXGI采集屏幕,采集时停用Aero;

8. 采集窗口:可设定需要采集的窗口,窗口放大或缩小,推送端会自适应码率和分辨率;

9. 采集帧率(帧/秒):默认屏幕采集5帧,可根据实际场景需求设定到10-25帧;

10. 缩放屏幕大小缩放比:用于高清或超高清屏,通过设定一定的比例因子,缩放屏幕采集分辨率;

11. 采集摄像头:可选择需要采集的摄像头、采集分辨率、帧率、是否需要水平或者垂直反转、是否需要旋转;

追加提问:

问题[确认数据源]:采集桌面还是摄像头?如果桌面,全屏还是部分区域?

回答:

  • 如果是摄像头:可以选择摄像头列表,然后分辨率、帧率。
  • 如果是屏幕:默认帧率是5帧,可以根据实际场景调整,选取屏幕区域,可以实时拉取选择需要采集或录像区域;
  • 如果是叠加模式:可选择摄像头叠加到屏幕,还是屏幕叠加到摄像头;
  • 更高需求的用户,可以设置水印或应用层遮盖。

问题:如果是摄像头,采集到的摄像头角度不对怎么办?

回答:我们支持摄像头镜像和翻转设置,摄像头可通过SDK接口轻松实现水平/垂直翻转、镜像效果。

视频码率控制

我选可变码率还是平均码率?

回答:可变码率的优势在于,如果屏幕或摄像头变化不大,码率超低,特别是H.265编码,平均码率,码率比较均匀,需设置平均码率+最大码率,一般摄像头采集建议选择可变码率,屏幕采集选择平均码率,如需采用可变码率,请取消“使用平均码率”选项。

265编码还是H.264编码?

回答:Windows 64位库支持H.265编码,如果推RTMP流,需要服务器支持RTMP H.265扩展,播放器SDK,也需要同步支持RTMP H.265扩展播放。

如果是轻量级RTSP服务SDK对接的话,只需要播放器支持RTSP H.265即可。

如果推摄像头数据,建议采用可变码率+H.265编码。

如何设置码率参数更合理?

回答:

关键帧间隔:一般来说,设置到帧率的2-4倍,比如帧率20,关键帧间隔可以设置到40-80;

平均码率:可以点击“获取视频码率默认值”,最大码率是平均码率的2倍;

视频质量:如果使用可变码率,建议采用大牛直播SDK默认推荐视频质量值;

编码速度:如高分辨率,建议1-3,值越小,编码速度越快;

H.264 Profile:默认baseline profile,可根据需要,酌情设置High profile;

NOTE:点击“推送”或“录像”或启动内置RTSP服务SDK之前,请务必设置视频码率,如不想手动设置,请点击“获取视频码率默认值”!!!

音频采集设置

问答式:采集音频吗?如果采集,采集麦克风还是扬声器的,亦或混音?

回答:

  • 如果想采集电脑输出的音频(比如音乐之类),可以选择“采集扬声器”;
  • 如果想采集麦克风音频,可以选择“采集麦克风”,并选择相关设备;
  • 如果两个都想采集,可以两个都选择,混音输出。

音频编码

问题:是AAC还是SPEEX?

回答:我们默认是AAC编码模式,如果需要码率更低,可以选择SPEEX编码模式,当然我们的AAC编码码率也不高。

音频处理

问题:我想过滤背景噪音怎么办?

回答:选中“噪音抑制”,“噪音抑制“请和“自动增益控制”组合使用,“端点检测(VAD)”可选设置

问题:我想做一对一互动怎么办?

回答:选中“回音消除”,可以和“噪音抑制”、“自动增益控制”组合使用。

问题:我推送或者录像过程中,随时静音怎么办?

回答:推送过程中,随时选择或取消选择“静音”功能。

6多路推送

问题:我想同时推送到多个url怎么办(比如一个内网服务器,一个外网服务器)?

回答:同时填写多个url,然后点推送即可。

截图(快照)

问题:我想推送或者录像过程中,截取当前图像怎么办?

回答:那就设置好截图路径,推送或录像过程中,随时点击“截图”。

录像

问题:我还想录像,怎么办?

回答:设置录像文件存放目录,文件前缀、单个文件大小,是否加日期、时间,随时录制即可。

9 实时预览

问题:我还想看看视频特别是合成后的效果,怎么办?

回答:点击页面的“预览”按钮,就可以看到。

我是外行,我想快速测试推屏怎么办?

回答:

1. 推屏幕:

2. 推摄像头:

相关资料和测试程序下载:

Github: https://github.com/daniulive/SmarterStreaming

官网:https://www.daniulive.com

大牛直播SDK release note

视沃科技(大牛直播SDK)2024-06-19 release note:

1. Linux|麒麟操作系统(aarch64架构)发布RTMP直播推送SDK和轻量级RTSP服务SDK。

视沃科技(大牛直播SDK)2024-05-10 release note:

1. Linux|麒麟操作系统(aarch64架构)发布RTMP和RTSP直播播放SDK。

视沃科技(大牛直播SDK)2024-04-10 release note:

1. Android平台播放SDK支持TextureView渲染。

视沃科技(大牛直播SDK)2024-03-08 release note:

1. iOS平台RTMP推送SDK支持enhanced RTMP H265;

2. iOS平台RTMP播放SDK支持enhanced RTMP H265。

视沃科技(大牛直播SDK)2024-03-06 release note:

1. Android平台RTMP推送SDK支持enhanced RTMP H265;

2. Android平台RTMP播放SDK支持enhanced RTMP H265。

视沃科技(大牛直播SDK)2024-03-01 release note:

1. Windows平台RTMP推送SDK支持enhanced RTMP H265;

2. Windows平台RTMP播放SDK支持enhanced RTMP H265。

视沃科技(大牛直播SDK)2024-01-17 release note:

1. Android平台播放端SDK支持可选JPEG|PNG图像抓拍;

视沃科技(大牛直播SDK)2024-01-12 release note:

1. Android平台GB28181接入SDK(SmartGBD)支持GB28181-2022图像抓拍;

视沃科技(大牛直播SDK)2023-12-10 release note:

1. Android平台推送端SDK支持可选JPEG|PNG图像抓拍;

视沃科技(大牛直播SDK)2023-11-12 release note:

1. Windows平台发布C#版拉取RTSP|RTMP流解码后添加动态水印输出RTMP|轻量级RTSP服务demo 详见

视沃科技(大牛直播SDK)2023-10-30 release note:

1. Android平台GB28181接入SDK(SmartGBD)支持历史视音频文件回放;

视沃科技(大牛直播SDK)2023-08-30 release note:

1. Android平台GB28181接入SDK(SmartGBD)支持历史视音频文件检索;

2. Android平台GB28181接入SDK(SmartGBD)支持历史视音频文件下载。

视沃科技(大牛直播SDK)2023-05-18 release note:

1. Android平台发布外部编码数据实时预览播放SDK。

视沃科技(大牛直播SDK)2023-04-16 release note:

1. Android推送端硬编码支持码率控制模式、编码复杂度、编码质量、编码profile、编码level和最大码率设置。

视沃科技(大牛直播SDK)2022-12-06 release note:

1. Android对接轻量级RTSP服务SDK支持G.711 A律。

视沃科技(大牛直播SDK)2022-12-01 release note:

1. Android平台GB28181设备接入SDK(SmartGBD)支持云台控制回调和预置位查询。

视沃科技(大牛直播SDK)2022-09-20 release note:

1. Unity平台Android对接轻量级RTSP服务SDK。

视沃科技(大牛直播SDK)2022-08-26 release note:

1. Android推送端(RTMP推送、轻量级RTSP服务、GB28181接入)支持Native Mediacodec硬编码(H264/HEVC,5.0+)。

视沃科技(大牛直播SDK)2022-08-12 release note:

1. Unity平台Windows和Android RTMP推送端支持Unity Camera接入。

视沃科技(大牛直播SDK)2022-07-13 release note:

1. Android平台GB28181接入SDK支持语音广播和语音对讲。

视沃科技(大牛直播SDK)2022-05-18 release note:

1. Android平台RTMP推送SDK、轻量级RTSP服务SDK、GB28181接入SDK支持实时动态水印。

视沃科技(大牛直播SDK)2022-03-31 release note:

1. Unity平台发布Linux端RTMP|RTSP直播播放SDK;

视沃科技(大牛直播SDK)2022-03-25 release note:

1. Unity平台Windows推送端SDK支持Unity内部音频采集和混音推送;

2. Unity平台Android推送端SDK支持Unity内部音频采集推送。

视沃科技(大牛直播SDK)2022-02-20 release note:

1. 发布Android平台GB28181接入SDK(SmartGBD)支持实时位置(MobilePosition)上报。

视沃科技(大牛直播SDK)2022-02-25 release note:

1. 发布Android平台GB28181接入SDK(SmartGBD)。

视沃科技(大牛直播SDK)2021-07-10 release note:

1. 发布Linux|麒麟操作系统发布RTMP直播推送SDK。

视沃科技(大牛直播SDK)2021-06-25 release note:

1. 发布Linux|麒麟操作系统发布RTMP和RTSP直播播放SDK。

视沃科技(大牛直播SDK)2021-06-10 release note:

1. Windows推送SDK发布Unity3D对接升级版,支持Unity3D窗体采集对接。

视沃科技(大牛直播SDK)2021-05-16 release note:

1. Android推送SDK发布Unity3D对接版,支持Unity3D窗体采集对接。

视沃科技(大牛直播SDK)2021-04-02 release note:

1. Windows推送SDK优化Win10高版本窗口采集;

1. Android转发SDK测试Demo增加内置网关功能(拉取的RTSP|RTMP流注入轻量级RTSP服务);

视沃科技(大牛直播SDK)2021-03-02 release note:

1. Android播放SDK支持实时音量调节;

2. iOS播放SDK支持实时音量调节.

视沃科技(大牛直播SDK)2021-01-21 release note:

1. Windows播放SDK支持实时音量调节.

视沃科技(大牛直播SDK)2020-11-22 release note:

1. Windows推送SDK支持特定机型硬编码.

视沃科技(大牛直播SDK)2020-09-10 release note:

1. Android推送SDK支持YV12接口,支持输入数据旋转;

2. Android推送SDK支持NV21接口,支持输入数据旋转、水平反转、垂直反转.

视沃科技(大牛直播SDK)2020-07-07 release note:

1. 整体优化Android推送和播放SDK;

2. 整体优化iOS推送和播放SDK.

视沃科技(大牛直播SDK)2020-05-27 release note:

1.Android推送SDK增加实时音量设置接口;

2. Android推送SDK增加NV21图像传入接口;

3.整体优化Android推送和播放SDK.

视沃科技(大牛直播SDK)2020-04-29 release note:

1.Windows推送SDK增加实时音量设置接口(混音模式下支持单独控制麦克风、扬声器音量);

2.整体优化Windows推送和播放SDK.

视沃科技(大牛直播SDK)2020-03-25 release note:

1.Android推送SDK增加混音接口;

2.Android推送SDK支持双通道PCM音频数据输入;

3.Android推送SDK支持更多类型采样率的PCM音频数据输入(如8000,16000采样率等);

4.Android推送SDK增加short array类型的pcm音频数据接口,便于和其他系统对接;

5. Android推送SDK精简录像接口;

6.整体优化Android推送和播放SDK.

视沃科技(大牛直播SDK)2020-03-17 release note:

1.Windows平台发布基于标准RTMP服务的一对一互动DEMO(以C#为例,对应WIN-EchoCancellation-CSharp-Demo工程);

视沃科技(大牛直播SDK)2020-02-18 release note:

1.Windows播放SDK增加按比例缩放绘制接口;

2.更新Windows相关demo代码;

3.整体优化Windows推送和播放SDK.

视沃科技(大牛直播SDK)2020-02-12 release note:

1.iOS播放SDK增加按图像比例缩放绘制接口;

2.iOS播放SDK优化RTMP SM4解密;

3.整体优化iOS推送和播放SDK.

视沃科技(大牛直播SDK)2020-02-11 release note:

1.Android推送SDK增加android.media.Image.YUV_420_888格式(android.graphics.ImageFormat.YUV_420_888)传入接口,方便安卓Camera2接口对接;

2.Android播放SDK优化SurfaceView绘制方式;

3.Android播放SDK优化Opengles绘制方式;

4.Android播放SDK增加按图像比例缩放绘制接口;

5.整体优化Android推送和播放SDK.

视沃科技(大牛直播SDK)2019-12-17 release note:

1.iOS推送SDK增加音视频录像开关,方便更细粒度的控制录像;

2.iOS推送SDK摄像头demo支持缩放模式下多分辨率选择;

3.iOS推送SDK增加外部h264/aac编码后数据录像接口支持;

4.iOS平台整体优化屏幕采集推送模块,支持推送端横竖屏切换自动适配;

5.iOS播放SDK进一步降低在0缓存情况下的延时;

6.整体优化iOS推送和播放SDK.

视沃科技(大牛直播SDK)2019-12-12 release note:

1.Android推送SDK增加音视频录像开关,方便更细粒度的控制录像;

2.Android推送SDK增加外部h264/aac编码后数据录像接口支持;

3.Android录屏demo针对8.0及以上系统增加省电白名单动态权限申请代码(避免运行一分钟后被系统停掉);

4.Android平台优化安卓屏幕采集demo,进一步提高采集帧率;

5.Android播放SDK在使用surfaceview绘制情况下支持rgb565和rgb888两种图像格式选择;

6.Android播放SDK在使用surfaceview绘制情况下增加抗锯齿开关;

7.Android播放SDK增加音视频录像开关,方便更细粒度的控制录像;

8.Android播放SDK特定机型支持超高帧率播放;

9.Android推送SDK优化h264硬编码;

10.Android播放SDK优化h264硬解码;

11.Android播放SDK进一步降低在0缓存情况下的延时;

12.整体优化Android推送和播放SDK.

视沃科技(大牛直播SDK)2019-10-29 release note:

1.Windows推送SDK提高帧率限制到120fps;

2.Windows播放SDK支持超高帧率播放;

3. 优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2019-10-24 release note:

1.iOS平台优化回音消除功能;

2.iOS播放SDK支持超高帧率播放;

3. 优化iOS播放和推送SDK.

视沃科技(大牛直播SDK)2019-09-20 release note:

1.iOS推送端SDK增加AAC码率设置接口;

2.整理iOS推送播放日志打印;

3. 优化iOS播放和推送SDK.

视沃科技(大牛直播SDK)2019-09-02 release note:

发布“大牛直播SDK多路RTSP-RTMP转RTMP官方定制版”,官方定制版,支持守护进程启动、通过图形化配置实现多路转发,非专业人士亦可完成操作。

视沃科技(大牛直播SDK)2019-08-23 release note:

1.安卓推送增加AAC码率设置接口;

2.整理安卓推送播放日志打印;

3. 优化Android播放和推送SDK.

视沃科技(大牛直播SDK)2019-08-22 release note:

1.Windows播放SDK增加ARGB图像叠加到显示视频上的接口;

2.Windows播放SDK增加可以指定回调图像大小的接口(可以对原视图像缩放后再吐出来);

3. Windows播放SDK进一步降低0缓冲情况的播放延时;

4. Windows推送SDK增加休眠接口(设置成休眠模式后cpu会适当降低);

5. 优化Windows推送播放SDK.

视沃科技(大牛直播SDK)2019-06-19 release note:

1.iOS推送SDK增加录像实时暂停、恢复功能;

2.优化iOS播放和推送SDK.

视沃科技(大牛直播SDK)2019-06-14 release note:

1.Android推送SDK增加录像实时暂停、恢复功能;

2.Android推送SDK优化音频输入;

3.优化Android播放和推送SDK.

视沃科技(大牛直播SDK)2019-06-12 release note:

1.Windows推送SDK增加录像实时暂停、恢复功能;

2.Windows推送SDK扬声器采集增加静音帧补偿接口;

3.Windows播放SDK支持硬解码(h264,h265硬解);

4.优化Windows推送播放SDK.

视沃科技(大牛直播SDK)2019-05-24 release note:

1.iOS推送SDK支持RTMP h265加密;

2.iOS推送SDK支持RTMP h264加密;

3.iOS推送SDK支持AAC/Speex/G711加密;

4.iOS播放SDK支持对应的加密流播放;

5.iOS RTMP支持AES128, AES192, AES256, SM4(国密)加解密;

6.iOS内置轻量级RTSP服务SDK支持组播模式;

7.iOS播放SDK支持RTSP mjpeg播放;

8.优化iOS播放和推送SDK.

视沃科技(大牛直播SDK)2019-05-16 release note:

1.Android推送SDK支持RTMP h265加密;

2.Android推送SDK支持RTMP h264加密;

3.Android推送SDK支持AAC/Speex/G711加密;

4.Android播放SDK支持对应的加密流播放;

5.Android RTMP支持AES128, AES192, AES256, SM4(国密)加解密;

6.Android推送SDK增加rgbx图像输入裁剪接口;

7.优化Android播放和推送SDK.

视沃科技(大牛直播SDK)2019-04-24 release note:

1.Windows推送SDK支持RTMP SM4(国密)加密;

2.Windows播放SDK支持相应RTMP SM4(国密)加密流播放;

3.优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2019-04-10 release note:

1. Android/iOS平台发布Flutter RTSP/RTMP播放SDK二次封装接口:

视沃科技(大牛直播SDK)2019-04-09 release note:

1.Windows推送SDK支持RTMP h265加密;

2.Windows推送SDK支持RTMP h264加密;

3.Windows推送SDK支持AAC/Speex/G711加密;

4.Windows播放SDK支持对应的加密流播放;

5.Windows RTMP支持AES128, AES192, AES256加密;

6.优化Windows桌面采集;

7.优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2019-03-22 release note:

1. Windows播放SDK发布IE浏览器OCX控件:

视沃科技(大牛直播SDK)2019-03-08 release note:

1.Android平台全面支持x86、 x86-64位架构, 方便在模拟器上运行;

2.Android播放SDK支持rtsp mjpeg播放;

3.Android内置轻量级RTSP服务SDK支持组播模式;

4.Android推送SDK支持RGB565格式数据对接;

5.优化Android播放和推送SDK.

视沃科技(大牛直播SDK)2019-03-01 release note:

1.Windows推送SDK增加屏幕缩放功能,屏幕采集码率更低,体验更好;

2.Windows播放SDK支持rtsp mjpeg播放;

3. 优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2019-02-24 release note:

1. 发布iOS一对一互动SDK:

2. iOS推送端SDK增加回音消除接口;

3. iOS播放端SDK增加回音消除接口;

4. 增加iOS一对一互动SDK demo(SmartiOSEchoCancellation);

5. 优化iOS播放和推送SDK.

视沃科技(大牛直播SDK)2019-01-29 release note:

1. 为了更好的满足电子教室、无纸化办公等内网直播场景,减少服务器部署和带宽瓶颈:

1.1  Windows轻量级RTSP服务SDK支持组播方案;

1.2 Windows内网RTSP网关SDK支持组播方案;

2. 优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2019-01-24 release note:

1. 大牛直播SDK发布Android“RTSP直播推流SDK”;

2. Android rtsp推送支持H.264、H.265推送;

3. Android rtsp推送支持aac推送;

4. Android rtsp推送支持rtp over udp和rtp over tcp两种传输方式;

5. Android rtsp推送支持鉴权;

6. Android rtsp推送支持401事件上报;

7. Android rtsp推送支持重连和异常网络处理等常用功能;

8. 优化Android播放和推送SDK;

9. Android推屏demo支持横竖屏自动切换.

视沃科技(大牛直播SDK)2019-01-16 release note:

1. 大牛直播SDK发布iOS“RTSP直播推流SDK”;

2. iOS rtsp推送支持H.264、H.265推送;

3. iOS rtsp推送支持aac推送;

4. iOS rtsp推送支持rtp over udp和rtp over tcp两种传输方式;

5. iOS rtsp推送支持鉴权;

6. iOS rtsp推送支持401事件上报;

7. iOS rtsp推送支持重连和异常网络处理等常用功能;

8. 优化iOS播放和推送SDK.

视沃科技(大牛直播SDK)2018-12-26 release note:

1. Windows推送SDK支持MJPEG格式的摄像头采集;

2. Windows推送SDK支持外部音频和内置麦克风混音;

3. 优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2018-12-14 release note:

1. 大牛直播SDK发布Windows“RTSP直播推流SDK”;

2. Windows RTSP直播推流SDK支持RTMP直播推流SDK的除协议栈外的所有功能,支持RTSP H.264/H.265(64位库)推送,支持TCP/UDP模式设置、支持RTSP鉴权模式和401处理、支持网络重连和各种异常网络状态处理;

3. 优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2018-12-07 release note:

1. iOS播放端录像SDK支持录制纯音频或纯视频;

2. iOS播放端SDK支持RTMP/RTSP H.265硬解码,如硬解码不支持,自动跳转至软解码;

3. iOS推送端SDK支持H.265硬编码(可变码率,超低码率占用),RTMP推送和内置RTSP服务均支持H.265;

4. iOS推送端SDK支持音频软、硬编码设置;

5. iOS推送端SDK支持H.264软编码可变码率设置;

6. iOS推送端SDK支持设置H.264软编码profile设置(baseline/main/high profile);

7. iOS推送端SDK支持H.264软编码速度设置;

8. iOS推送端SDK支持外部PCM数据传输SDK;

9. iOS支持内置RTSP网关SDK(SmartiOSRelayDemoV2).

视沃科技(大牛直播SDK)2018-11-16 release note:

1. 安卓推送SDK支持H.265(hevc)硬编码;

2. 安卓推送SDK支持RTMP扩展H.265推送;

3. 安卓内置轻量级RTSP服务SDK支持H.265作为数据源;

4. 安卓推送SDK支持H.264可变码率设置接口;

5. 安卓SDK demo功能页面更新。

视沃科技(大牛直播SDK)2018-11-09 release note:

1. 大牛直播SDK发布“内置RTSP网关SDK”;

2. 内网RTSP网关SDK,系内置轻量级RTSP服务SDK扩展,完成外部RTSP/RTMP数据拉取并注入到轻量级RTSP服务SDK工作,多个内网客户端直接访问内网轻量级RTSP服务获取公网数据,无需部署单独的服务器,支持RTSP/RTMP H.265数据接入;

3. Windows播放SDK增加音视频录制选项(可以单独录制视频或者音频);

4. 优化Windows播放和推送SDK.

视沃科技(大牛直播SDK)2018-11-03 release note:

1. 安卓播放SDK支持H265(hevc)硬解(SetSmartPlayerVideoHevcHWDecoder,H.264/H.265硬解码可单独设置),硬解码使用设置surface模式(Demo对应is_enable_hardware_render_mode变量控制),H.265资源占用更低;

2. 安卓推送SDK和播放SDK整体优化;

视沃科技(大牛直播SDK)2018-11-01 release note:

1. Windows推送SDK支持h265编码(64位库);

2. Windows推送SDK支持rtmp h265推送,针对摄像头采集编码,使用H.265可变码率,带宽大幅节省,效果直逼传统H.265编码摄像头;

3. Windows推送SDK支持H265录像;

4. Windows内置rtsp server支持发布h265视频(64位库);

5. 优化Windows推送和播放sdk。

视沃科技(大牛直播SDK)2018-10-24 release note:

1. iOS播放SDK支持rtmp h.265播放;

2. iOS转发SDK支持h265转发(rtsp/rtmp h265转rtmp h265推送,提供配套RTMP H.265扩展服务器测试);

3. iOS播放端SDK优化;

4. iOS推送端SDK优化。

视沃科技(大牛直播SDK)2018-10-18 release note:

1. 安卓转发SDK支持音频(PCMU/PCMA,Speex等)转AAC后再推流;

2. 安卓播放SDK支持音频(PCMU/PCMA,Speex等)转AAC后再录像接口;

3. 安卓播放SDK优化rtmp h264播放;

4. 安卓播放SDK支持rtmp扩展h265播放;

5. 安卓转发SDK优化rtsp转发;

6. 安卓播放SDK优化rtsp录像;

7. 安卓播放SDK优化rtsp h264播放;

8. 安卓转发SDK支持h265转发(rtsp/rtmp h265转rtmp h265推送);

9. 安卓播放SDK硬解码支持Surface直接绘制模式;

10. 安卓推送SDK优化音频编码, 降低音频码率.

视沃科技(大牛直播SDK)2018-10-16 release note:

1. Windows转发SDK支持h265转发(rtsp/rtmp h265转rtmp h265推送);

2. Windows播放SDK优化rtsp h264播放;

3. Windows播放SDK优化rtsp录像;

4. Windows转发SDK优化rtsp转发;

5. Windows推送SDK常规优化.

视沃科技(大牛直播SDK)2018-09-26 release note:

1. Windows播放SDK支持rtmp扩展h265播放;

2. Windows播放SDK优化rtmp h264播放

3. Windows推送SDK增加外部PCM音频数据对接接口;

4. iOS录像SDK支持音频(PCMU/PCMA,Speex等)转AAC后再录像接口;

5. iOS转发SDK支持音频(PCMU/PCMA,Speex等)转AAC后再推流.

视沃科技(大牛直播SDK)2018-09-13 release note:

1. 安卓播放SDK支持rtsp h265播放;

2.安卓播放SDK支持rtsp h265录像;

3. 安卓播放SDK增加rtsp超时时间设置接口;

4. 安卓播放SDK增加rtsp tcp-udp自动切换设置接口;

5. 安卓播放SDK上报rtsp 401事件;

6. 安卓推送SDK吐编码后的AAC数据;

7. 安卓推送SDK吐编码后的H264数据方便对接第三方平台.

视沃科技(大牛直播SDK)2018-09-12 release note:

1. Windows播放SDK支持音频(PCMU/PCMA,Speex等)转AAC后再录像接口;

2. Windows转发支持音频(PCMU/PCMA,Speex等)转AAC后再推流;

3. Windows推送SDK优化音频推送.

视沃科技(大牛直播SDK)2018-09-06 release note:

1.  iOS播放SDK增加rtsp超时时间设置接口;

2. iOS播放SDK增加rtsp tcp-udp自动切换设置接口;

3. iOS播放SDK上报rtsp 401事件;

4. iOS播放SDK支持rtsp h265播放;

5. iOS录像SDK支持rtsp h265录制;

6. iOS推送、播放SDK支持模拟器编译运行;

7. 更新Windows推送、播放、转发C#demo至官方最新版本;

8. 更新Windows Unity3d播放demo;

9. 更新Windows SDK集成说明文档。

视沃科技(大牛直播SDK)2018-08-29 release note:

1.Windows播放SDK增加rtsp超时时间设置接口;

2. Windows播放SDK增加rtsp tcp-udp自动切换设置接口;

3. Windows播放SDK上报rtsp 401事件;

4. 优化Windows rtsp播放;

5. 优化Windows推送.

视沃科技(大牛直播SDK)2018-08-03 release note:

1.Android支持内置轻量级RTSP服务SDK;

2. iOS支持内置轻量级RTSP服务SDK;

3. 发布最新版本移动端SDK调用说明.

视沃科技(大牛直播SDK)2018-07-30 release note:

1.Windows 录像SDK支持rtsp h265录制,也许是业内为数不多的支持RTSP H.265录制到MP4文件的录像SDK.

视沃科技(大牛直播SDK)2018-07-25 release note:

1.Windows 播放SDK支持rtsp h265播放.

2.优化Windows推送和播放.

视沃科技(大牛直播SDK)2018-07-19 release note:

1.Android/iOS推送SDK增加推送字符串和二进制数据接口.

2.Android/iOS播放SDK增加用户数据回调接口.

3.Android/iOS播放SDK增加SEI数据回调接口.

4.Android/iOS播放SDK增加水平反转、垂直反转接口.

视沃科技(大牛直播SDK)2018-06-25 release note:

1.Windows推送内置rtsp server,无需部署服务器,即可发布rtsp音视频流.

2.安卓推送SDK扩展H264/AAC接口,方便用户直接传sps/pps给sdk.

3.安卓推送SDK支持可变分辨率水印.

4.Windows/安卓/iOS播放SDK优化rtsp播放.

5.Windows推送demo增加rtsp相关操作.

6.同步C#工程至2018年6月1日release版本.

视沃科技(大牛直播SDK)2018-06-01 release note:

1.Windows推送SDK增加预览接口.

2.Windows推送demo增加预览功能,可以先预览后推送.

3.Windows播放SDK深度优化rtsp播放,比好更好!

视沃科技(大牛直播SDK)2018-05-30 release note:

大牛直播SDK官方支持Android/iOS Unity3d RTMP/RTSP直播SDK.

视沃科技(大牛直播SDK)2018-05-10 release note:

1.Windows推送SDK增加发送文本,二进制数据接口.

2.Windows播放SDK增加吐文本,二进制数据接口.

3.Windows播放SDK增加吐H264 Sei数据接口.

4.Windows播放SDK增加水平垂直反转接口.

5.优化Windows播放SDK,降低CPU.

6.优化Windows推送SDK.

视沃科技(大牛直播SDK)2018-04-28 release note:

1.[Android]增加转发demo(rtsp转rtmp推送,rtmp转rtmp推送).

2.[Android]播放SDK优化rtsp播放.

3.[Android]播放SDK增加吐h264,aac/pcmu/pcma/speex接口.

4.[Android]推送SDK增加新的推送H264,AAC/PCMU/PCMA/Speex接口.

5.[Android]优化安卓推送SDK.

视沃科技(大牛直播SDK)2018-04-24 release note:

1.Windows推送SDK增加摄像头水平镜像,垂直反转接口, 增加90度,180度,270度旋转接口.

2.Windows推送SDK支持窗口采集推送,支持动态切换窗口.

3.Windows推送SDK增加设置多个视频码率的接口.

4.Windows推送SDK增加在采集屏幕时停用Win7 Aero的接口.

5.Windows推送SDK优化摄像头采集.

6.优化Windows播放SDK.

视沃科技(大牛直播SDK)2018-04-20 release note

1.Windows推送SDK增加DXGI屏幕采集方式,大大提高win8及以上系统桌面采集速度;

2.Windows推送SDK增加CPU自适应动态调整机制,降低SDK对机器性能的依赖性;

3.Windows推送SDK整体优化;

4.Windows推送SDK和播放SDK静态连接运行时库,方便各个vs版本对接;

5.优化Windows RTSP播放,兼容性和播放体验更优异。

视沃科技(大牛直播SDK)2018-03-29 release note

1.IOS播放SDK增加录像接口;

2.IOS播放SDK增加吐H264/AAC/PCMU/PCMA/SPEEX接口;

3.IOS推送SDK增强推送H264接口;

4.IOS推送SDK增加推送AAC/PCMU/PCMA/SPEEX接口;

5.IOS推送SDK支持推屏;

6.IOS增加播放-转发-录像三合一Demo;

7.IOS增加基于ReplayKit录屏推送demo;

8.IOS推送和播放SDK增加V2接口。

视沃科技(大牛直播SDK)2018-03-05 release note

1.[windows播放端]支持播放过程中,rtsp/rtmp或本地flv文件实时切换;

2.[windows转发端]支持转发过程中,拉取的rtsp/rtmp或本地flv文件实时内容切换;

3.[Android推送|播放端]Android全面升级V2接口(Android studio工程),并优化后台推屏幕/摄像头Demo。

视沃科技(大牛直播SDK)2018-02-28 release note

1.[windows播放端]支持本地flv点播:

  • 支持获取flv文件的duration(时长);
  • 支持显示当前播放位置;
  • 支持开始播放或播放过程中seek(跳转播放位置),也许是行业内seek最快的flv点播播放器。
  1. [windows转发端]支持本地flv文件转发,亦可支持指定位置转发。

视沃科技(大牛直播SDK)2018-02-01新功能抢先体验版:

1.[android]提供V2接口,支持播放端录像。

2.[iOS]支持播放端录像;

3.[iOS]支持iOS端转发功能(拉取rtsp/rtmp流,转发到设定rtmp url);

比“最好”还好:

  1. 大牛直播SDK录像

a) 支持switchUrl接口;

b) 同等参数配置的两个url,可以录制到同一个mp4文件(彻底解决了娃娃机抓取等场景,因为频繁切换url,想申诉时,用户只能录屏,用新的SDK接口,同等摄像头参数配置,无论怎么切换url,自动录制到一个mp4文件)

c) 不同参数配置的两个url,自动识别,自动录制到不同mp4文件。

  1. iOS转发:

a) 大牛直播SDK转发功能,同样支持switchUrl接口,切换不同分辨率的url,一样正常转发;

b) 配合大牛直播播放SDK,转发数据切换,自动适配。

  1. 大牛直播SDK的播放、录像、转发功能完全分离:

a) 可以只播放,随时录像,随时转发;

b) 可以只录像,随时播放,随时转发;

c) 可以只转发,随时播放,随时录像。

视沃科技(大牛直播SDK)2017-12-22 release note

1.iOS播放SDK增加旋转接口;

2.iOS播放推送SDK整体优化.

2017-11-20 release note

  1. 更新android studio demo工程;

视沃科技(大牛直播SDK)2017-11-16 release note

  1. [windows平台] 发布Windows C#多路流媒体转发模块SDK Demo;
  2. android Player增加buffer状态显示和实时带宽占用接口;
  3. iOS推送和播放端整体优化.

2017-11-10 release note:

  1. windows/android/iOS Player SDK增加”超低延迟”模式,适用于类似直播娃娃机等相关场景.
  2. iOS Player增加buffer状态显示和实时带宽占用接口.
  3. iOS Player增加回调YUV数据接口.
  4. android/iOS推送和播放器整体优化.

视沃科技(大牛直播SDK)2017-10-25 release note:

1.[Windows播放端]SDK增加下载速度上报接口.

2.[Windows播放端]SDK增加获取下载速度接口.

3.[Windows播放端]SDK增加buffer开始,停止,进度通知.

4.[Windows播放端]SDK增加吐PCM数据接口.

5.[Windows播放端]SDK增加和服务器链接状态上报接口.

6.[Windows播放端]SDK支持64位.

7.[Windows推送端]SDK支持64位.

8.[文档]更新ppt产品介绍.

视沃科技(大牛直播SDK)2017-09-25 release note:

1.[Windows播放端] sdk增加吐编码过的音视频数据接口.

2.[Windows推送端] sdk增加推送H264数据接口.

3.[Windows推送端] sdk增加推送AAC, Speex WB, PCMA, PCMU数据接口.

4.[Windows转发] 新增多路拉流转发demo.

…….

大牛直播SDK十万个为什么

1. 大牛直播SDK企业使用,需要商业授权吗?

回答:是的,企业用需要商业授权。

2. 大牛直播SDK为什么要收费?

回答:国内外为数不多致力于极致体验的流媒体内核SDK,以更及时、专业的服务,提供比快更快、比靠谱更靠谱的流媒体SDK。

3. 大牛直播SDK 为什么接口那么多,demo这么简单?

回答:多归多,几乎没有累赘的接口,demo只是SDK调用说明,看似简单甚至粗糙,我们预期开发者只看Demo和API,甚至不看我们的集成说明就可以用起来。

4. 大牛直播SDK延迟这么低,是不是在服务器做了什么手脚?

回答:在相同的服务器和网络环境下,用我们的推送+播放,随便和能找到的第三方产品比较。

5. 大牛直播SDK怎么baidu搜索引擎信息那么少?

回答:可以尝试下google/bing等,我们没有做baidu推广。

6. 大牛直播SDK限定客户用第三方服务器或者CDN吗?

回答:标准的rtmp server我们都支持,支持标准rtmp协议封装的CDN厂商,标准的rtsp流,我们也都支持。

7. 大牛直播SDK长时间运行,稳定性怎么样?

回答:行业内最不怕测试的SDK。

8. 大牛直播SDK支持纯音频或纯视频推送吗?

回答:支持。

9. 大牛直播SDK支持什么格式的水印?

回答:android端支持文字水印、实时时间水印、logo图片水印,windows端,提供文字、时间、logo水印,windows水印还可以动态开启关闭。

10. 大牛直播SDK支持屏幕采集吗?

回答:windows支持、Android支持(Android 5.0+)、iOS也支持(基于ReplayKit)。

11. 大牛直播的SDK,可以出个和第三方对比测试报告吗?

回答:欢迎非利益驱动的公司或开发者做对比测试,我们官方不会出。

12. 大牛直播SDK方便做第三方对接吗?

回答:我们提供video编码前RGB/YUV,播放端编码后H.264, audio编码后AAC接口,为了方便对接第三方平台,甚至支持android推送端回调编码后H.264/AAC数据到上层。

13. 大牛直播SDK时软编码还是硬编码?解码呢?

回答:Android/iOS编码软、硬都支持,解码也是,windows软编软解。

14. 大牛直播SDK支持rtsp播放了吗?

回答:不仅支持,而且支持RTSP H.265播放、录像,支持TCP/UDP模式自动切换等,行业内几无对手!

15. 大牛直播SDK支持多实例播放吗?

回答:支持,而且支持同时播放rtsp/rtmp流,不同流,还可分别软硬解码。

16. 大牛直播SDK支持实时静音吗?

回答:推送和播放端都支持。

17. 大牛直播SDK提供CDN租赁服务吗?

回答:我们的SDK可以支持CDN对接,但自己不做运营。

18. 大牛直播SDK可以支持自建服务器吗?

回答:如果内置RTSP服务这块,可直接用我们内置RTSP服务SDK,rtmp服务器的话建议Nginx或SRS。

19. 大牛直播SDK和其他SDK优势在哪里?

回答:说到做到!

20. 大牛直播SDK有出教程的打算吗?

回答:太忙了。

21. 大牛直播SDK为什么不多写些blog?

回答:太忙了。

22. 大牛直播SDK支持内置RTSP服务吗?

回答:支持、windows/android/iOS三个平台都支持,而且支持同时启动多个服务。

23. 现在PC端屏幕采集推流的工具都太慢啦,大牛直播什么时候支持PC端屏幕采集?

回答:已支持,并支持扬声器或麦克风采集,还支持屏幕和摄像头合成等,功能、性能体验没得说。

24. 推流端,支持录像吗?拉流端呢?

回答:必须有,推送端和播放端都有录像功能,而且完全录像和推送、播放完全分离,甚至支持音频(PCMU/PCMA,Speex等)转AAC后再录像。

25. 我还想转发,比如拉取rtsp/rtmp摄像头,转发到其他rtmp服务器?

回答:Windows、Android和iOS已经完美支持,而且支持多路转发,欢迎体验。

26. 我还想一对一互动咋整?

回答:windows/android/iOS三个平台都支持,欢迎体验。

27. 为什么大牛直播SDK,只支持rtmp/rtsp播放?

回答:目前来看,大而全的播放器,基本都是拿开源改的,我们侧重于全自研内核的超低延迟、超强体验的SDK,目前来看,RTMP、RTSP直播SDK。

28. PC端,摄像头和屏幕可以合成吗?

回答:不仅可以,还可以多图层叠加,不仅可以叠加,还可以,摄像头和屏幕,单屏切换,还有水印,功能太多了。

29. 如何看待同行的竞争?

回答:期待更多的良心竞争

30. 默认参数不符合我们的业务预期,我想自己设置码率、帧率、关键帧间隔之类,可以吗?

回答:windows/android/iOS三个平台都支持。

31. 大牛直播SDK的功能是完全分离的吗?

回答:如RTMP推送、RTSP推送、录像、内置RTSP服务,可单独使用,亦可组合使用。

32. 推送端,有背景噪音,可以处理吗?

回答:Windows和android平台支持噪音抑制。

33. 推送端、播放端SDK想截图怎么办?

回答:windows/android/iOS推送或播放,都可以截图。

34. 大牛直播SDK支持不支持在线认证?

回答:大牛直播SDK主要面向传统行业客户,系离线授权SDK,不支持在线验证

35. 为什么别的SDK一直降价甚至免费,你们的还这么坚挺?

回答:我们期望以更专业的技术支撑,提供足够诚意、真正靠谱的商业技术方案..

36. 我们是AR/VR或教育客户,想把sdk融入到unity3d环境下,怎么办?

回答:大牛直播SDK播放端SDK支持windows/android/iOS三个平台unity3d接口..

37. 有没有针对H.265的技术方案?

回答:大牛直播SDK已全面覆盖H.265的RTSP/RTMP推送和内置服务SDK,并支持H.265视频数据的录像。

38. 转发SDK虽好,但是我们公司没有研发实力,怎么办?

回答:大牛直播SDK推出的Windows平台多路RTMP/RTSP转RTMP官方定制版,系原有转发SDK基础上,官方推出的Windows平台定制版。在秉承低延迟、灵活稳定、低资源占用的前提下,客户无需关注开发细节,只需图形化配置转发等各类参数,实现产品快速上线目的。

大牛直播录像SDK

技术特点和优势:

大牛直播录像SDK可作为单独功能模块使用(如同时多路录像存档),亦分布于以下模块,和其他模块组合调用

  1. Windows/Linux/android/iOS推送端SDK Demo和Windows/Linux/android/iOS播放端SDK Demo集成了录像SDK;
  2. 大牛直播录像SDK不同于普通录像接口,更智能,和推送、播放、转发、内置轻量级RTSP服务功能完全分离,支持随时录像;
  3. 此外,大牛直播录像SDK在录像过程中,支持切换不同URL,如两个URL配置一致,则可以录制到同一个MP4文件,如不一致,可自动分割到下一个文件;
  4. 大牛直播录像SDK支持设置单个录像文件大小、录像路径等,并支持纯音频、纯视频、音视频录制模式;
  5. 支持音频(PCMU/PCMA,Speex等)转AAC后再录像;
  6. 支持RTSP/RTMP H.265(hevc)录制到MP4文件
  7.  支持采集端(推送端)录像过程中,暂停录像、恢复录像;
  8. 从开始录像,到录像结束均有event callback上来,网络堵塞、音视频同步均做了非常友好的处理,大牛直播录像SDK是目前市面上为数不多真正好用的商业化录像SDK。

具体参见下图“实时录像SDK”关联部分:

功能支持:

  •  [拉流]支持拉取RTSP流录像;
  •  [拉流]支持拉取RTMP流录像;
  •  [推流端录像]支持RTMP|RTSP推送端同步录像;
  •  [轻量级RTSP服务录像]支持轻量级RTSP服务SDK同步录像;
  •  [推流端录像实时暂停/恢复]支持推送端录像过程中实时暂停录像、恢复录像
  •  [逻辑分离]大牛直播录像SDK不同于普通录像接口,更智能,和推送、播放、转发、内置轻量级RTSP服务SDK功能完全分离,支持随时录像;
  •  [url切换]在录像过程中,支持切换不同URL,如两个URL配置一致,则可以录制到同一个MP4文件,如不一致,可自动分割到下一个文件;
  •  [参数设置]支持设置单个录像文件大小、录像路径等,并支持纯音频、纯视频、音视频录制模式;
  •  [音频转码]支持音频(PCMU/PCMA,Speex等)转AAC后再录像;
  •  [265支持]支持RTSP/RTMP H.265录制到MP4文件;
  •  [推送端265录像]推送端SDK支持H265录像;
  •  [推送端外部编码数据对接录像]支持推送端外部编码后数据(H.264/AAC)对接录像;
  •  [事件回调]从开始录像,到录像结束均有event callback上来,网络堵塞、音视频同步均做了非常友好的处理。

对应Demo:

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

大牛直播跨平台RTSP/RTMP转RTMP转发SDK

一个好的转发模块,首先要低延迟!其次足够稳定灵活、有状态反馈机制、资源占用低,如果可以跨平台,还能以SDK形式提供,会给开发者提供更大的便利!

大牛直播跨平台RTSP/RTMP转RTMP转发SDK目前已全面覆盖Windows、Android和iOS平台,行业内以高稳定、低延迟、超低资源占用和强大的功能拓展能力深受开发者欢迎。

整体设计如下:

1. 拉流:通过RTSP直播播放SDK的数据回调接口,拿到音视频数据;

2. 转推:通过RTMP直播推送SDK的编码后数据输入接口,把回调上来的数据,传给RTMP直播推送模块,实现RTSP数据流到RTMP服务器的转发;

3. 录像:如果需要录像,借助RTSP直播播放SDK,拉到音视频数据后,直接存储MP4文件即可;

4. 快照:如果需要实时快照,拉流后,解码调用播放端快照接口,生成快照,因为快照涉及到video数据解码,如无必要,可不必开启,不然会额外消耗性能。

5. 拉流预览:如需预览拉流数据,只要调用播放端的播放接口,即可实现拉流数据预览;

6. 数据转AAC后转发:考虑到好多监控设备出来的音频可能是PCMA/PCMU的,如需要更通用的音频格式,可以转AAC后,在通过RTMP推送;

7. 转推RTMP实时静音:只需要在传audio数据的地方,加个判断即可;

8. 拉流速度反馈:通过RTSP播放端的实时码率反馈event,拿到实时带宽占用即可;

9. 整体网络状态反馈:考虑到有些摄像头可能会临时或异常关闭,RTMP服务器亦是,可以通过推拉流的event回调状态,查看那整体网络情况,如此界定:是拉不到流,还是推不到RTMP服务器。

多路RTSP/RTMP转RTMP推送SDK设计架构图:

多路RTMP/RTSP转RTMP推送SDK功能支持:

  1. 支持拉取rtmp流;
  2. 支持拉取rtsp流;
  3. Windows支持本地flv文件转发(支持制定文件位置转发,或转发过程中seek);
  4. 支持本地预览;
  5. 支持转发过程中,实时静音;
  6. 支持转发过程中,切换rtmp/rtsp url,此外,windows平台还支持切换本地flv文件;
  7. 支持录像模块扩展,可边转发边录制,每个文件录制开始结束,均有状态回馈;
  8. 支持内网RTSP网关模块扩展,拉取的流数据,可以流入到内网RTSP网关模块,对外微型RTSP媒体流服务(RTSP url),便于内网访问;
  9. 音频:AAC,并支持拉流后的音频(PCMU/PCMA,Speex等)转AAC后再转发;
  10. 视频:H.264、H.265,支持h265转发(rtsp/rtmp h265转rtmp h265推送)

对应Demo:

  •  Windows测试程序:SmartStreamRelayDemo.exe;
  •  Windows C++工程:WIN-RelaySDK-CPP-Demo;
  •  Windows C#工程:WIN-RelaySDK-CSharp-Demo;
  •  Android工程:SmartRelayDemoV2;
  •  iOS工程:SmartiOSRelayDemoV2。

大牛直播RTMP/RTSP播放器SDK

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

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

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

功能支持:

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

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

对应Demo:

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

RTMP直播推送SDK

整体架构

大牛直播SDK跨平台RTMP直播推送模块,始于2015年,支持Windows、Linux(x64_64架构|aarch64)、Android、iOS平台,支持采集推送摄像头、屏幕、麦克风、扬声器、编码前、编码后数据对接,功能强大,性能优异,配合大牛直播SDK的SmartPlayer播放器,轻松实现毫秒级的延迟体验,满足大多数行业的使用场景。

平台覆盖和架构支持

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

技术特点和优势:

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

功能支持:

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及以上版本。

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

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。

技术对接文档(Android为例):

相关博客: