npm 包 modern-webcamjs 使用教程

介绍

modern-webcamjs 是一个基于浏览器的现代摄像头捕捉技术的 npm 包。它提供了简单易用的 API,方便开发者快速集成摄像头在网站中的基本功能。

安装

可以使用 npm 进行安装:

--- ------- ---------------

基本用法

使用 modern-webcamjs 需要先实例化 Webcam 类,并为其提供要显示视频的元素的选择器。下面是一个简单的演示:

--------- -----
------
  ------
    ------------- ------------
    ------- -------------------------------------------------
  -------
  ------
    ------ ------------ -------- -----------------

    --------
      ----- ------ - --- -------------------

      --------------
        -------- -- ------------------- ------- ----------------
        ------------ -- -------------------- -------- -------- ------
    ---------
  -------
-------

以上代码演示了如何在页面中使用 modern-webcamjs。首先我们在 <head> 中引入 modern-webcamjs。然后在 <body> 中创建一个 <video> 元素,id 属性为 "myVideo"。接着通过 JavaScript 创建了一个 Webcam 类的实例,并将 '#myVideo' 作为参数传递给构造函数。最后使用 start() 方法启动摄像头。

API

Webcam 类提供了一些方法和事件,用于控制和监视摄像头:

启动摄像头

使用 start() 方法启动摄像头。它返回一个 Promise,该 Promise 在摄像头启动后解决,或者在发生错误时被拒绝。

----- ------ - --- -------------------

--------------
  -------- -- ------------------- ------- ----------------
  ------------ -- -------------------- -------- -------- ------

关闭摄像头

使用 stop() 方法关闭摄像头。

----- ------ - --- -------------------

---------------

-- ---- ---- ---

--------------

拍照

使用 snap() 方法拍照。它返回一个 Promise,该 Promise 在图片捕捉后解决,并将图片数据作为参数传递给解决函数。如果捕捉图片时发生错误,则 Promise 会被拒绝。

----- ------ - --- -------------------

---------------

-- ---- --- ---- -- ----- --------- ------
----- ------ - -----------------------------------------

-------------------------------- ----- -- -- -
  --- -
    ----- --------- - ----- --------------
    ------------------ ------- -----------
  -
  ---------- -
    -------------------- --------- ------- -----
  -
---

监听视频

摄像头视频数据可以通过 video 元素的 srcObject 属性来获取。使用 addEventListener() 方法监听 "play" 事件,当视频准备播放时会触发该事件。可以在该事件处理程序中获取视频数据。

----- ------ - --- -------------------

---------------

----- ------------ - -----------------------------------

------------------------------------- -- -- -
  ----- ------------- - ---------------------------------
  ----- ------------- - -------------------------------
  ----- ----- - ------------------------
  ----- ------ - -------------------------
  ------------------- - ------
  -------------------- - -------

  -------------- -- -
    ------------------------------------- -- -- ------ --------
    ----- --------- - ----------------------------- -- ------ --------
    ------------------ ------- -----------
  -- ----
---

示例

下面是一个示例,演示了如何使用 modern-webcamjs 拍照。

--------- -----
------
  ------
    ------------- ------------
    ------- -------------------------------------------------
    -------
      -------- -
        -------- ------
        -------------- -----
      -
      -------------- -
        -------- ------
        ----------- -----
      -
    --------
  -------
  ------
    ------ ------------ ----------- ------------ -------- -----------------
    ------- -----------------------------------

    --------
      ----- ------ - --- -------------------

      --------------
        -------- -- ------------------- ------- ----------------
        ------------ -- -------------------- -------- -------- ------

      ----- ------ - -----------------------------------------

      -------------------------------- ----- -- -- -
        --- -
          ----- --------- - ----- --------------
          ------------------ ------- -----------
        -
        ---------- -
          -------------------- --------- ------- -----
        -
      ---
    ---------
  -------
-------

结论

modern-webcamjs 是一个非常实用的 npm 包,它提供了方便易用的 API,能够帮助开发者快速集成摄像头在网站中的基本功能。本篇文章详细介绍了 modern-webcamjs 的使用方法和 API,同时给出了实用的示例代码。希望能够对读者有所学习和指导意义。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005668081e8991b448e2930


猜你喜欢

  • npm 包 light-fetch 使用教程

    介绍 light-fetch 是一个轻量级的 JavaScript fetch 封装库,可以轻松地使用 fetch 进行 AJAX 请求。它具有以下优点: 封装了标准 fetch API,使用起来非...

    3 年前
  • npm 包 simplescrollup 使用教程

    简介 simplescrollup 是一个简单易用的 JavaScript 库,能够在网页下方添加一个滚动到顶部的按钮。它能够与 jQuery 和 Zepto 等主流 JavaScript 库兼容,并...

    3 年前
  • npm 包 react-router-v5-codemod 使用教程

    在前端开发中,React 是目前最流行的 UI 框架之一。而在 React 开发过程中,路由是必不可少的一个部分。而 react-router 是 React 中最常用的路由库之一。

    3 年前
  • npm 包 node-red-contrib-textanalytics-ja 使用教程

    在现代前端开发中,文本分析技术的应用变得越来越广泛,因为当下的用户需要可靠的自然语言处理实现他们的日常业务需求。Node-RED 是 Node.js 编写的,基于流数据编程的开发工具,为前端设计者提供...

    3 年前
  • npm 包 phunctional 使用教程

    JavaScript 是一门十分灵活的编程语言,它的生态系统包括许多开源的 npm 包。在前端开发中,有一个叫做 phunctional 的 npm 包,它为我们提供了函数式编程的工具和友好的 API...

    3 年前
  • 前端技术文章:npm 包 deer-console 使用教程

    在前端开发中,我们经常需要在控制台输出一些调试信息或者测试结果。为了方便我们的操作和提高效率,有很多 npm 包可以使用。而这篇文章要介绍的就是一个非常实用的 npm 包:deer-console。

    3 年前
  • npm 包 yeps-router 使用教程

    在前端开发的过程中,路由是一个重要的概念。路由的作用是将用户请求的 URL 映射为具体的页面或状态。为了实现前端路由,我们可以使用第三方库来简化开发过程。其中,yeps-router 是一款易用且灵活...

    3 年前
  • npm 包 12345testmodule 使用教程

    简介 npm 是一个 Node.js 的模块管理器,可以让开发者轻松的重新使用包含在代码中的常用代码,但是为了方便分享和安装,我们需要使用一个包管理器来管理这些包。

    3 年前
  • npm 包 finbox-cli 使用教程

    在前端开发中,我们经常使用各种工具来提高开发效率。而 npm 是现在最流行的包管理器之一,许多前端开发人员喜欢使用 npm 来安装和使用各个库和工具。 finbox-cli 是一个基于 npm 的命令...

    3 年前
  • npm 包 silver-qr-member 使用教程

    在前端开发中,我们经常需要使用到二维码生成,其中一个比较常用的库就是 silver-qr-member。本文将介绍如何使用该库,并提供详细的示例代码。 安装 在使用 silver-qr-member ...

    3 年前
  • npm 包 associated-icon 使用教程

    什么是 associated-icon? associated-icon 是一个可以用于获取网站关联图标的 npm 包,它能从 HTML 标签、HTTP 头信息、以及搜索默认标签等多个途径来查找图标,...

    3 年前
  • npm 包 react-native-global-modal 使用教程

    React Native 是当前比较流行的跨平台移动应用开发框架,它可以让开发者使用 JavaScript 创建原生应用。React Native 中提供了很多组件,但是在某些场景下需要使用 Moda...

    3 年前
  • npm 包 card-inal 使用教程

    card-inal 是一个可以帮助前端开发者快速构建卡片式布局的 npm 包。使用这个包,您可以轻松地在您的项目中创建响应式卡片布局,使您的页面风格更为美观,同时提升网页的用户体验。

    3 年前
  • npm 包 @naktibalda/testmybot 使用教程

    前言 随着人工智能、机器学习等技术的不断发展,聊天机器人成为了越来越受欢迎的应用之一。而对于前端开发人员,如何进行有效的测试成为了这种应用的重要部分。 在这个过程中,使用 @naktibalda/te...

    3 年前
  • npm 包 create-o-app 使用教程

    在前端开发中,我们经常需要从头开始构建一个新项目。这通常涉及创建项目目录结构、配置 package.json 文件、安装各种依赖项等一系列繁琐的操作。为了减少这些工作量,npm 社区提供了许多能够帮助...

    3 年前
  • npm 包 @aboveyou00/markdown-it 使用教程

    在前端开发中,我们会需要将文本内容渲染成 HTML 格式,Markdown 是一种非常常见的格式。而 @aboveyou00/markdown-it 是一个优秀的 Markdown 渲染工具,本文将介...

    3 年前
  • npm 包 hyper-papercolor 使用教程

    简介 hyper-papercolor 是一个基于 PaperColor 主题的 Hyper 终端主题。它可以让你的终端看起来更加优雅和美观,非常适合前端工程师使用。

    3 年前
  • npm 包 @marudor/enzyme-adapter-react-16 使用教程

    前言 React 是现在非常流行的前端框架之一。在 React 的生态系统中,Enzyme 是一个非常实用的测试库,它可以帮助开发者进行 React 组件的单元测试、集成测试等。

    3 年前
  • npm 包 @sssserve/framework 使用教程

    在前端开发中,有很多工具和框架可供选择,其中不可避免地要使用一些第三方包。本文介绍了一个常用的 npm 包 @sssserve/framework,包含详细的使用教程和示例代码,旨在帮助前端开发者更好...

    3 年前
  • NPM 包 babel-preset-moer 使用教程

    babel-preset-moer 是一个能够在 JavaScript 代码转换中使用的 Babel 插件。它为开发者提供了更多的 JavaScript 特性和语法糖,能够更方便、简单地编写 Java...

    3 年前

相关推荐

    暂无文章