当前位置: 首页 > news >正文

浏览器WEB播放RTSP

注意:浏览器不能直接播放RTSP,必须转换后都能播放。这一点所有的播放都是如此。

  • 参考

https://github.com/kyriesent/node-rtsp-stream

GitHub - phoboslab/jsmpeg: MPEG1 Video Decoder in JavaScript

  • 相关文件方便下载

https://download.csdn.net/download/quantum7/90459890

  • 安装node/npm
  • 安装ffmpeg
sudo apt install -y ffmpeg
  • 服务器:安装node-rtsp-stream
npm install node-rtsp-stream
  • 服务器:启动

如果没有RTSP流或访问不到,可以自己模拟一个。具体参考:

文件app.js

Stream = require('node-rtsp-stream')
stream = new Stream({name: 'name',streamUrl: 'rtsp://10.0.2.15:8554/test.264',wsPort: 9999,ffmpegOptions: { // options ffmpeg flags'-stats': '', // an option with no neccessary value uses a blank string'-r': 30 // options with required values specify the value after the key}
})

启动

node app.js
  • 新建index.html
<!DOCTYPE html>
<html>
<head><title>JSMpeg Stream Client</title><style type="text/css">html, body {background-color: #111;text-align: center;}</style></head>
<body><canvas id="video-canvas"></canvas><script type="text/javascript" src="jsmpeg.min.js"></script><script type="text/javascript">var canvas = document.getElementById('video-canvas');var url = 'ws://localhost:9999/';var player = new JSMpeg.Player(url, {canvas: canvas});</script>
</body>
</html>
  • 直接打开index.html,就能播放。

========================================================================

下面是前端方案。

  • 前端:搭建服务器

Ubuntu搭建最简单WEB服务器-CSDN博客

  • 复制jsmpeg.min.js/index.html

默认工作目录是/var/www/html

  • 测试

如果发现不能播放:

检查流是否正常,能否访问(比如在虚拟机中可能就无法访问外部流)。

流是否已结束(此时可以重启服务器,赶紧刷新)。

  • 其他方案

node-rtsp-stream

node-media-server

rtsp-streaming-server

fluent-ffmpeg

http://www.lryc.cn/news/547418.html

相关文章:

  • 将PDF转为Word的在线工具
  • 03. 对象的创建,存储和访问原理
  • 机器学习-GBDT算法
  • redis基础结构
  • 【keil】一种将STM32的armcc例程转换为armclang的方式
  • 计算机视觉算法实战——表面缺陷检测(表面缺陷检测)
  • window下的docker内使用gpu
  • Modbus协议(TCP)
  • 虚拟系统配置实验报告
  • Agentic系统:负载均衡与Redis缓存优化
  • 28-文本左右对齐
  • 建筑兔零基础自学python记录39|实战词云可视化项目——章节分布10(上)
  • Impacket工具中的横向渗透利器及其使用场景对比详解
  • 基于java,SpringBoot和Vue的医院药房药品管理系统设计
  • MQ保证消息的顺序性
  • cmake、CMakeLists.txt、make、ninja
  • 数据结构与算法 计算机组成 八股
  • RoboBrain:从抽象到具体的机器人操作统一大脑模型
  • 算法 之 前缀和 与 滑动窗口 与 背包问题 的差异(子数组之和为k问题)
  • 微电网协调控制器ACCU-100 分布式光伏 光储充一本化
  • IDEA入门及常用快捷键
  • electron打包结构了解
  • 03.06 QT
  • Python中的常用库
  • 马尔科夫不等式和切比雪夫不等式
  • 护照阅读器在汽车客运站流程中的应用
  • CentOS 7 安装Nginx-1.26.3
  • Unity 使用NGUI制作无限滑动列表
  • linux中断调用流程(arm)
  • 基于Matlab的多目标粒子群优化