h5 video标签播放任意路径下的视频文件

您所在的位置:网站首页 h5添加本地视频 h5 video标签播放任意路径下的视频文件

h5 video标签播放任意路径下的视频文件

#h5 video标签播放任意路径下的视频文件| 来源: 网络整理| 查看: 265

html中用video标签播放视频代码如下,

 

xxx.mp4需要放在项目里部署在container里,如果视频文件多或者需要动态上传,全扔在项目里不合适,需要可以读取任意路径下的视频文件供h5的video标签播放。

 

核心代码如下,简单说就是要在response的header里补几个属性,同时将request里的Range拿出来取出来计算后面的内容

File file = new File("d:/test/video/abc.mp4"); FileInputStream in = null; ServletOutputStream out = null; try { String range = request.getHeader("Range"); String[] rs = range.split("\\="); range = rs[1].split("\\-")[0]; in = new FileInputStream(file); long length = file.length(); int irange = Integer.parseInt(range); length = length - irange; response.addHeader("Accept-Ranges", "bytes"); response.addHeader("Content-Length", length + ""); response.addHeader("Content-Range", "bytes " + range + "-" + length + "/" + length); response.addHeader("Content-Type", "audio/mpeg;charset=UTF-8"); out = response.getOutputStream(); int len = 0; byte[] b = new byte[1024]; in.read(); while ((len = in.read(b)) != -1) { out.write(b, 0, len); } } catch (Exception e) { e.printStackTrace(); }finally{ try { if(out != null){ out.close(); } if(in != null){ in.close(); } } catch (IOException e) { e.printStackTrace(); } }

另外把video的src换成servlet的地址就可以了

 

用spring controller的也是类似的做法

 

ps: 写博客的“文章标签”有个bug, 无法输入中文。估计是监控了键盘输入事件,而不是控件的值变事件。这个错我也犯过。

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3