我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JavaScript中怎么访问设备摄像头

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JavaScript中怎么访问设备摄像头

JavaScript中怎么访问设备摄像头,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

如何使用相机

要访问用户的相机(或麦克风),我们使用JavaScript MediaStream API。该API允许通过流访问这些设备捕获的视频和音频。

第一步是检查浏览器是否支持此API:

if (   "mediaDevices" in navigator &&   "getUserMedia" in navigator.mediaDevices ) {   // ok, 浏览器支持它 }

在现代浏览器中,支持是不错的(当然没有Internet Explorer)。

捕获视频流

要捕获由摄像机生成的视频流,我们使用 mediaDevices 对象的 getUserMedia  方法。这个方法接收一个对象,其中包含我们要请求的媒体类型(视频或音频)和一些要求。首先,我们可以通过 {video: true} 来获取摄像机的视频。

const videoStream = await navigator.mediaDevices.getUserMedia({ video: true });

此调用将询问用户是否允许访问摄像机。如果用户拒绝,它将引发异常并且不返回流。因此,必须在 try/catch 块内完成处理这种情况。

JavaScript中怎么访问设备摄像头

请注意,它返回一个Promise,因此您必须使用 async/await 或 then 块。在Mac OS系统上还会弹出授权。

JavaScript中怎么访问设备摄像头

没错,我使用的是Mac版的Edge浏览器

点击“好”,就可以访问电脑摄像头了,控制台输出的 videoStream 对象如下

JavaScript中怎么访问设备摄像头

视频规格(requirements)

我们可以通过传递有关所需分辨率以及最小和最大限制的信息来改善视频的要求:

const constraints = {   video: {     width: {       min: 1280,       ideal: 1920,       max: 2560,     },     height: {       min: 720,       ideal: 1080,       max: 1440,     },   }, };  const videoStream = await navigator.mediaDevices.getUserMedia(constraints);

这样,流以正确的宽度和高度比例进入,如果它是处于纵向模式的手机,则需要进行尺寸反转。

在页面上显示视频

既然有了流,我们该如何处理?

我们可以在页面上的 video 元素中显示视频:

// 页面中有一个 <video autoplay id="video"></video> 标签 const video = document.querySelector("#video"); const videoStream = await navigator.mediaDevices.getUserMedia(constraints); video.class="lazy" data-srcObject = videoStream;

请注意 video 标签中的自动播放属性 autoplay,没有它,你需要调用 video.play() 才能真正开始显示图像。

JavaScript中怎么访问设备摄像头

访问手机的前后摄像头

默认情况下,getUserMedia 将使用系统默认的视频录制设备。如果是有两个摄像头的手机,它使用前置摄像头。

要访问后置摄像头,我们必须在视频规格中包括 faceModeMode:"environment":

const constraints = {   video: {     width: { ... },     height: { ... },     facingMode: "environment"   }, };

默认值为 faceingMode:"user",即前置摄像头。

需要注意的是,如果你想在已经播放视频的情况下更换摄像机,你需要先停止当前的视频流,然后再将其替换成另一台摄像机的视频流。

videoStream.getTracks().forEach((track) => {   track.stop(); });

截屏

你可以做的另一件很酷的事情是捕获视频的图像(屏幕快照)。

你可以在canvas上绘制当前视频帧,例如:

// 页面中有一个 <canvas id="canvas"></canvas> 标签 const canvas = document.querySelector("#canvas"); canvas.width = video.videoWidth; canvas.height = video.videoHeight; canvas.getContext("2d").drawImage(video, 0, 0);

你还可以在 img 元素中显示画布内容。

在本教程创建的示例中,我添加了一个按钮,该按钮可从画布动态创建图像并将其添加到页面:

const img = document.createElement("img"); img.class="lazy" data-src = canvas.toDataURL("image/png"); screenshotsContainer.prepend(img);

完整代码

在线效果及源代码,源代码并不多,很简单,相信只要有点Javascript基础都能看懂。需要的请复制下面的链接,或私信关键字:摄像头。

JavaScript中怎么访问设备摄像头

https://coding.zhangbing.site/view.html?url=./list/camera-api/index.html

手机QQ中浏览效果

JavaScript中怎么访问设备摄像头

看完上述内容,你们掌握JavaScript中怎么访问设备摄像头的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JavaScript中怎么访问设备摄像头

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

云服务器怎么用摄像头监控设备的摄像

云服务器中的摄像头可以通过网络访问,以便监控设备的状态和活动。以下是一些常见的用摄像头监控设备的摄像功能:Dropout:在摄像头监控设备中,您可以使用Dropout(暂停)功能将其从服务或应用程序的网络位置中移除,以避免占用过多带宽。Webview:Webview(网页应用程序)是一种使用摄像头进行监控的方式。您可以使用Webview在本地或远程访问摄像头,以监控设备的使用状况和活动。GoogleCloud:GoogleCloud(谷歌云)是一种云服务,可用...
2023-10-27

云服务器怎么用摄像头监控设备的摄像机

使用摄像头监控设备时,需要先连接摄像头并将其接入云服务器。在连接摄像头时,需要将摄像头的IP地址、端口号、协议等信息与云服务器进行绑定,以便云服务器可以通过网络将摄像头的视频数据推送到指定的监控场所。在绑定IP地址时,需要根据实际情况选择合适的绑定方式,比如通过WiFi、蓝牙、4G等方式进行绑定。在绑定端口号时,需要确
云服务器怎么用摄像头监控设备的摄像机
2023-10-28

云服务器怎么用摄像头监控设备的摄像机看

使用云服务器来进行摄像头监控云服务器是一种常见的云计算服务,可以提供大量的计算资源和存储空间,以及高度可扩展性和可管理性。使用云服务器来进行摄像头监控非常方便,只需要将摄像头设备上传到云服务器上,然后将摄像头数据上传到云服务器的服务器端,就可以在云服务器上查看摄像头的监控数据了。使用云服务器来远程监控摄像头设备在进行摄
云服务器怎么用摄像头监控设备的摄像机看
2023-10-27

云服务器怎么连接摄像头设备

如果您的云服务器提供支持连接摄像头设备,您可以通过以下步骤连接摄像头设备:打开您的云存储服务(例如:DropboxDrive或其他在线服务),并将文件添加到您选择的文件夹中。登录您的云存储账户并选择要连接的摄像头设备。在出现的“设备选择”对话框中,选择您要连接的摄像头设备。在出现的“连接到摄像头设备”对话框中,确认您已设置了“启用”或“关闭”设备,并设置了连接类型和密码。当您连接到摄
2023-10-26

云服务器怎么用摄像头监控设备录像

使用云服务器来录制设备录像的具体方法可能因云服务器的功能和使用场景而异。以下是一些可能适用的步骤和建议:步骤一:登录云服务器。在需要录制视频的设备上,使用“录制按钮”或“开始录制”按钮进行登录。步骤二:选择需要录制的文件夹。在云服务器中,通常提供三个可用于录制视频的文件夹:“视频”、“文件”和“控制面板”。您可以通过这些文件夹来创建需要录制的视频。步骤三:设置录制参数。在录制视频时,您需
2023-10-26

云服务器怎么用摄像头监控设备

使用云服务器来监控设备是非常常见的,以下是一些使用摄像头监控设备的简单步骤:打开摄像头:打开电脑中的摄像头(如谷歌Camera、Camera360等),然后在浏览器中搜索摄像头并登录。设置监视选项:在摄像头控制页面中,选择“查看选项”,然后选择“监视我的设备”选项。在此页面中,可以设置监视摄像头的时间、摄像头的图标和其他一些选项。添加监控点:在添加监视点页面中,可以选择添
2023-10-26

云服务器怎么连接摄像头设备上

如果您的云服务器提供支持连接摄像头设备,您可以通过以下步骤连接摄像头设备:打开您的云存储服务(例如:Dropbox,GoogleDrive或MicrosoftCloud)。在您的云存储服务登录界面,点击左侧的“登录”按钮。点击“登录时连接”按钮,进入“选择摄像头设备”页面。选择您需要连接的摄像头设备,例如相机或摄像头,然后点击“同意”按钮。您的云服务器会开始连接相机或摄像头设备。
2023-10-26

云服务器怎么用摄像头监控设备的摄像功能打开

一、安装云服务器要想使用摄像头监控设备的摄像功能,首先需要在云服务器上安装一个名为"MyController"的新用户。这个用户可以是个人用户或者企业用户,在登录之后,可以创建一个名为"my_view"的新视图,这个视图可以用于查看云服务器上的摄像头。二、配置云服务器接下来,需要配置云服务器,使其能够支持摄像头的监控功
云服务器怎么用摄像头监控设备的摄像功能打开
2023-10-28

云服务器怎么用摄像头监控设备录像的

使用云服务器来录制设备录像是非常有用的,因为它可以让您在任何地方实时监测和记录设备运行情况。以下是一些使用云服务器进行录制设备录像的步骤和方法:连接设备:首先需要将云服务器与您的设备连接起来。在开始录制之前,请确保您的设备已经与网络连接,并且能够访问互联网。导入设备录像:将设备录像文件导入到云服务器中。请确保您正在运行的是一个DirectX9或更新版本,并且文件名中没有中文。导出录制视频:如果您使用的是DirectX...
2023-10-27

云服务器怎么用摄像头监控设备的录像

使用云服务器来监控设备的录像,需要注意以下几点:选择可靠的云服务器提供商:选择提供高质量视频存储和视频录制功能的云服务器提供商,这样可以确保录像的质量和稳定性。使用云服务器提供的录像功能:录像可以在云服务器上进行录制,这样可以确保所有的录像都保存在同一个磁盘上,同时可以随时进行访问和编辑。注意录像的访问权限:录像需要经过访问控制机制,如用户名密码认证和授权,这样有助于保护录像的安全和隐私。选择高清晰度的录像...
2023-10-27

云服务器怎么连接摄像头监控设备

如果您要连接云服务器,请确保在您的网络连接中启用了HTTPS(安全套接字层)协议,以确保该服务器上的所有监控摄像头的连接都是加密的,以防止未经授权的访问或篡改。您可以使用以下步骤来启用HTTPS连接:启用HTTPS连接:在访问HTTPS网站之前,请确保您已经启用了云服务器的HTTPS连接。检查HTTPS设置:检查您的WHQL表单页面上是否已经启用了HTTPS。您可以在URL中包括"http
2023-10-26

云服务器怎么用摄像头监控设备的

使用云服务器来监控设备通常可以分为以下几步:安装必要的监控软件(如GoogleCloud、AmazonElastic、OpenHosting),以监控设备的运行情况和网络连接等。登录云服务器并设置监控设置。通常需要将监控设置保存为云服务器的默认值,以便在发生问题时能够快速获取帮助。使用云服务器的摄像头监控软件来监控设备。这类软件通常可以在AmazonElastic、OpenHosting
2023-10-26

云服务器怎么使用摄像头监控设备

使用云服务器来监控摄像头设备的方法非常简单,以下是一些基本步骤:连接摄像头设备:首先要确保您的计算机具有互联网连接,并通过https://ipcamera.com/进行连接。设置摄像头设备:首先需要在您的计算机上设置一个网络摄像头,然后在摄像头名称或IP地址下方的方框内输入您的摄像头IP地址或者域名,例如https://ipcamera.com/。设置监视目录:在网络摄像头上方的菜单栏中点击“高级
2023-10-26

本地摄像头怎么连接云服务器设备

下面是一种简单的连接方式:首先,我们需要准备好摄像头所需要的硬件设备,比如摄像头模组、电源、数据传输线等等。接着,我们需要安装云服务器提供的控制端软件,在控制端软件中设置好本地云服务器的IP地址和端口号。然后,在本地的云服务器上安装云服务器软件的客户端软件,并配置好云服务器的IP地址和端口号。最后,将摄像头的IP地址和
本地摄像头怎么连接云服务器设备
2023-10-28

云服务器怎么连接摄像头设备管理

云服务器上的摄像头设备管理是非常复杂的,需要遵循以下步骤:下载和安装软件:在云服务提供商的网站或者客户端中找到摄像头应用程序并下载并安装。这将允许用户连接并管理他们的摄像头设备。连接摄像头设备:在连接过程中,需要使用摄像头设备的IP地址或者域名。确保将IP地址和域名与云服务器的域名或IP地址对应,以便云服务器能够识别和验证摄像头设备。打开摄像头应用程序:使用摄像头应用程序管理他们的设备,
2023-10-26

云服务器怎么连接摄像头设备教程

首先,需要确定您想连接的摄像头设备是否支持云服务器,如果支持,那么可以直接使用其API接口进行连接。如果不支持云服务器,需要准备以下几个相关的连接信息:设备IP地址、MAC地址和端口号云服务器IP地址、域名和端口号云服务器端口号摄像头ID、名称、连接方式、使用的账号、密码等信息在云服务器上创建摄像头设备连接,输入摄像头IP地址、MAC地址、端口号,填写摄像头设备的相关信息,
2023-10-26

云服务器怎么调用摄像头监控设备

要使用云服务器来调用摄像头监控设备,您需要在云服务器上安装相应的API。以下是在云服务器上使用API的一般步骤:打开并登录您的AWS云服务器。在您的API页面上,找到“Directory”页面,这将是您要调用摄像头监控设备的云服务器的主机名称。确保您正在使用的主机名与您要调用的API名称相同。在“Directory”页面上,选择“Startup”选项卡,并选择您正在使用的主机。在“St
2023-10-26

云服务器怎么调用摄像头监控设备呢

要使用云服务器来调用摄像头监控设备,您需要以下步骤:打开摄像头监控设备的控制台:首先,您需要先打开摄像头监控设备的控制台,然后在控制台中创建一个新的管理员帐户。导入摄像头监控设备:在使用云服务器之前,请确保您已经成功导入了摄像头监控设备的控制信息,如IP地址、摄像头编号、摄像头ID等。创建新的摄像头监控设备:在使用云服务器之前,您需要为摄像头监控设备创建一个新的默认监控端口,并将其设置为
2023-10-26

云服务器怎么使用摄像头麦克风设备

使用云服务器的摄像头麦克风设备需要具备以下几个步骤:准备摄像头麦克风设备:首先,需要准备好摄像头麦克风设备,并确保摄像头设备已正确连接至云服务器。打开设备电源并等待设备启动完成后,使用数据线将其连接至云服务器的网络接口。在云服务器的控制台中,可以看到有一个名为"麦克风设置"的选项,点击该选项进入麦克风设置页面。设置麦克风设备:在麦克风设置页面上,可以通过手动或自动的方式调整麦克风设置,包括麦克风的
2023-10-26

编程热搜

目录