Giter VIP home page Giter VIP logo

lijinbang / smarterstreaming Goto Github PK

View Code? Open in Web Editor NEW

This project forked from daniulive/smarterstreaming

0.0 2.0 0.0 3.16 GB

国内外为数不多致力于极致体验的超强全自研跨平台(windows/android/iOS)流媒体内核,通过模块化自由组合,支持实时RTMP推流、RTMP播放器、RTSP播放器、录像、多路流媒体转发、音视频导播、动态视频合成、音频混音、直播互动、内置轻量级RTSP服务等,比快更快,业界真正靠谱的超低延迟直播SDK(1秒内,低延迟模式下200~400ms)。

Home Page: http://www.daniulive.com

Java 69.69% Objective-C 28.17% C 2.15%

smarterstreaming's Introduction

视沃科技-大牛直播SDK daniulive.com

国内外为数不多致力于极致体验的超强全自研跨平台(windows/android/iOS)流媒体内核,通过模块化自由组合,支持实时RTMP推流、RTMP/RTSP直播播放、录像、多路流媒体转发、音视频导播、动态视频合成、音频混音、直播互动、内置轻量级RTSP服务等,比快更快,业界真正靠谱的超低延迟直播SDK(1秒内,低延迟模式下200~400ms)。

适用于在线教育、无纸化推屏/会议、智慧教室、智能可视门禁对讲、超低延迟娃娃机抓取播放方案、媒体移动直播、应急指挥调度(针对保险、城管、交警、消防、公安等职能管理部门的单兵应急执法系统)、可视化购物、远程专家诊断、可视化巡检、(如电信/电力线路/铁路沿线/水利设施/油田/消防设施巡检)、移动视频安防监控,企业内训、金融在线直播室、微信直播、监控对接、活动现场直播、游戏直播、秀场直播等场景。

大牛直播SDK介绍PPT

大牛直播SDK Demo界面展示

For English introduction, please click here;

大牛直播SDK可供个人学习之用,企业及商用需要经过授权(授权请联系 QQ:89030985517631076 手机:130-7210-2209135-6452-9354);

latest release note

除此之外,大牛直播SDK播放端,支持APICloudReact Native二次封装,并且全平台支持Unity3D平台,也可能是Unity3D平台下首款真正高稳定、超低延迟的rtmp/rtsp直播播放器。

android/iOS播放器SDK(V2)APICloud调用说明

windows/android/iOS播放器SDK(V2)Unity3D调用说明

大牛直播SDK基于unity3d平台的rtmp/rtsp直播播放端SDK视频演示

Unity3D-Windows播放端APP下载

Unity3D-Android播放端APK下载

模块概览

直播SDK模块

Windows端

  • 直播推流SDK rtmp推送SDK(支持同时推多路url);

  • 直播播放器SDK rtmp/rtsp超低延迟直播播放器SDK;

  • Unity3D直播播放器SDK 业内首家Windows支持Unity3D的超低延迟RTMP/RTSP直播播放器SDK,支持快照、录像、实时静音、view旋转、快速切换URL等特性;

  • 多路流媒体转发SDK 支持同时多路拉取rtmp/rtsp流/本地flv文件,并分别转发到服务器,支持转发过程中,拉取的rtsp/rtmp或本地flv文件实时内容切换;

  • 轻量级RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持;

  • 导播SDK 数据源:1. rtmp/rtsp音视频流;2. 本地屏幕/摄像头/音频数据;3.本地flv文件;多路流合成一路实时导播推送;

  • 录像SDK 支持拉取rtmp/rtsp流实时录像模块/实时快照功能,支持纯音频、纯视频、音视频录制模式,支持音频(PCMU/PCMA,Speex等)转AAC后再录像,业内为数不多的支持RTSP H.265录制到MP4文件的录像SDK;

  • [互动SDK] Windows一对一互动(可windows与windows/android互动);

  • 连麦SDK 以标准协议为基础,完美支持Windows连麦;

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

  • SEI扩展数据发送/接收SDK 支持推送端通过H.264 SEI信息扩展,实时传输文本/二进制数据信息(如实时字幕/时间戳/题目分发/公告广播等),播放端做相应解析和回显;

  • 视频处理SDK 屏幕/多摄像头/水印/遮挡区域多层自由合成模块;

  • 音频处理SDK 多路混音、回音消除、噪音抑制、自动增益、VAD检测模块;

Android端

  • 直播推流端SDK Android屏幕、摄像头RTMP推流SDK;

  • 直播播放器SDK rtmp/rtsp超低延迟直播播放器SDK;

  • Unity3D直播播放器SDK 业内首家Android支持Unity3D的超低延迟RTMP/RTSP直播播放器SDK,支持快照、录像、实时静音、view旋转、快速切换URL等特性;

  • 录像SDK 支持拉取rtmp/rtsp流实时录像模块/实时快照功能,支持纯音频、纯视频、音视频录制模式;

  • 转发SDK 支持实时拉取的rtmp/rtsp流转发到指定rtmp url;

  • 轻量级RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持;

  • [互动SDK] Android一对一互动(可android与windows/android/iOS互动);

  • SEI扩展数据发送/接收SDK 支持推送端通过H.264 SEI信息扩展,实时传输文本/二进制数据信息(如实时字幕/时间戳/题目分发/公告广播等),播放端做相应解析和回显;

  • 视频处理SDKAndroid文字水印、png图片水印;

  • 音频处理SDKAndroid回音消除、噪音抑制、自动增益、VAD检测模块;

iOS端

  • 直播推流端SDK iOS屏幕(基于ReplayKit)、摄像头RTMP推流SDK;

  • 直播播放器SDK rtmp/rtsp超低延迟直播播放器SDK;

  • Unity3D直播播放器SDK 业内首家iOS支持Unity3D的超低延迟RTMP/RTSP直播播放器SDK,支持快照、录像、实时静音、view旋转、快速切换URL等特性;

  • 录像SDK 支持拉取rtmp/rtsp流实时录像模块/实时快照功能,支持纯音频、纯视频、音视频录制模式;

  • 转发SDK 支持实时拉取的rtmp/rtsp流转发到指定rtmp url;

  • 轻量级RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后,功能继续支持;

  • SEI扩展数据发送/接收SDK 支持推送端通过H.264 SEI信息扩展,实时传输文本/二进制数据信息(如实时字幕/时间戳/题目分发/公告广播等),播放端做相应解析和回显;

本地下载

很多开发者反应,由于项目庞大,github下载整个工程很慢,我们已经把相关demo文件和使用说明,全部上传到QQ群共享:

或者直接从私有服务器下载(Windows提供C#/C++ demo, android提供android studio demo,iOS提供xcode demo):

大牛直播产品demo本地下载

NOTE: Windows平台,以C++ SDK Demo为最新,C# Demo更新速度稍滞于C++ Demo。

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

大牛直播SDK Demo使用说明

上层源码目录

  1. android推流 SmartPublisherV2 https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/AndroidStudio/SmartPublisherV2

  2. android推流 SmartServicePublisherV2(后台service推送屏幕) https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/AndroidStudio/SmartServicePublisherV2

  3. android推流 SmartServiceCameraPublisherV2(后台service推送摄像头) https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/AndroidStudio/SmartServiceCameraPublisherV2

  4. android一对一回音消除 SmartEchoCancellationV2 https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/AndroidStudio/SmartEchoCancellationV2

  5. android播放器 SmartPlayerV2: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/AndroidStudio/SmartPlayerV2

  6. android转发-录像-播放三合一 SmartRelayDemoV2: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/AndroidStudio/SmartRelayDemoV2

  7. iOS推流 SmartiOSPublisherV2: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/IOS/SmartiOSPublisherV2

  8. iOS后台推屏 SmartiOSScreenPublisherV2: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/IOS/SmartiOSScreenPublisherV2

  9. iOS播放器 SmartiOSPlayerV2: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/IOS/SmartiOSPlayerV2

  10. iOS转发-录像-播放三合一 SmartiOSRelayDemoV2: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/IOS/SmartiOSRelayDemoV2

功能支持


1. Windows视频采集处理SDK

  1. 支持视频源
  • 支持Windows屏幕采集、屏幕裁剪特定窗口采集、摄像头采集、扩展外部H.264数据对接;
  1. 摄像头和屏幕合成
  • [摄像头和屏幕实时切换]支持推送过程中,摄像头和屏幕互相切换,单画面显示摄像头或屏幕;
  • [摄像头叠加到屏幕] 支持摄像头按照设置坐标,叠加到屏幕指定位置,并支持实时关闭叠加层;
  • [屏幕叠加到摄像头] 支持屏幕按照设定坐标,叠加到摄像头指定位置,并支持实时关闭叠加层;
  1. 水印和透明度遮挡
  • [实时水印]支持动态水印设置,完美支持文字水印、实时时间水印和图片水印
  • [透明度]可以设置透明度处理(设置遮盖);
  1. 对应Demo:
  • 测试程序:SmartPublisherDemo.exe;
  • C++工程:WIN-PublisherSDK-CPP-Demo;
  • C#工程:WIN-PublisherSDK-CSharp-Demo。

2. 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。

3. Windows/Android/iOS RTMP直播推流SDK

  • Windows RTMP直播推流SDK涵盖“Windows视频采集处理SDK”功能
  • Windows RTMP直播推流SDK涵盖“Windows音频采集处理SDK”功能
  • Windows RTMP直播推流SDK支持摄像头/屏幕/合成数据实时预览功能;
  • Windows/Android/iOS平台支持多分辨率、帧率、码率、gop间隔、编码profile和编码速度设置;
  • Android/iOS平台支持横竖屏推送;
  • Windows/Android/iOS平台音视频推送、纯音频推送、纯视频推送;
  • Android/iOS平台支持rtmp推送 live|record模式设置;
  • [录像SDK同步使用]Windows/Android/iOS平台真正靠谱的录像、推流分离模式,支持推流过程中随时开启录像,录像过程中,随时推流;
  • Android/iOS平台支持本地录像文件回放;
  • Android/iOS平台支持采集过程中,前后摄像头切换;
  • Windows/Android/iOS平台提供编码前(YUV/RGB)、编码后音视频(H.264/AAC/PCMA/PCMU)接口对接,方便AR/VR设备调用;
  • Windows平台外部PCM音频数据对接接口;
  • Android平台支持输出编码后的H264数据到上层,方便对接第三方平台(如GB28181)对接;
  • iOS平台自带基础美颜功能;
  • Android平台完美支持文字水印、实时时间水印和图片水印
  • Windows/Android/iOS平台支持推送端实时静音/取消静音
  • Android/iOS平台支持软、硬编码自适应;
  • Android平台支持后台service推送摄像头或屏幕(推送屏幕需要5.0+版本);
  • iOS平台支持后台推送屏幕(基于ReplayKit,需要iOS 10.0+版本);
  • android支持实时传递远端PCM数据,方便回音消除处理;
  • Windows/Android/iOS平台支持推送端镜像设置;
  • Windows平台支持摄像头水**转、垂直反转、0°/90°/180°/270°旋转;
  • Windows/Android平台支持噪音抑制功能;
  • Windows/Android平台支持自动增益控制;
  • Windows/Android平台支持Speex推送、Speex编码质量设置;
  • Windows/Android/iOS平台支持推送或录像过程中,随时快照;
  • Windows/Android/iOS平台支持裁剪模式设置;
  • Windows/Android/iOS平台支持多实例推送
  • Windows/Android/iOS平台直播推流SDK支持支持自建服务器(如Nginx、SRS)或CDN。

对应Demo:

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

4. Windows/Android/iOS RTMP、RTSP直播播放器SDK

  • Windows/Android/iOS平台高稳定、超低延迟的跨平台RTMP直播播放器;
  • Windows/Android/iOS平台高稳定、超低延迟的跨平台RTSP直播播放器;
  • Windows/Android/iOS平台完美支持多实例播放(如同时播放多路rtmp/rtsp流);
  • Windows平台支持rtmp扩展H.265播放;
  • Windows/Android/iOS平台支持RTSP TCP/UDP模式设置;
  • Windows/Android/iOS平台支持RTSP TCP、UDP模式自动切换
  • Windows/Android/iOS平台支持rtsp超时时间设置;
  • Windows/Android/iOS平台支持上报rtsp 401事件;
  • Windows/Android/iOS平台支持buffer time设置;
  • Windows/Android/iOS平台支持首屏秒开模式;
  • Windows平台双击画面进入全屏模式;
  • Windows/Android/iOS平台视频支持H.264(RTMP/RTSP)/H.265(RTSP),音频支持AAC/PCMA/PCMU和SPEEX(RTMP)播放;
  • Windows/Android/iOS平台支持RTSP H.265播放,并支持RTSP H.265录制到MP4文件
  • Windows/Android/iOS平台均支持回调音视频数据(视频: H.264/YUV 音频:AAC/PCMA/PCMU/SPEEX)到上层;
  • Windows/Android/iOS平台支持自定义播放布局;
  • Android平台音视频多种render机制,视频支持普通Surface和GLSurface,音频支持audiotrack和opensl es;
  • Windows/Android/iOS平台支持播放过程中,'实时静音/取消静音';
  • Windows/Android/iOS平台支持播放端视频view实时旋转(0° 90° 180° 270°)、水**转、垂直反转;
  • Windows/Android/iOS平台支持播放过程中快速切换URL;
  • [录像SDK同步使用]Windows/Android/iOS平台播放、录像完全隔离,同等配置的流,切换url依旧可以录制到同一个文件;
  • Windows/Android/iOS平台播放过程中,音视频信息改变后自适应;
  • Android/iOS平台支持软、硬解码,超低延迟、低资源占用播放rtsp/rtmp 1080p+;
  • Windows/Android/iOS平台支持播放/录像过程中,随时快照
  • [Windows点播播放器]支持本地flv文件播放(支持获取flv文件的duration(时长);支持显示当前播放位置;支持开始播放或播放过程中seek(跳转播放位置),也许是行业内seek最快的flv点播播放器);
  • Windows/Android/iOS平台支持类似于线上娃娃机等直播方案的超低延迟模式设置(公网200~400ms)。

对应Demo:

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

5. Windows/Android/iOS内置轻量级RTSP服务SDK

  • 支持Windows/Android/iOS平台RTMP直播SDK除推送RTMP外的所有常规功能;
  • 音频编码:AAC;
  • 视频编码:H.264;
  • 内置服务协议:RTSP;
  • 支持RTSP端口设置;
  • 支持RTSP鉴权用户名、密码设置;
  • 支持获取当前RTSP服务会话连接数;
  • 支持同时创建多个内置RTSP服务。

对应Demo:

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

6. Windows/Android/iOS转发SDK

  • [拉流]支持拉取RTSP流;
  • [拉流]支持拉取RTMP流;
  • [预览]支持拉取到的RTMP/RTSP随时本地预览、关闭预览;
  • [拉流音频调节]支持拉取的RTMP/RTSP流静音;
  • [拉流音频转码]支持拉取的RTMP/RTSP的PCMA/PCMU/SPEEX音频格式转AAC后再转发到RTMP服务器;
  • [url切换]支持转发过程中,拉取的RTMP/RTSP或本地FLV文件实时内容切换
  • [转发]超低延迟转发拉取的rtsp/rtmp流到rtmp server。

对应Demo:

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

7. Windows导播SDK

  • 支持拉取RTSP流;
  • 支持拉取RTMP流;
  • 支持本地采集到屏幕或摄像头数据,和远程拉取得RTSP或RTMP流做合成、混音输出;
  • 支持导播过程中,随时切断某一路音视频或音频;
  • 支持音频混音(同时选择“采集麦克风”+“采集扬声器”)。

对应Demo:

  • 测试程序:SmartMixStreamDemo.exe;
  • C++工程:WIN-MixStreamSDK-CPP-Demo;

8. Windows/Android/iOS录像SDK

  • 支持拉取RTSP流录像;
  • 支持拉取RTMP流录像;
  • 支持推送端同步录像;
  • 支持设置单个录像文件大小、录像路径等;
  • 支持音频(PCMU/PCMA,Speex等)转AAC后再录像;
  • 支持RTSP H.265录制到MP4文件;
  • 从开始录像,到录像结束均有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。

编译注意事项

  • 编译时找不到 libSmartPlayerSDK.a 时,请先到 SmartiOSPlayer/SmartiOSPlayer/libs 目录, 解压libSmartPlayerSDK.zip.
  • 编译时找不到 libSmartPublisherSDK.a 时,请先到 SmartiOSPublisher/SmartiOSPublisher/libs 目录, 解压libSmartPublisherSDK.zip.
  • 未授权版本,限制app-name,如果需要集成到自己工程里面调试,可以用以下名字:
android推送端:SmartPublisherSDKDemo
android后台Service推送:SmartServicePublisherSDKDemo
android一对一互动:SmartEchoCancellation
android播放器:SmartPlayerSDKDemo
iOS推送端:SmartiOSPublisher
iOS转发端:SmartiOSRelayDemo
iOS播放器:SmartiOSPlayer
  • 集成到自己工程,如何改名字(以推送端为例):
android:strings.xml:
<string name="app_name">SmartPublisherSDKDemo</string>
iOS:Info.plist-->右键Open As-->Source Code,添加或者编辑
<key>CFBundleName</key>	
<string>SmartiOSPublisher</string>

联系我们

点击查看联系方式

QQ交流群:

大牛直播SDK技术交流群1:499687479

大牛直播SDK技术交流群2:294891451

smarterstreaming's People

Contributors

daniulive avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.