A MSE+Fmp4+websocket+H265播放器

介绍

最近有个需求需要在浏览器上播放网络摄像机的音视频,基本要求就是要低延时

目前最符合低延时要求的是webrtc方案,但由于项目自身原因,暂时无法引入webrtc方案,调研下来,ws+hflv, ws+fmp4是比较好的方案,很多开源播放器也支持播放ws+flv,

从低延时的角度选择,ws+fmp4可能延迟更低一些,毕竟类似flv.js的MSE方案最终也是要把flv封装的视频数据转换成fmp4格式数据喂给MSE。

后来发现开源的支持ws+fmp4的web播放器很少, 要么就是将这个功能放在pro版本收费,要么就是不支持ws+fmp4+h265 .....

最后在各种AI工具的加持下,我这个从未写过前端代码的后端老司机,硬生生的捣鼓出来一个web播放器(功能很单调)
A MSE+fmp4+websocket H2655 WEB 播放器

github地址:https://github.com/machh/machhPlayer

连续跑了四五天,目前看效果还可以,延迟基本上在1秒左右, 这里开源出来,希望大家都可以尝试使用,有问题可以反馈,共同优化,记得点赞+star。

关键特性

  • 低延迟播放:延时1s左右, 通过WebSocket接收fMP4片段,直接追加到MSE的 SourceBuffer中,使用 video.buffered设置currentTime实现从缓存片段的播放。
  • 编解码支持:原生H.264/H.265(fMP4 格式)
  • 技术栈:WebSocket(流传输)、MSE(媒体追加)、HTML5 Video(渲染)
  • 实现了简单的重连/退避机制及内存回收机制,
  • 支持音频H.264/H.265+AAC
  • 对于H.265的解码播放,依赖浏览器MSE原生能力,最新版本的chrome,Edge都可以

截图展示

相关推荐
严谨的麻辣烫1 小时前
数据中心出口与住宅出口的技术差异:从 ASN 到 TCP 行为的一次拆解
网络·网络协议·tcp/ip
Freed&1 小时前
Zabbix TCP连接状态自定义监控完整部署手册
网络·tcp/ip·zabbix
学着改变2752 小时前
手持式超声波流量计为何首选行澳科技?便携巡检与外夹计量的性能标杆
大数据·网络·人工智能·科技·产品运营·量子计算
2501_915921433 小时前
抓包鹰 Traceeagle 解除证书绑定,SSL Pinning 解除
网络·网络协议·网络安全·ios·adb·https·ssl
Lucky_Turtle3 小时前
【SSL】letsencrypt域名证书申请,Cloudflare域名
网络·网络协议·ssl
路由侠内网穿透3 小时前
本地部署企业级快速开发平台芋道管理后台并实现外部访问
运维·服务器·网络·网络协议
basketball6164 小时前
软考中级网络工程师 第4章 无线通信网 备考总结
linux·服务器·网络·网络工程师·软考
睡一觉就好了。6 小时前
Linux 信号机制
linux·运维·网络
A_humble_scholar8 小时前
Linux(二) C++ TCP/UDP网络编程
linux·网络·c++
Sylvia33.9 小时前
篮球数据API的技术架构与工程实践:基于火星数据WebSocket实时推送体系
java·python·websocket·网络协议·架构