H5使用input标签调用系统默许相机,摄像,录音功能。使用input:file标签, 去调用系统默认相机,摄像,录音功能,其实是有个capture属性,直接说明需要调用什么功能:
<input type="file" accept="image/*" capture="camera">
<input type="file" accept="video/*" capture="camcorder">
<input type="file" accept="audio/*" capture="microphone">
capture表示可以捕获到系统默认的设备,比如:camera--照相机;camcorder--摄像机;microphone--录音。如果需要设备的面向用户的摄像头拍摄可以使用capture="user"
input:file标签还支持一个multiple属性,表示可以支持多选,如:
<input type="file" accept="image/*" multiple>
加上这个multiple后,capture就没啥用了,因为multiple是专门用来支持多选的。
例子:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta name="HandheldFriendly" content="true" />
<meta name="MobileOptimized" content="320" />
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<title>input视频测试</title>
</head>
<body>
<!--拍照 <input id="myfile" type="file" name="file" accept="image/*" capture="camera"> -->
//拍视频
<input type="file" name="video" id="video-input" accept="video/*" capture="user" onchange="videoChange()" />
<span id='info'></span>
</p>
<video id="video" width='300' height="300" controls autoplay></video>
<script type="text/javascript">
function videoChange() {
var file = document.getElementById('video-input').files[0];
var fileSize = (Math.round(file.size / 1024)).toFixed();
document.getElementById('info').innerHTML += "所录视频大小约为:" + (fileSize / 1024).toFixed(2) + "Mb";
var url = URL.createObjectURL(file);
console.log(url);
document.getElementById("video").src = url;
}
</script>
</body>
</html>
js如何调用电脑的摄像头?使用js写了一个调用摄像头的demo,并用canvas显示保存。这个功能很实用,比如上传用户的头像,即时拍照及时上传。 代码需要托管到服务器端,即在客户端访问才能调用浏览器成功。
聊天应用你很可能会想调用前置摄像头,拍照软件那么你会更倾向于使用后置摄像头。在这篇文章中我们将探讨如何通过 mediaDevices API 和 media constraints (媒体约束) 选择或者切换摄像头
HTML5的getUserMedia API为用户提供访问硬件设备媒体(摄像头、视频、音频、地理位置等)的接口,基于该接口,开发者可以在不依赖任何浏览器插件的条件下访问硬件媒体设备。
关于html5调用音视频等多媒体硬件的API已经很成熟,不过一直找不到机会把这些硬件转化为实际的应用场景,不过近年来随着iot和AI的浪潮,我觉得软硬结合的时机已经成熟。那我们就提前熟悉下怎么操作这些多媒体硬件吧
h5调用摄像头进行拍照,目前主要有2种方式,一种是常规的利用form表单的type=file,另一种则是通过html5的getUserMedia API的方式,基于该特性, 开发者可以不依赖任何浏览器插件下去访问视频和音频等设备
内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!