首页
学习
活动
专区
工具
TVP
发布

Electron 低延迟视频流播放方案探索

Electron 低延迟视频流播放方案探索 Bobi.ink 2020-04-05 好久不见,接近四个月没更新博客了!...我们不需要处理语音(由底层库直接播放), 这就要求我们的视频播放延迟不能太高, 出现语音和视频不同步。 不需要考虑浏览器兼容性。...目录 ① 典型的Web直播方案 RTMP 推流 RTMP 拉流 RTMP 低延迟优化 ② JSMpeg & BroadwayJS Relay 服务器 推送 视频播放 多进程优化 简单说一下 Broadway.js...而且在对接到底层库实际推送时,播放效果并不理想,出现各种卡顿、延迟。由于时间和知识有限,我们很难定位到具体的问题在哪, 所以我们暂时放弃了这个方案。...我们还可以利用requestAnimationFrame 由浏览器来调度播放的速率,丢掉积累的帧,保持低延迟播放

6K21
您找到你想要的搜索结果了吗?
是的
没有找到

延迟体育中的内容感知播放

几秒钟后,视频继续播放,这会很烦人,尤其是和朋友一起看比赛的时候。 自适应播放技术概述 低延迟体育节目是低延迟直播的主要驱动力。...在提供优质的低延迟实时流媒体服务这方面,我们开发了一些实用的技术,比如说自适应播放——通过改变每秒播放的帧数来减慢播放速度,并对音频和字幕做同样的事情。...在第二种情况下,在中间的情节中,我们只关注当前的延迟,而这正是 DASH:GS 今天所做的。如果当前延迟增加,您将提高播放速度,并尝试赶上实时边缘。...请注意,虽然 CAPSC 可以在短期内改变播放速度,但在低延迟直播中,长期平均播放速度不能快于 1 倍。...如果是这样,CAPSC 会选择较慢的播放速度。如果当前缓冲区级别不是非常低,CAPSC 检查当前延迟和目标延迟之间的差异,并选择 1x 或更高的值作为播放速度。

2.6K10

QT下实现低延迟RTSP|RTMP播放

好多开发者在QT环境下实现RTMP或RTSP播放时,首先考虑到的是集成VLC,集成后,却发现VLC在延迟、断网重连、稳定性等各个方面不尽人意,无法满足上线环境需求。...本文以调用大牛直播SDK(官方)的Windows平台播放端SDK为例,介绍下如何在QT下实现低延迟的RTMP|RTSP播放器,废话不多说,先上图: QTPlayer.png 大牛直播SDK有MFC的demo...,所以在QT上实现播放轻车熟路,如果需要多窗口播放,也可以参考转发的demo,转发的那个4窗口预览的demo做了二次封装,调用更方便。...考虑到大多场景下,开发者有多路播放诉求,针对这种情况,我们对player做个简单的封装: 开始播放: bool player_wrapper::StartPlay(const std::string&...play->OnWindowSize(widgets.at(i)->width(), widgets.at(i)->height()); } } } 以上是QT环境下集成个低延迟

1.5K80

Flutter下实现低延迟的跨平台RTSPRTMP播放

Flutter Engine使用C/C++编写,具有低延迟输入和高帧速率的特点,不像Unity3d一样,我们是回调YUV/RGB数据,在Unity3d里面绘制,Flutter直接调用native SDK...其次,客户和开发者驱动,Flutter发展至今,目前还没有个像样的RTSP或RTMP播放器,一个播放器,不是说,有个界面,有个开始、停止按钮就可以了,一个好用的直播播放器,对功能和性能属性要求很高,特别是稳定性和低延迟这块...async { return _smartPlayerCallInt('setFastStartup', isFastStartup); } /// /// 设置超低延迟模式...var is_fast_startup = 1; ret = await player.setFastStartup(is_fast_startup); //是否开启低延迟模式...,拥有Native SDK一样优异的播放体验。

4.5K00

编码,打包,CDN交付和视频播放器端的延迟优化

本文接下来介绍可能的延迟优化,从编码,打包,CDN交付以及视频播放器这些过程,通过调整其中的参数,可以为观众提供一个经过精心优化的低延迟直播流。...视频播放器端的延迟优化 现在看一下最重要的延迟改进领域 - 视频播放器的参数,即使在工作流程的上游优化了工作流参数,但这些优化可能会对未集成低延迟导向机制的视频播放器无效。...视频播放器通常经过优化,可为最终用户提供不间断的播放,这意味着播放器会优先考虑缓冲区长度而不是降低流延迟。但并不意味着完全缺乏启用低延迟的选项,而是在每个播放器的初始化设置中默认不启用这些选项。...通常,将缓冲区限制为3或4秒是延迟播放稳定性之间的合理折衷。低于3秒可以显着改善延迟,但也会影响用户体验,导致在播放期间会发生定期的重复缓冲阶段。...如果利用强制播放头以x切片或延迟x秒开始播放,在播放器设置中设置较低缓冲时间就可能效率比较低。但这是一个补充设置,需要自定义。

1.9K40

Unity环境下RTMP推流+RTMP播放延迟解决方案

在本文之前,我们发布了Unity环境下的RTMP推流(Windows平台+Android平台)和RTMP|RTSP拉流(Windows平台+Android平台+iOS平台)低延迟的解决方案,今天做个整体汇总...Unity环境下RTMP|RTSP播放器 Unity环境下RTMP或RTSP直播播放我们前几年就有发布,并已应用在好多传统行业领域,比如教育或工业仿真或一些低延迟的控制场景。...Native RTSP或RTSP直播播放SDK回调RGB/YUV420/NV12等其中的一种未压缩的图像格式; 2....多实例支持:播放端和推送不一样,比如智慧城市,播放端有多路场景,所以多实例支持是必备功能,多实例环境下,需要能有好的区分event状态回调等; 2....平台下低延迟播放RTMP或RTSP流 https://cloud.tencent.com/developer/article/1592731

3.3K10

在Chrome、Firefox中低延迟播放海康、大华RTSP完全解决方案!

这几年国内外的技术专家经过不断研究总结,形成一些闭源或开源、收费或免费的方案,但多数时候无法完全满足客户的实际需求,要么兼容性和稳定性不好,要么播放延迟高,首屏画面显示慢;尤其是播放高分辨率的RTSP流时...使用ActiveX播放控件或NPAPI播放插件实际调用的是本地原生程序进行直接播放,从而可充分利用本机硬件解码和硬件加速渲染播放,可实现低延迟、低成本多路稳定播放的良好效果。...推送到前端,前端收到后再转换为Video所支持的MP4后播放,这就导致RTSP视频流,需要经过2次转码才播放,画面延迟时间大幅增加,保守估计延迟至少是2-3秒级别了。...此方案同样要求浏览器支持流媒体扩展特性(MSE),对延迟不敏感的单源播放尚可,多路播放就只能洗洗睡了,另外根据一些用户的反馈,对各品牌摄像头的兼容性也不太友好,作为商业用途使用是不可行的。...本文基于当前最新的技术信息和实践经验,提供了这样一个稳定可靠、兼容性好、低延迟又可同时稳定播放多路RTSP的低成本半开源技术方案,尤其适合播放高分辨率的RTSP,以供大家选型参考。

2.2K00

iOS平台如何实现毫秒级延迟的RTMP|RTSP播放

技术实现先说播放实现,iOS端,RTMP|RTSP直播播放,我们实现的功能如下: [支持播放协议]高稳定、超低延迟(毫秒级) [多实例播放]支持多实例播放; [事件回调]支持网络状态、buffer状态等回调...H.265硬解; [H.264/H.265硬解码]Android支持设置Surface模式硬解和普通模式硬解码; [缓冲时间设置]支持buffer time设置; [首屏秒开]支持首屏秒开模式; [低延迟模式...]支持低延迟模式设置(公网200~400ms); [复杂网络处理]支持断网重连等各种网络环境自动适配; [快速切换URL]支持播放过程中,快速切换其他URL,内容切换更快; [实时静音]支持播放过程中,...实时静音/取消静音; [实时音量调节]支持播放过程中实时调节音量; [实时快照]支持播放过程中截取当前播放画面; [渲染角度]支持0°,90°,180°和270°四个视频画面渲染角度设置; [渲染镜像]...smart_player_sdk SmartPlayerSetPlayURL:playback_url_]; //[self try_set_rtsp_url:playback_url_]; //超低延迟模式设置

10410

【技术分享】Windows平台低延迟RTMP、RTSP播放器接口设计探讨

背景我们看过了太多介绍RTSP、RTMP播放相关的技术资料,大多接口设计简约,延迟和扩展能力也受到一定的局限,好多开发者希望我们能从接口设计的角度,大概介绍下大牛直播SDK关于RTMP、RTSP播放器开发设计...加大buffer time,会增大播放延迟,好处是,网络抖动的时候,流畅性更好。...低延迟模式低延迟模式下,设置buffer time为0,延迟更低,适用于比如需要操控控制的超低延迟场景下。...,这里就不再赘述,除Windows平台外,我们还同步开发了Linux、Android、iOS平台的RTSP、RTMP播放器,大多常规接口四个平台基本统一,延迟也都做到了毫秒级。...一个好的播放器,特别是要满足低延迟稳定的播放(毫秒级延迟),需要注意的点远不止如此,感兴趣的开发者,可以参考blog其他文章。

1.9K10

VR头显Unity下如何实现毫秒级延迟的RTMP或RTSP播放

技术背景虚拟现实(VR)技术的互动性和沉浸感,为我们提供了一种全新的视觉体验,不过,如果需要实现真正的沉浸式体验,VR播放延迟问题非常重要。...如何尽可能降低Unity环境下的直播播放延迟,是摆在我们面前的大问题,目前,硬件厂商也采用一些更加好的传输技术,例如5G网络等高速网络技术,以降低传输延迟。...今天,我们主要介绍的是VR头显下,如何低延迟的实现RTMP或RTSP的播放。技术实现说了这么多,如何在VR头显端,尽可能的降低直播播放延迟呢?...以大牛直播SDK为例,我们在做Unity下RTMP或RTSP直播播放的时候,大多场景对延迟和资源占有要求非常高,鉴于好多时候,特别是头显终端,性能可能不尽人意,需要播放的视频分辨率码率又高,如何高效率的实现低延迟的...RTMP或RTSP播放,是Unity下比较棘手的问题,特别是毫秒级延迟

27530

如何设计一款跨平台低延迟的RTMPRTSP直播播放

开发背景 2015年,当我们试图在市面上找一款专供直播播放使用的低延迟播放器,来配合测试我们的RTMP推送模块使用时,居然发现没有一款好用的,市面上的,如VLC或Vitamio,说白了都是基于FFMPEG...我们的直播播放器,始于Windows平台,Android和iOS同步开发,基于上述开源播放器的各种缺点,我们考虑全自研框架,确保整体设计跨平台,再保障播放流程度的前提下,尽可能的做到毫秒级延迟,接口设计三个平台统一化...经过迭代后的功能 [支持播放协议]RTSP、RTMP,毫秒级延迟; [多实例播放]支持多实例播放; [事件回调]支持网络状态、buffer状态等回调; [音视频加密]Windows平台支持RTMP...低延迟:大多数RTSP的播放都面向直播场景,所以,如果延迟过大,严重影响体验,所以,低延迟是衡量一个好的RTSP播放器非常重要的指标,目前大牛直播SDK的RTSP直播播放延迟比开源播放器更优异,而且长时间运行下...音视频同步处理:有些播放器为了追求低延迟,甚至不做音视频同步,拿到audio video直接播放,导致a/v不同步,还有就是时间戳乱跳等各种问题,大牛直播SDK提供的播放器,具备好的时间戳同步和异常时间戳矫正机制

2.8K00

RabbitMQ 延迟队列,消息延迟推送

目录 应用场景 消息延迟推送的实现 测试结果 ---- 应用场景 目前常见的应用软件都有消息的延迟推送的影子,应用也极为广泛,例如: 淘宝七天自动确认收货。...这种解决方案相较于消息的延迟推送性能较低,因为我们知道 redis 都是存储于内存中,我们遇到恶意下单或者刷单的将会给内存带来巨大压力。...消息延迟推送的实现 在 RabbitMQ 3.6.x 之前我们一般采用死信队列+TTL过期时间来实现延迟队列,我们这里不做过多介绍,可以参考之前文章来了解:TTL、死信队列 在 RabbitMQ 3.6....x 开始,RabbitMQ 官方提供了延迟队列的插件,可以下载放置到 RabbitMQ 根目录下的 plugins 下。...延迟队列插件下载 ? 首先我们创建交换机和消息队列,application.properties 中配置与上一篇文章相同。

2.1K10

在Chrome、Firefox等高版本浏览器中实现低延迟播放海康、大华RTSP

在Chrome、Edge、Firefox等当前主流的高版本浏览器中,即使是HTML5标准的Video也并未对RTSP流播放提供原生支持,从而导致如何在当前主流的浏览器中实现低延迟、低成本并可同时播放多路...使用ActiveX播放控件或NPAPI播放插件实际调用的是本地原生程序进行直接播放,从而可充分利用本机的硬件加速能力,可实现满意的多路低成本、低延迟播放效果。...推送到前端,前端收到后再转换为Video所支持的MP4后播放,这就导致RTSP视频流,需要经过2次转码才播放,画面延迟时间大幅度增加,保守估计延迟至少也是2-3秒级别了。...据了解,此方案已经成功在多个客户现场完成实施并取得了良好的效果,获得了客户的一致好评,毕竟能实现低延迟、低成本的同时播放是硬道理。...本文基于当前最新的技术信息和实践经验,提供了这样一个稳定可靠、兼容性好、低延迟又可同时播放多路RTSP的低成本技术方案,以供大家参考。

3.3K00
领券