React-Webcamera
With the react-webcamera library you can simple implement a webcamera component. The difference to other webcamera components is that you have direct access to the video data and you can change it, filter it , do what ever you like...
Installation:
Using npm:
$ npm -i --save react-webcamera
Usage:
Example:
;;; { forlet i = 0; i < datalength; i+=4 let r = datai; let g = datai+1; let b = datai+2; let a = datai+3; var brightness = 3*r+4*g+b>>>3; datai = brightness; datai+1 = brightness; datai+2 = brightness; return data;} ReactDOM;
Properties:
Required properties:
width
: String/Number Width of the final webcamera component.
height
: String/Number Height of the final webcamera component.
Optional properties:
demo
: Boolean If set to true the intermediate canvas (with image data before filtering) is shown as well
filter
: Function A function that takes an array (the ImageData.data array) and returning an array with the changed image data.
Filter examples
I have published some example filter functions. They are situated in the folder node_modules/react-webcamera/lib/filter-demos
.
Source code
The source code before running babel is also publically available in the node_modules node_modules/react-webcamera/src
Support:
The component was tested in Chrome 61.0.3163.100/64-bit and Firefox 56.0 (64-bit). In Firefox an deprecation warning will be shown in the console. This will be fixed in the next minor release.