当前位置:网站首页>JS调用摄像头
JS调用摄像头
2022-07-06 09:25:00 【星时代曹波涛】
<!doctype html>
<html lang="en">
<head>
<title>GET VIDEO</title>
<meta charset="utf-8">
</head>
<body>
<input type="button" title="开启摄像头" value="开启摄像头" onclick="getMedia()" />
<video id="video" width="500px" height="500px" autoplay="autoplay"></video>
<canvas id="canvas" width="500px" height="500px"></canvas>
<button id="snap" onclick="takePhoto()">拍照</button>
<script> //获得video摄像头区域 let video = document.getElementById("video"); function getMedia() {
let constraints = {
video: {
width: 500, height: 500}, audio: true }; /* 这里介绍新的方法:H5新媒体接口 navigator.mediaDevices.getUserMedia() 这个方法会提示用户是否允许媒体输入,(媒体输入主要包括相机,视频采集设备,屏幕共享服务,麦克风,A/D转换器等) 返回的是一个Promise对象。 如果用户同意使用权限,则会将 MediaStream对象作为resolve()的参数传给then() 如果用户拒绝使用权限,或者请求的媒体资源不可用,则会将 PermissionDeniedError作为reject()的参数传给catch() */ let promise = navigator.mediaDevices.getUserMedia(constraints); promise.then(function (MediaStream) {
video.srcObject = MediaStream; video.play(); }).catch(function (PermissionDeniedError) {
console.log(PermissionDeniedError); }) } function takePhoto() {
//获得Canvas对象 let canvas = document.getElementById("canvas"); let ctx = canvas.getContext('2d'); ctx.drawImage(video, 0, 0, 500, 500); } </script>
</body>
</html>
边栏推荐
- 毕业才知道IT专业大学生毕业前必做的1010件事
- 学习记录:使用STM32F1看门狗
- Research Report on market supply and demand and strategy of China's Medical Automation Industry
- How to build a nail robot that can automatically reply
- Accounting regulations and professional ethics [1]
- 0 - 1 problème de sac à dos (1)
- Word macro operation: convert the automatic number in the document into editable text type
- Jupyter installation and use tutorial
- UCORE LaB6 scheduler experiment report
- Eslint--- error: newline required at end of file but not found (EOL last) solution
猜你喜欢
Intensive learning notes: Sutton book Chapter III exercise explanation (ex17~ex29)
洛谷P1102 A-B数对(二分,map,双指针)
Learning record: Tim - Basic timer
学习记录:使用STM32外部输入中断
学习记录:TIM—基本定时器
ucore lab 2
Crawler series (9): item+pipeline data storage
D - Function(HDU - 6546)女生赛
FSM and I2C experiment report
Brief introduction to libevent
随机推荐
Alice and Bob (2021牛客暑期多校训练营1)
Research Report on medical anesthesia machine industry - market status analysis and development prospect prediction
Intensive learning notes: Sutton book Chapter III exercise explanation (ex17~ex29)
Learning record: STM32F103 clock system overview working principle
LeetCode#204. Count prime
力扣刷题记录
用C语言写网页游戏
Eslint--- error: newline required at end of file but not found (EOL last) solution
LeetCode#2062. Count vowel substrings in strings
基于485总线的评分系统
Learning record: Tim - capacitive key detection
Cost accounting [17]
STM32如何使用STLINK下载程序:点亮LED跑马灯(库版本)
Learning record: USART serial communication
Cost accounting [13]
Want to change jobs? Do you know the seven skills you need to master in the interview software test
ucorelab4
Take you to use wxpy to create your own chat robot (plus wechat interface basic data visualization)
C4D quick start tutorial - Introduction to software interface
Cost accounting [14]