如何用JavaScript实现调用网络摄像头并有效处理常见错误?

2026-04-09 13:060阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1420个文字,预计阅读时间需要6分钟。

如何用JavaScript实现调用网络摄像头并有效处理常见错误?

由于业务原因,需要在Web端页面接入各类网络摄像头,遇到了许多困扰的问题。主要是关于摄像头品牌识别和分辨率分析的问题。

最近由于业务的原因,需要在Web端页面接入调试各类的网络摄像头,遇到了很多匪夷所思的问题(说的就是读得出摄像头的品牌,读不出摄像头的分辨率)。于是整理了这篇文章作为备忘录,也希望能帮到有类似的小伙伴们。

基础代码

navigator.mediaDevices.getUserMedia({ audio: false, video: true }).then(async (stream) => { let video = document.getElementById('#video') // 兼容性监测 if( 'srcObject' in video ) { video.srcObject = stream } else { // 在支持srcObject的浏览器上,不再支持使用这种方式 video.src = URL.createObjectURL(stream) } await video.play() })

兼容性

从caniuse的兼容性来看,整体兼容性一般,IE系列浏览器完全不支持,iOS不仅需要iOS 11以上的版本,而且在APP的嵌入式页面也无法通过api进行调用。

阅读全文

本文共计1420个文字,预计阅读时间需要6分钟。

如何用JavaScript实现调用网络摄像头并有效处理常见错误?

由于业务原因,需要在Web端页面接入各类网络摄像头,遇到了许多困扰的问题。主要是关于摄像头品牌识别和分辨率分析的问题。

最近由于业务的原因,需要在Web端页面接入调试各类的网络摄像头,遇到了很多匪夷所思的问题(说的就是读得出摄像头的品牌,读不出摄像头的分辨率)。于是整理了这篇文章作为备忘录,也希望能帮到有类似的小伙伴们。

基础代码

navigator.mediaDevices.getUserMedia({ audio: false, video: true }).then(async (stream) => { let video = document.getElementById('#video') // 兼容性监测 if( 'srcObject' in video ) { video.srcObject = stream } else { // 在支持srcObject的浏览器上,不再支持使用这种方式 video.src = URL.createObjectURL(stream) } await video.play() })

兼容性

从caniuse的兼容性来看,整体兼容性一般,IE系列浏览器完全不支持,iOS不仅需要iOS 11以上的版本,而且在APP的嵌入式页面也无法通过api进行调用。

阅读全文