大牛直播 www.daniulive.com
国内外为数不多不依赖开源框架、不依赖CDN实现秒开、公网毫秒级延迟、跨平台(windows/android/iOS)rtmp推流、rtmp/rtsp直播播放利器"SmarterStreaming",系daniulive(大牛直播)出品的跨平台视频采集、直播SDK(支持rtmp推流/rtmp播放/rtsp播放,如windows推流(windows pusher)/android推流(android pusher)/iOS推流(iOS pusher)/windows播放器(windows player)/android播放器(android player)/iOS播放器(iOS player)),也许是最靠谱的视频直播推流、播放SDK之一,助您轻松实现类似于花椒、映客、斗鱼或传统行业低延迟、高稳定直播推送与播放。
适用于秀场直播、媒体移动直播、应急指挥调度(针对保险、城管、交警、消防、公安等职能管理部门的单兵应急执法系统)、可视化购物、远程专家诊断、可视化巡检、(如电信/电力线路/铁路沿线/水利设施/油田/消防设施巡检)、移动视频安防监控,企业内训、金融在线直播室、在线教育、微信直播、监控对接、活动现场直播、游戏直播等场景。
SmarterStreaming, which is an excellent cross-platform Live Streaming publisher/playback SDK, based on RTMP/RTSP protocol, developed by daniulive.
For English introduction, please click here;
For commercial support, please contact [email protected].
SmarterStreaming SDK可供个人学习之用,企业及商用需要经过授权;
===========================
模块概览
- Windows屏幕、摄像头合成或单个推流/录像;
- Windows rtmp/rtsp播放器;
- Android屏幕、摄像头推流/录像;
- Android rtmp/rtsp播放器;
- iOS摄像头推流/录像;
- iOS rtmp/rtsp播放器;
- SmarterStreamServer.
本地下载
很多开发者反应,由于项目庞大,github下载整个工程很慢,我们已经把相关demo文件和使用说明,全部上传到QQ群共享:
或者直接从私有服务器下载:
- SDK调用说明下载
- SmarterStreaming产品手册下载
- Windows推送、播放Demo本地下载
- android推送、播放SDK本地下载(eclipse工程)
- android推送、播放SDK本地下载(android studio工程)
- iOS推送、播放SDK本地下载
- Android美颜demo下载
- Android后台推送摄像头/屏幕数据demo下载
===========================
windows屏幕截取/摄像头推送录像
- [屏幕/摄像头]支持帧率、关键帧间隔、码率等设置;
- [屏幕]支持屏幕裁剪,根据帧率和推送分辨率,自动推荐码流;
- [摄像头]支持摄像头选择、分辨率设置、帧率设置;
- [摄像头和屏幕实时切换]支持推送过程中,摄像头和屏幕互相切换,单画面显示摄像头或屏幕;
- [摄像头叠加到屏幕] 支持摄像头按照设置坐标,叠加到屏幕指定位置,并支持实时关闭叠加层;
- [屏幕叠加到摄像头] 支持屏幕按照设定坐标,叠加到摄像头指定位置,并支持实时关闭叠加层;
- [透明度]可以设置透明度处理;
- [音频]采集音频设备,
- [音频]采集扬声器;
- [音频]推送过程中实时静音/取消静音;
- [音视频]支持纯音频、纯视频、音视频推送;
- [对接服务器]完美支持自建服务器或CDN;
- [录像]支持“边推送边录像”、“先推送、后录像”、“先录像,后推送;
- [录像]支持设置录像文件前缀、录像文件大小,录像文件增加日期、时间。
windows播放器
- 基于C C++开发的低延迟低资源占用的windows cs架构的播放器(exe),支持RTSP/RTMP协议封装;
- 基于flash控件开发的web播放器。
android推流/iOS推流
- 多分辨率选择;
- 支持横竖屏推送;
-
音视频
推送、纯音频
推送、纯视频
推送; - 支持
边采集、边录像
; - 支持rtmp推送 live|record模式设置;
- 网络中断,本地录像继续,保证数据的完整性;
- 支持本地录像文件回放、处理;
- 采集过程中,前后摄像头切换;
- 提供编码前(YUV/RGB)、编码后音视频(H.264/AAC)接口对接,方便AR/VR设备调用。
- android/iOS自带美颜功能;
- android完美支持
文字水印、实时时间水印和图片水印
; - 支持
推送端实时静音/取消静音
; - 支持软硬编码自适应;
- android支持后台service推送摄像头或屏幕(推送屏幕需要5.0+版本);
- 完美支持各个厂家CDN。
windows播放器/android播放器/iOS播放器
- 超低延迟的rtmp播放器;
- 超低延迟的rtsp播放器;
- 完美支持多实例播放(同时播放多路stream,可同时支持rtmp、rtsp stream播放);
- 支持RTSP TCP/UDP模式切换;
- 支持播放端,buffer设置;
- 支持秒开模式;
- audio支持aac/speex/g.711;
- 支持自定义播放布局;
- 音视频多种render机制;
- 支持播放过程中,'实时静音/取消静音';
- android/iOS支持软硬解码,业内真正靠谱的超低延迟、低资源占用播放rtsp/rtmp 1080p+。
微信播放
- 支持android设备rtmp/hls播放;
- 支持iOS设备hls播放;
- 支持公众号集成。
公网环境下,毫秒级延迟,支持云服务部署、各类厂商的CDN产品对接;
支持边推送边录像(如执法记录或移动单兵场景),网络中断仍可继续录制,结束后可本地回放,并可对接第三方云服务,把录像数据保存到云端服务器;
支持跨平台纯音频、纯视频、音视频推送、纯音频、纯视频、音视频播放、纯音频、纯视频、音视频实时存储。
[基于RTMP、RTSP安防摄像机、编码器、智能眼镜平台对接]
无论rtsp、rtmp,我们提供高稳定性、超低延迟的跨平台(Windows/android/iOS)综合视频监控系统对接。
[多对一实时通讯]
适用于应急指挥、公安巡检等,以移动单兵设备为采集载体,实时上传音视频数据到指挥中心,并实现指挥中心对现场的实时指导。
您可以用网页进行播放测试:http://218.25.89.108:8080/files/SmartPlayer/SmartPlayer.html
[SmarterStreamServer]
- 高并发,分布式部署,支持rtmp摄像机和采集设备完美对接,提供代建服务器或整套软硬件服务器方案;
- 高性能的流媒体服务器,标准rtmp输入,多种方式流输出(rtmp/hls),并同步保存采集端数据;
- 支持鉴权认证、各种信息展示;
- 点播服务器:满足录像文件点播需求。
1. Windows播放器:
2. Android播放器:
3. iOS播放器:
4. 海思板子(4核低端版,同时播放4路720P rtmp流):
1. windows推送:
2. android边推送边录像(支持纯音频推送和播放):
3. iOS边推送边录像(支持纯音频推送和播放):
4. iOS录像管理:
1. 推流:
1.1 Windows推送端:
Beta公测版:超低延迟、可直接推url到rtmp server的windows桌面/摄像头采集的SDK(为防止未经许可的第三方利用本软件从事恶意盗录等非法活动,未经授权版本,每次只允许实时推送1小时(1小时后,如需继续试用,请关闭应用程序再重新打开),请在法律许可范围内使用本软件),也可能是目前市面上最好用的PC端屏幕推送软件。点击下载
- 设置帧率和关键帧间隔(关键帧间隔可以是帧率的倍数);
- 如需屏幕裁剪,输入屏幕裁剪坐标和裁剪宽高信息;
- [屏幕裁剪] 推送之前,点击“选取屏幕区域”,可弹出选择框,双击即可完成区域选择;
- [屏幕裁剪] 推送过程中,可以点击“移动屏幕区域”,实时设置推送的屏幕区域;
- [码流获取] 点击“获取默认值”,拿到系统推荐的平均码率和最高码率;
- [摄像头] 如需推送摄像头数据,从摄像头列表选择设备,然后设置分辨率和推送帧率;
- [摄像头和屏幕实时切换]支持推送过程中,摄像头和屏幕互相切换,单画面显示摄像头或屏幕;
- [摄像头叠加到屏幕] 支持摄像头按照设置坐标,叠加到屏幕指定位置,并支持实时关闭叠加层;
- [屏幕叠加到摄像头] 支持屏幕按照设定坐标,叠加到摄像头指定位置,并支持实时关闭叠加层;
- [透明度]可以设置透明度处理;
- [音频选择] 采集麦克风:实时获取麦克风数据;
- [音频选择] 采集扬声器:实时获取扬声器数据,比如,无杂音的采集系统播放的音乐;
- [音频控制] 推送过程中,可以选择“静音”或取消静音;
- [音频控制] 如果不选择桌面或摄像头,可支持纯音频推送;
- [视频控制] 如果不选择音频,可支持纯视频推送;
- 设置RTMP推送url;
- 点击“推送”,如推到daniulive的服务器,系统会自动分配播放url,请按生成的播放地址,用大牛播放器播放;
- 点击“停止”,关闭推送;
- [录像] 设置录像目录;
- [录像] 设置录像文件前缀、录像文件大小,录像文件增加日期、时间;
- [录像] 点击“录像”或“停止录像”;
1.2.1 Android推流:
- 安装SmartPublisher;
- [推流类型] 可选择推“纯音频”、“纯视频”、“音视频”;
- [水印类型] 可选择“图片水印”、“文字水印”、“全部水印”、“不加水印”;
- [分辨率] 可选择高、中、低、超高分辨率
- [录像] 可选择“本地录像”或不录像,如选择“本地录像”,支持边推流边录像;
- [录像管理] 可进入录像页面,比如,进行录像回放、文件管理;
- [静音] 支持推送过程中,主播端实时静音或取消静音;
- [硬编码/软编码] 默认软编码,如需硬编码,系统自动检测是否支持,如支持,优先采用硬编码;
- [输入推流URL] 可自定义推送url,如不输入,默认自动生成url,推送到daniulive服务器;
- [开始推流] 点击后,推送数据到流媒体服务器,如需停止,点击“停止推流”;
- [前后摄像头切换] 推流过程中,可点击前后摄像头切换图标,前后采集源。
1.2.2 Android后台推送摄像头/屏幕数据]
- 安装SmartServicePublisherSDKDemo;
- [推送类型] 可选“推送屏幕”或“推送摄像头”;
- [推送屏幕] 分辨率分“屏幕标准分辨率”和“屏幕低分辨率”;
- [推送摄像头] 分“摄像头高分辨率”、“摄像头中分辨率”、“摄像头低分辨率”、“摄像头超高分辨率”;
- [录像功能] 默认“本地不录像”,如需录像,请选择下来菜单“本地录像”;
- [录像管理] 针对录像数据的回放、删除等操作;
- [前后置摄像头选择] 默认后置摄像头,如需采集前置摄像头,请点击按钮,切换前后摄像头;
- [输入推流URL] 默认我们会自动随机生成推送到我们server的url,如需推送到自己server,请自行设置,并点击“确认”生效;
- [软硬编码切换] 默认软编码,如需硬编码,请点击此按钮选择;
- [推屏权限检测] 由于android屏幕采集需要android 5.0以上版本,如推送屏幕数据,需要先检测推屏权限,如检测通过,才可以推流;
- [开始推流] 推送数据到server端, 点击“开始推流”后,可切换到后台,采集屏幕或者摄像头数据,如需停止推送,点级"停止推送"按钮就可,NOTE: 开始推送后,后台会进入一直推流状态,测试结束后,记得点击“停止推送”。
1.3 iOS推流:
- 安装SmartPublisher;
- [分辨率] 可选择高、中、低、超高分辨率;
- [推流类型] 可选择推“纯音频”、“音视频”、“纯视频”;
- [美颜] iOS推送端支持推送过程中,美颜设置,也可选择不美颜;
- [录像] 可选择“边推边录”或不录像,如选择“边推边录”,支持边推流边录像;
- [进入推流页面] 1~5步骤完成后,可进入推流页面;
- [进入回放页面] 可进入录像页面,比如,进行录像回放、文件管理;
- [静音] 支持推送过程中,主播端实时静音或取消静音;
- [美颜] 支持几种常规美颜;
- [前后摄像头切换] 推流过程中,可点击前后摄像头切换图标,前后采集源;
- [推流] 点击后,推送数据到流媒体服务器,如需停止,点击“停止”;
- [返回] 未推流状态,返回上层设置页面。
1.4 iOS端边推流边录像:
- [录像相关]设置推流过程中,是否录像(不录像 边推边录);
- [录像相关]如有边推送边录像,直播结束后,点击“进入回放页面”,可显示录像文件名称,点击回放,可进行本地录像回放;
- [录像相关]点击“删除全部文件”,可删除本地录制的所有文件;
- [录像相关]回放过程中,点击“暂停”,进入播放暂停状态,点击“恢复”继续播放。
2 播放:
2.1 Windows播放器:
- 打开SmartPlayer.exe;
- 根据提示,在RTMP/RTSP播放地址处,输入需要播放的url,如“rtmp://live.hkstv.hk.lxdns.com/live/hks”;
- 在播放之前,可以设置缓冲时间(单位:毫秒),支持0~10000ms设置;
- 如果播放rtsp url,可以设置使用TCP/UDP播放;
- 播放过程中,可选择实时静音/取消静音。
2.2 android播放器
- 安装SmartPlayer.apk;
- [大牛直播url] 进入系统后,在输入框输入“urlID”,stream后的部分(如“rtmp://218.25.89.108:1935/hls/stream123456”,那就输入“123456”),点击“进入播放页面”即可,停止的话,点击“返回”按钮,返回主页面,可重新选择其他url播放;
- [纯音频url] 如需播放纯音频,编译工程,SmartPlayerSetSurface第二个参数设置为null;
- [输入完整url] 如需测试自己服务器或者公网rtsp/rtmp的url,点击“输入完整url”,比如“rtmp://live.hkstv.hk.lxdns.com/live/hks”,在弹出框输入想播放的url;
- [开始播放/停止播放] 输入播放url后,可以点击开始播放,如需停止,点击停止播放按钮即可;
- [rtsp播放] rtsp模式下,支持TCP/UDP模式切换;
- [静音功能] 无论播放rtmp还是rtsp,播放过程中,可以实时静音/取消静音;
- [软解码/硬解码]播放页面,默认会显示“当前软解码”,如需用硬解码,请点击此按钮,页面会显示“当前硬解码”,点击开始播放,会以页面当前显示的软解或硬解运行。
2.3 iOS播放器
- 安装SmartPlayer.ipa;
- [大牛直播url] 进入系统后,在输入框输入“urlID”,stream后的部分(如“rtmp://218.25.89.108:1935/hls/stream123456”,那就输入“123456”),点击“进入播放页面”即可,停止的话,点击“返回”按钮,返回主页面,可重新选择其他url播放;
- [纯音频url] 如需播放纯音频,请选择“纯音频”选项,然后,输入urlID,进入播放状态;
- [软解码/硬解码]如需用硬解码,请选择“硬解”,然后进入播放页面;
- [rtsp播放] 如需测试rtsp url,请编译工程,设置全的url即可;
- [rtsp播放] rtsp模式下,支持TCP/UDP模式切换;
- [静音功能] 无论播放rtmp还是rtsp,播放过程中,可以实时静音/取消静音;
- [返回] 播放另外一个url,点击返回按钮,到上级页面。
2.4 Web播放器
http://218.25.89.108:8080/files/SmartPlayer1Stream/SmartPlayer.html
在输入框中,清除老的url,输入推流的url,如 rtmp://218.25.89.108:1935/hls/stream123456(以推流端生成的URL为准)。
[上层源码目录]
-
android推流 SmartPublisher https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/Android/SmartPublisher
-
android推流 SmartServicePublisher(后台service推送摄像头/屏幕) https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/Android/SmartServicePublisher
-
android播放器 SmartPlayer: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/Android/SmartPlayer
-
iOS推流 SmartPublisher: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/IOS/SmartiOSPublisher
-
iOS播放器 SmartPlayer: https://github.com/daniulive/SmarterStreaming/tree/master/SourceCode/IOS/SmartiOSPlayer
[编译注意事项]
- 编译时找不到 libSmartPlayerSDK.a 时,请先到 SmartiOSPlayer/SmartiOSPlayer/libs 目录, 解压libSmartPlayerSDK.zip.
- 编译时找不到 libSmartPublisherSDK.a 时,请先到 SmartiOSPublisher/SmartiOSPublisher/libs 目录, 解压libSmartPublisherSDK.zip.
- iOS 需真机调试。
- 由于我们域名调整,原推送、播放 demo里面的baseURL “rtmp://daiulive.com” 调整为 "rtmp://player.daniulive.com",各位用我们server测试时,请注意调整。 原域名映射到刚上线的大牛直播网站 www.daniulive.com
- 未授权版本,限制app-name,如果需要集成到自己工程里面调试,可以用以下名字:
- android推送端:SmartPublisherSDKDemo
- android后台Service推送:SmartServicePublisherSDKDemo
- android播放器:SmartPlayerSDKDemo
- iOS推送端:SmartiOSPublisher
- iOS播放器:SmartiOSPlayer
给大家带来的不便,谢谢谅解。。
QQ群(大牛直播技术交流群1):499687479
QQ群(大牛直播技术交流群2 精英群):294891451
想了解更多信息,点击 大牛直播十万个为什么