搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
寸_铁
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
安装和使用虚拟环境--Linux+Windows--打包_linux虚拟环境打包
2
高级-信息系统项目管理师第四版教材_信息系统项目管理高级电子教材
3
那些下载不了的视频,Python只用1行代码就能直接下载_python 下载视频
4
如何解决导入Excel文件的时候公式为【#Ref!】的问题?
5
孟德尔随机化(MR)独立性设置时clumping出现问题_孟德尔随机化独立性设置失败
6
带你看懂变分自编码(VAE)
7
redis原理之底层数据结构-跳表
8
基于亚马逊云科技Amazon Bedrock构建复杂AI应用程序
9
CDGA数据治理工程师证书,助力职场发展
10
springboot sqlserver驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接_springboot com.microsoft.sqlserver.jdbc.sqlserverd
当前位置:
article
> 正文
html实现拍照
作者:寸_铁 | 2024-08-09 20:46:57
赞
踩
如何用html拍下朋友的丑照
<!DOCTYPE html
>
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
>
<
title
>
HTML5 GetUserMedia Demo
</
title
>
<
meta
name
=
"viewport"
content
=
"width=device-width, initial-scale=1.0, maximum-scale=1.0"
/>
</
head
>
<
body
>
<
input
type
=
"button"
title
=
"开启摄像头"
value
=
"开启摄像头"
onclick
=
"getMedia();"
/>
<
br
/>
<
video
height
=
"120px"
autoplay
=
"autoplay"
>
</
video
>
<
hr
/>
<
input
type
=
"button"
title
=
"拍照"
value
=
"拍照"
onclick
=
"getPhoto();"
/>
<
br
/>
<
canvas
id
=
"canvas1"
height
=
"120px"
>
</
canvas
>
<
hr
/>
<
input
type
=
"button"
title
=
"视频"
value
=
"视频"
onclick
=
"getVedio();"
/>
<
br
/>
<
canvas
id
=
"canvas2"
height
=
"120px"
>
</
canvas
>
<
script
type
=
"text/javascript"
>
var
video
=
document
.querySelector('video');
var audio, audioType;
var
canvas1
=
document
.getElementById('canvas1');
var
context1
=
canvas1
.getContext('2d');
var
canvas2
=
document
.getElementById('canvas2');
var
context2
=
canvas2
.getContext('2d');
navigator.getUserMedia
=
navigator
.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
window.URL
=
window
.URL || window.webkitURL || window.mozURL || window.msURL;
var
exArray
= []; //存储设备源ID
MediaStreamTrack.getSources(function (sourceInfos) {
for (var
i
=
0
; i != sourceInfos.length; ++i) {
var
sourceInfo
=
sourceInfos
[i];
//这里会遍历audio,video,所以要加以区分
if (
sourceInfo.kind
=== 'video') {
exArray.push(sourceInfo.id);
}
}
});
function getMedia() {
if (navigator.getUserMedia) {
navigator.getUserMedia({
'video': {
'optional': [{
'sourceId': exArray[1] //0为前置摄像头,1为后置
}]
},
'audio':true
}, successFunc, errorFunc); //success是获取成功的回调函数
}
else {
alert('Native device media streaming (getUserMedia) not supported in this browser.');
}
}
function successFunc(stream) {
//alert('Succeed to get media!');
if (video.mozSrcObject !== undefined) {
//Firefox中,video.mozSrcObject最初为null,而不是未定义的,我们可以靠这个来检测Firefox的支持
video.mozSrcObject
=
stream
;
}
else {
video.src
=
window
.URL && window.URL.createObjectURL(stream) || stream;
}
//video.play();
// 音频
audio
=
new
Audio();
audioType
=
getAudioType
(audio);
if (audioType) {
audio.src
=
'polaroid.'
+ audioType;
audio.play();
}
}
function errorFunc(e) {
alert('Error!'+e);
}
// 将视频帧绘制到Canvas对象上,Canvas每60ms切换帧,形成肉眼视频效果
function drawVideoAtCanvas(video,context) {
window.setInterval(function () {
context.drawImage(video, 0, 0,90,120);
}, 60);
}
//获取音频格式
function getAudioType(element) {
if (element.canPlayType) {
if (element.canPlayType('audio/mp4;
codecs
="mp4a.40.5"
') !== '
') {
return ('aac');
} else if (element.canPlayType('audio/ogg;
codecs
="vorbis"
') !== '
') {
return ("ogg");
}
}
return false;
}
// vedio播放时触发,绘制vedio帧图像到canvas
// video.addEventListener('play', function () {
// drawVideoAtCanvas(video, context2);
// }, false);
//拍照
function getPhoto() {
context1.drawImage(video, 0, 0,90,120); //将video对象内指定的区域捕捉绘制到画布上指定的区域,实现拍照。
}
//视频
function getVedio() {
drawVideoAtCanvas(video, context2);
}
</
script
>
</
body
>
</
html
>
转载于:https://www.cnblogs.com/hsdying/p/7999693.html
声明:
本文内容由网友自发贡献,转载请注明出处:
【wpsshop】
推荐阅读
article
tokenization
of
html
...
html
符号解析问题 场景: 在页面上输出包含已有数据的 textarea ,一般的做法即是,将所有的数据从数据库取出...
赞
踩
article
HTML
Parser
and Tokenization...
说明比较好的站点[@more@]http://www.whatwg.org/specs/web-apps/current...
赞
踩
article
jsoup
load
HTML
document
的三种方法_
jsoup
.
load
...
jsoup
: java
HTML
parser
jsoup
提供了一个方便的API,用来提取和操作
HTML
中数据。
jsoup
...
赞
踩
article
HTML
parser
_htmldocument
parser
...
1. receive data to
parser
for chromium stackWebUrlLoaderClien...
赞
踩
article
HTML
+
CSS
前端
简单
卡片
动态效果
_
html
中
卡片
样式...
HTML
+
CSS
前端
简单
卡片
动态效果
_
html
中
卡片
样式
html
中
卡片
样式 一、创意效果...
赞
踩
article
【
面试
】
web
前端经典
面试
题试题及答案(持续更新)-
html
/
css
_
web
前端
面试
题...
html
/
css
css
盒模型、BFC、
css
浮动、
css
经典布局、
css
兼容、
css
hack、
html
/
css
基础...
赞
踩
article
JQuery
+
HTML
+
JavaScript
:实现
地图
位置
选取
和地址模糊查询_简单网页
地图
代码...
本文详细讲解了如何使用 `
JQuery
+
HTML
+
JavaScript
` 实现移动端页面中的
地图
位置
选取
功能。本文逐步展...
赞
踩
article
html
+
css
+
js
实现
一个
简单
的
电商商城首页...
很多刚入门编程
的
小白学习了基础语法,却不知道语法
的
用途,不知道如何加深映像,不知道如何提升自己,这个时候每天刷自主刷一些...
赞
踩
article
基于
树莓
派的
智能家居
中控系统:集成
Flask
、
HTML
、
JavaScript
与
MQTT
协议的
文心
一言
...
本文介绍了基于
树莓
派的AI接入
文心
一言
智能家居
中控系统的搭建过程。该系统利用
树莓
派作为主控单元,通过DHT11传感器和继...
赞
踩
article
JQuery+
HTML
+
JavaScript
:实现
地图
位置
选取和地址模糊查询_
html
地图
...
本文详细讲解了如何使用 `JQuery+
HTML
+
JavaScript
` 实现移动端页面中的
地图
位置
选取功能。本文逐步展...
赞
踩
article
【Web
前端
】如何自己写一个
AI
聊天
机器人
——
小爆
AI
(
html
+
css
+
js
源码实例)_
ai
聊天
框...
HTML+CSS+JavaScript
前端
开发人员,照样能够写出懂你的
AI
聊天
机器人
!_
ai
聊天
框自动回复
html
怎么实...
赞
踩
article
htt
p
://
www
.
doc88
.com/
p
-203939126010.
html
...
组播原理!转载于:
htt
p
s://
www
.cnblogs.com/HuiLove/
p
/4142101.
html
_n94
p
...
赞
踩
article
html
请求
资源
不可
用
,
html
– Apache
Tomcat
:
请求
的
资源
()
不可
用
(同时获取应该...
这是我的第一个问题(所以要温柔:)).我到处寻找,无法找到问题的答案(在此过程中也有点疯狂).我正在为Java EE开发...
赞
踩
article
html
请求
资源不可用,
HTTP
状态404 -
请求
的资源(/
BookStore
/
index
.htm...
I'm working with my web application and it uses JBoss 7 AS a...
赞
踩
article
html
请求资源不可用,动态
Web
应用程序
请求的资源(/
helloWorld
/
index
.
html
)...
使用Eclipse + JBoss + RESTEasy创建了一个动态
Web
应用程序
,用于处理新项目。试图让shell运...
赞
踩
article
html
判断
token
,(
html
)
前端
如何验证
token
的合法性来
判断
用户
是否登录?...
问题:(
html
)
前端
如何验证
token
的合法性来
判断
用户
是否登录?描述:1、我使用了JWT的方式,后端生成了一个tok...
赞
踩
article
JQuery
+
HTML
+
JavaScript
:实现
地图
位置
选取
和地址模糊查询_百度
地图
js选择
位置
...
本文详细讲解了如何使用 `
JQuery
+
HTML
+
JavaScript
` 实现移动端页面中的
地图
位置
选取
功能。本文逐步展...
赞
踩
article
warn
in
g:
in
the work
in
g
copy
of ‘文件路径‘,
LF
will
be...
这个警告信息通常出现在使用
G
it
进行版本控制时,提示在工作副本中的某个文件或目录中,存在行尾结束符(EOL)的不一致问题...
赞
踩
article
HTML
5
期末大
作业
:
农庄
介绍
网站
设计
——特色
农庄
介绍
(6页)
HTML
+
CSS
+JavaScrip...
这是一个
HTML
5
期末大
作业
,
设计
了一个6页的
农庄
介绍
网站,涵盖
HTML
+
CSS
+
JavaScript
技术。网站展示了特...
赞
踩
article
个人
博客
搭建保姆级教程-
HTML
页面
编写篇
_
博客
页面
html
...
文章模板下载与修改
_
博客
页面
html
博客
页面
html
选择模板 首先我们要选一个好的...
赞
踩
相关标签
javascript
xhtml
数据库
ViewUI
html
session
css
前端
vscode
html5
面试
前端基础面试
html/css
jquery
bmap
位置选取
模糊查询
人工智能
物联网
sqlite
网络协议
数据可视化
flask