1.0.5 • Published 6 years ago

@chanoch/react-webcam v1.0.5

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

react-webcam

Webcam component for React. See the can I use this feature site for browser support for media streams in HTML.

Note: Browsers will throw an warning if the page is loaded from insecure origin. i.e. Use https outside of development.

Installation

npm install @chanoch.com/react-webcam

Usage

import React from 'react';
import Webcam from 'react-webcam';

class Component extends React.Component {
  render() {
    return <Webcam/>;
  }
}

Props

proptypedefaultnotes
classNamestring''CSS class of video element
audiobooleantrueenable/disable audio
heightnumber480height of video element
widthnumber640width of video element
screenshotWidthnumberwidth of screenshot
styleobjectstyle prop passed to video element
screenshotFormatstring'image/webp'format of screenshot
onUserMediafunctionnoopcallback when component receives a media stream
onUserMediaErrorfunctionnoopcallback when component cannot receives any media stream width error param
screenshotQualitynumber0.92quality of screenshot(0 to 1)
audioConstraintsobjectMediaStreamConstraint(s) for the audio
videoConstraintsobjectMediaStreamConstraints(s) for the video

Methods

getScreenshot - Returns a base64 encoded string of the current webcam image. Example:

class WebcamCapture extends React.Component {
  setRef = (webcam) => {
    this.webcam = webcam;
  }

  capture = () => {
    const imageSrc = this.webcam.getScreenshot();
  };

  render() {
    const videoConstraints = {
      width: 1280,
      height: 720,
      facingMode: 'user',
    };

    return (
      <div>
        <Webcam
          audio={false}
          height={350}
          ref={this.setRef}
          screenshotFormat="image/jpeg"
          width={350}
          videoConstraints={videoConstraints}
        />
        <button onClick={this.capture}>Capture photo</button>
      </div>
    );
  }
}

License

MIT

Credits

Many thanks to @cezary for his work on this component.

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago