开发背景 好多开发者一直反馈,Windows平台,做个推屏或者推摄像头,推RTMP或者RTSP出去,不知道哪些功能是必须的,哪些设计是可有可无的,还有就是,不知道如何选技术方案,以下是基于我们设计的Windows平台RTSP、RTMP直播推送模块,设计和使用说明,供大家参考。 整体方案架构 Wind ...
开发背景 2015年,当我们试图在市面上找一款专供直播播放使用的低延迟播放器,来配合测试我们的RTMP推送模块使用时,居然发现没有一款好用的,市面上的,如VLC或Vitamio,说白了都是基于FFMPEG,在点播这块支持格式很多,也非常优异,但是直播这块,特别是RTMP,延迟要几秒钟,对如纯音频、纯 ...
分类:
其他好文 时间:
2020-02-08 13:58:43
阅读次数:
139
前置知识点:浏览器原理,浏览器内核5种线程及协作,JS引擎单线程设计推荐阅读:从浏览器多进程到JS单线程,JS运行机制最全面的一次梳理【FE】浏览器渲染引擎「内核」js异步编程,Promise实现推荐阅读:Javascript异步编程的4种方法前端面试必考题Promise的源码解析堆、栈、队列、执行... ...
分类:
编程语言 时间:
2020-02-08 13:57:19
阅读次数:
89
背景分析 众所周知,为了让用户更好的了解与使用EasyNVR,熟悉EasyNVR的相关功能,将EasyNVR与本地应用场景更好的融合,我们团队提出产品免费试用的途径。EasyNVR主要功能包括通过RTSP协议接入摄像机、支持Onvif协议,支持云台控制,焦距缩放、全平台(web/Android/iO ...
分类:
Web程序 时间:
2020-02-07 16:57:37
阅读次数:
158
线上系统突然变得卡顿或无法访问,排除网络异常的情况下,检查服务器资源占用情况,如果CPU、内存、磁盘IO等资源占用过高,就会导致无法继续处理HTTP请求。 如果是CPU占用飙高,有可能是程序中存在死循环、死锁导致的,也有可能是内存紧张从而频繁GC导致的,要具体问题具体分析。 排查过程 这里记录一次线 ...
分类:
其他好文 时间:
2020-02-06 11:07:57
阅读次数:
75
环境: 型号:MacBook Pro (16-inch, 2019) 处理器:2.6 GHz 六核Intel Core i7 版本:10.15.3 (19D76) 现象:切换到微信时卡顿,输入文字,发送消息时,卡顿 解决办法: 关闭自动切换独显 操作:#强制使用核显(集成显卡)sudo pmset ...
分类:
微信 时间:
2020-02-05 16:45:56
阅读次数:
1050
在安装了vscode之后,发现电脑很卡,cpu使用率高达100%。 解决方法: 打开vscode之后,点击文件==>首选项==>设置搜索设置search.followSymlinks然后在右侧用户自定义设置中将这个值改为 falsesearch.followSymlinks = false ...
分类:
其他好文 时间:
2020-02-03 20:47:58
阅读次数:
120
好多情况下,一路RTSP或RTMP网络流过来后,想共享给更多局域网内的客户端播放,一般来说,有两种设计方案: 1. 拉取的RTSP或RTMP流,回调后的数据,转推RTMP服务器,内网部署一台RTMP服务器(如NGINX或者SRS)即可; 2. 拉取后的RTSP或RTMP流,回调后的数据,汇聚到内置R ...
分类:
其他好文 时间:
2020-02-02 21:18:25
阅读次数:
256
一个好的转发模块,首先要低延迟!其次足够稳定、灵活、有状态反馈机制、资源占用低,跨平台,最好以接口形式提供,便于第三方系统集成。 以Windows平台为例,我们的考虑的点如下 1. 拉流:通过RTSP直播播放SDK的数据回调接口,拿到音视频数据; 2. 转推:通过RTMP直播推送SDK的编码后数据输 ...
分类:
其他好文 时间:
2020-02-01 23:14:58
阅读次数:
95
之前学习的客户端当然可以实现基本的功能,只是会出现卡顿的现象,用户的体验并不是很好,我们现在用异步实现这样的功能 具体完整的代码: using System.Collections; using System.Collections.Generic; using UnityEngine; using ...
分类:
其他好文 时间:
2020-02-01 21:03:37
阅读次数:
63