Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mafintosh/media-recorder-stream
The Media Recorder API in the browser as a readable stream
https://github.com/mafintosh/media-recorder-stream
Last synced: 13 days ago
JSON representation
The Media Recorder API in the browser as a readable stream
- Host: GitHub
- URL: https://github.com/mafintosh/media-recorder-stream
- Owner: mafintosh
- License: mit
- Created: 2016-05-18T15:19:30.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-07-04T08:25:17.000Z (4 months ago)
- Last Synced: 2024-10-23T08:29:36.886Z (20 days ago)
- Language: JavaScript
- Size: 8.79 KB
- Stars: 105
- Watchers: 6
- Forks: 16
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# media-recorder-stream
The [Media Recorder API](https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder) in the browser as a readable stream
```
npm install media-recorder-stream
```## Usage
``` js
const getMedia = require('getusermedia')
const Recorder = require('media-recorder-stream')getMedia({video: true, audio: true}, function (err, media) {
if (err) throw errconst stream = new Recorder(media, {interval: 1000})
stream.on('data', function (data) {
console.log('recorded video data:', data)
})// lets display the recorded video as well
video.src = URL.createObjectURL(stream.media)
video.autoplay = true
document.body.appendChild(video)
})
```## API
#### `const stream = new Recorder(media, options)`
`media` is a [`MediaStream` object](https://developer.mozilla.org/en-US/docs/Web/API/Media_Streams_API)
from the `getUserMedia` API.Options include
``` js
{
interval: 1000, // at which ms interval you want to capture video (defaults to 1s)
}
```All other options are passed to the Media Recorder constructor
#### `stream.destroy()`
Will destroy the recording stream
#### `stream.media`
The media source stream associated with this stream. You can create a blob url from this and pass it to a video tag to play the recorded video locally.
#### `stream.recorder`
The associated Media Recorder instance.
## License
MIT