通过PotPlayer发现该MP4文件的编码格式为HEVC,而video标签不支持该编码格式的视频文件

在HTML文件中首先需要引用libe265.js来负责处理HEVC格式文件

libde265.js/libde265.js at master · strukturag/libde265.js · GitHub

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><canvas id="canvas"></canvas><script src="./libde265.js"></script>  <script>  var VIDEO_URL = 'http://localhost/file/video?fileName=E:\\test\\1_monitor01_1668690540000.mp4'  var video = document.getElementById('canvas')  // var fpsWrap = document.querySelector('.hevc-fps')var status = document.querySelector('.hevc-status')var playback = function (event) {// event.preventDefault()// if (player) {//   player.stop()// }player = new libde265.RawPlayer(video)player.set_status_callback(function (msg, fps) {player.disable_filters(true)console.log(msg);switch (msg) {case 'loading':status.innerHTML = 'Loading movie...'breakcase 'initializing':status.innerHTML = 'Initializing...'breakcase 'playing':status.innerHTML = 'Playing...'breakcase 'stopped':status.innerHTML = 'stopped'breakcase 'fps':// fpsWrap.innerHTML = Number(fps).toFixed(2) + ' fps'breakdefault:status.innerHTML = msg}})player.playback(VIDEO_URL)}playback()</script>
</body>
</html>

而通过绝对路径来寻找本地视频文件则可通过后端(SpringBoot)编写接口进行操作

以下是Controller层代码

@RestController
@RequestMapping("/file")
@CrossOrigin(origins = "*")
public class FileController {@Resourcepublic IFileService fileService;/*** 根据本地图片全路径,响应给浏览器1个图片流*/@GetMapping("/image/{fileName}")public void showImage(HttpServletResponse response, @PathVariable("fileName") String fileName) {fileService.show(response, fileName, "image");}/*** 根据本地视频全路径,响应给浏览器1个视频*/@GetMapping ("/video")public void showVideo(HttpServletResponse response, String fileName) {fileService.show(response, fileName, "video");}}

以下是Sevice层代码

@Service
public class FileServiceImpl implements IFileService {/*** 响应文件** @param response* @param fileName 文件全路径* @param type     响应流类型*/public void show(HttpServletResponse response, String fileName, String type) {try {FileInputStream fis = new FileInputStream(fileName); // 以byte流的方式打开文件int i = fis.available(); //得到文件大小byte data[] = new byte[i];fis.read(data);  //读数据response.setContentType(type + "/*"); //设置返回的文件类型OutputStream toClient = response.getOutputStream(); //得到向客户端输出二进制数据的对象toClient.write(data);  //输出数据toClient.flush();toClient.close();fis.close();} catch (ClientAbortException cae) {cae.printStackTrace();System.out.println("播放中断");} catch (Exception e) {e.printStackTrace();System.out.println("文件不存在");}}}

HTML5兼容HEVC视频格式且支持本地绝对路径访问相关推荐

  1. 浏览器对视频格式的支持

    浏览器及平台 支持的视频格式 Chrome MP4, WebM Firefox MP4, WebM Internet Explorer MP4 Android MP4 iOS MP4 Safari M ...

  2. iphone保存html视频格式,iPhone6支持什么视频格式?iPhone6支持RMVB播放吗?

    iPhone6支持什么视频格式 iPhone6支持MP4,AVI,NAVI,DV-AVI,DIVX,MOV,ASF,WMV,RM,RMVB等视频格式. 关于iPhone6支持什么视频格式的疑问,下面将 ...

  3. html5中加入视频格式,HTML5音视频格式video和audio

    html5音频和视频使用详解. 一.html5视频 以前,大多数视频是通过插件(比如 Flash)来显示的,然而,并非所有浏览器都拥有同样的插件 现在,HTML5 规定了一种通过 video 元素来包 ...

  4. 红米note3支持html,红米Note3支持什么视频格式?支持RMVB播放吗?

    红米Note3支持什么视频格式 红米Note3支持MP4.M4V.MKV.XVID.ASF视频格式. 红米Note3的指纹识别对手的湿度也有要求,需要保持手指干燥,潮湿的话就可能导致无法识别.红米No ...

  5. HTML5中如何检查浏览器是否支持本地存储

    如果你的浏览器支持该特性的话,那么全局对象:window上会有一个localStorage的属性,反之,你的浏览器不支持的话,那么该属性值为undefined JavaScript  function ...

  6. html5查看swf视频格式,如何使用Videojs播放.swf格式文件?

    Video.js videojs.options.flash.swf = './video-js.swf'; // flash路径 https://imgcache.qq.com/tence...0& ...

  7. antd_Ant Design Pro_Vue打包问题:使用静态本地文件路径访问

    1:vue.config.js 配置文件 vueConfig 中 或者是 module.exports 中 添加 publicPath: './' 2:src->router->index ...

  8. Qt多路视频监控软件(Qt+VLC支持本地视频/RTSP流/RTMP流)

    Qt多路视频监控软件(Qt+VLC支持本地视频/RTSP流/RTMP流) 功能: 支持同时播放多路视频源: 支持播放本地视频,包括MP4.mkv.flv等视频格式: 支持播放RTSP/RTMP视频流: ...

  9. 步步高DVD机DV603的U盘模式支持视频格式

    亲测支持视频格式:支持avi,mpg,vob文件 转载于:https://www.cnblogs.com/phyking/p/4456602.html

最新文章

  1. Linux shell 读取一行
  2. BrainNet:用于人与人之间直接协作的多人脑对脑接口
  3. java 优先队列 用法_优先队列的基本用法(java和c++)
  4. 基础算法之快速排序Quick Sort
  5. 计算机视觉论文-2021-07-01
  6. windows下搭建OpenGL ES开发环境
  7. 上线 5 天获得 100 万用户,可为什么我开发的 App 最终却倒闭了?
  8. 如果你在aws ec2上安装php7x 的时候提示 libwebp 错误,可以试一下下面这个代码...
  9. 关于javaswing做的游戏的一点小总结x
  10. mysql sql执行慢_Mysql执行查询语句慢的解决方式
  11. 四旋翼飞行器教学笔记2 —— 飞行器de姿态读取 1
  12. 自定义控件-视觉特效
  13. EAG通过新实验室拓展医疗器械检测服务
  14. 快捷键-vscode-excel
  15. js一天、两天倒计时定时器实现方案
  16. 和机器学习和计算机视觉相关的数学
  17. mysqlcnf标准配置
  18. 抓取服务器作业文档不存在,易飞ERP问题解答
  19. android 通讯录 编程,以编程方式批量添加数千个Android联系人
  20. 相机计算坐标公式_相机标定后,从图像坐标(像素)向物理坐标的转换计算,...

热门文章

  1. 计算机网络【Computer Networks】学习记录01
  2. <动手学深度学习>之pytorch版本,配置d2lzh_pytorch包
  3. 专业术语:UV、PV
  4. ASP.NET中防止Access数据库下载
  5. Win10 x64 中VC6 安装卡死、无法单步调试、调试退出进程没有结束
  6. http://www.searchtb.com/2010/11/protocol-buffers%E7%9A%84%E5%BA%94%E7%94%A8%E4%B
  7. 【分享】QT读取EXCEL文件(附代码)
  8. POI 导出excel cell无边框
  9. 上海市计算机等级考试一级试题,2010上海市高校计算机等级考试(一级)试题
  10. 服务器之间文件同步 go,基于golang文件实时监控并同步远端服务器工具