使用ngnix实现跨域视频截图
通过使用html5 canvas的drawImage()方法可以轻松获取视频当前播放的帧。参考
但是只能对当前项目下的视频截图。很多情况下,视频文件是单独存放的,即要对跨域视频截图
在尝试了很多方法之后,最后通过ngnix轻松解决了这个问题。
ngnix配置:
upstream video2image {server localhost:8080;}
ngnix server配置两个location。
1.默认对接收到的所有url请求都去请求8080端口。
2.对/video请求获取别的服务器中的视频。
server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location /{proxy_pass http://video2image;}location /video {include uwsgi_params;proxy_pass http://192.168.0.222/test.avi;proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }}
jsp页面获取视频
<video id="video" width="270" autoplay><source src="/video" type='video/avi'></video><input type="button" id="catch" value="截图" /><br/><canvas id="myCanvas" width="270" height="135" style="border:1px solid #d3d3d3;"></canvas>
js绑定事件
<script type="text/javascript">$("#catch").click(function(){var v=document.getElementById("video");var c=document.getElementById("myCanvas");ctx=c.getContext('2d');ctx.drawImage(v,0,0,270,135)})</script>
项目中的截图部分代码已经上传,有兴趣的可以下载看一下
下载地址
使用ngnix实现跨域视频截图相关推荐
- 利用ngnix解决跨域问题
一,定义 跨域是指从一个域名的网页去请求另一个域名的资源,它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制.跨域的严格一点的定义是:只要 协议,域名,端口有任何一个的不同,就 ...
- 阿里云OSS图片存储跨域配置 OSS CDN跨域配置截图
采用了OSS的CDN加速,会导致请求的同一个URL被随机分发到源服务器和CDN服务器,因为CDN服务器并未配置跨域,导致随机到CDN服务器时,就会报跨域错误,而随机到源服务器时就没事,这就造成时好时坏 ...
- java 视频切片_关于视频播放、视频切片、跨域访问视频
关于视频播放.视频切片.跨域访问视频 前言 最近在着手部署上线做的一个视频网站,当我们部署到云服务器上后并开始测试视频观看并发量,发现了一个很严重的问题:带宽不足.9 或 10 个人同时观看视频的时候 ...
- asp.net core 系列之允许跨域访问2之测试跨域(Enable Cross-Origin Requests:CORS)
这一节主要讲如何测试跨域问题 你可以直接在官网下载示例代码,也可以自己写,我这里直接使用官网样例进行演示 样例代码下载: Cors 一.提供服务方,这里使用的是API 1.创建一个API项目.或者直接 ...
- 关于尚硅谷微信支付开发解决跨域访问
在我做微信支付项目中的问题:跨域访问,最开始用视频上的注解@CrossOrigin ,后端的资无法访问源,我自己在网上找了找,就是添加一个过滤器 import org.springframework. ...
- Django框架实现跨域的菜鸟教程
背景 我用Django框架+apicloud做一个web app项目,然后现在遇到一个问题,就是需要跨域: 1.安装django-cors-headers 2.找到与项目名同名下面的settings. ...
- video 视频截图 云储存 跨域引用
<video poster="" src="" crossOrigin="anonymous" width="100%&qu ...
- video视频播放截图, 跨域问题
"SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not ...
- nginx HLS m3u8播放视频跨域问题
采用HLS+m3u8方式播放视频,在播放的时候会报跨域问题.例如:https://www.***.com/crossdomain.xml找不到. 方法1:在跨域的网站根目录放crossdomain.x ...
最新文章
- R语言F分布函数F Distribution(df, pf, qf rf )实战
- linux虚拟网络设备之bridge(桥)(三)
- js 正则判断字符串是否为字母或数字
- 科学家研发多模态生物识别系统,基于脑纹独特性来防范身份欺骗
- 浅谈C++的virtual 动态绑定。
- Vue实现仿音乐播放器14-实现搜索页面以及功能
- #求教# 公共less模块中的背景图片地址应该怎么处理?
- 多线程编程学习笔记——任务并行库(三)
- java实现红包要多少钱_Java实现抢红包算法,附完整代码(公平版和手速版)
- jsp界面自动生成文件注释_实施注释界面
- tx2无法识别网络_织点智能算法大牛刘思伟:商品识别在收银结算场景的应用与落地...
- 信息学奥赛一本通 1096:数字统计 | 1949:【10NOIP普及组】数字统计 | OpenJudge NOI 1.5 41
- java cookie p3p_P3P script src 解决cookie存取的跨域问题 java 终极解决办法
- 嵌入式linux地图,基于嵌入式Linux的MapInfo格式地图显示
- linux下可以输入中文曲,Ubuntu 14.04终端模式下中文输入听歌
- 中断 10 分钟,改变孩子沉迷游戏的习惯
- 街头篮球上读取服务器维护,《街头篮球》九月新版引入超级服务器
- 来自百度的移动应用框架Clouda:快速开发,一键部署BAE
- candence测量尺寸
- UI——day5.什么是启动页
热门文章
- [SDM660 Android9.0]编译问题
- 响应头Content-Type与Content-Disposition的区别
- FPGA数字信号处理(三)串行FIR滤波器Verilog设计
- OpenCL/DirectX与CUDA,鱼和熊掌可以兼得?
- 在网站插入优酷播放器的方法
- POJ-2488 国际象棋马的走法 (深度优先搜索和回溯)
- Java通过URL进行多线程下载
- 毕设分享SSM 中药店商城系统(含源码+论文)
- ECharts雷达图拐点表示数值大小
- kindeditor获取html,kindeditor肿么获取获取HTML数据