MediaFragmentRecorder
Record media fragments (by guest271314)
mediacapture-record
MediaStream Recording (by w3c)
MediaFragmentRecorder | mediacapture-record | |
---|---|---|
7 | 3 | |
12 | 103 | |
- | 4.9% | |
10.0 | 2.6 | |
about 4 years ago | about 1 year ago | |
HTML | Bikeshed | |
- | GNU General Public License v3.0 or later |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
MediaFragmentRecorder
Posts with mentions or reviews of MediaFragmentRecorder.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-20.
-
MP4 File and the Range Request Header
See also https://developer.chrome.com/en/articles/webcodecs/. FWIW Some experiments (see branches) I did creating media fragments in the browser https://github.com/guest271314/MediaFragmentRecorder.
-
How to create a seamless loop for a looping video?
There are multiple ways to achieve the requirement, see the branches of this repository https://github.com/guest271314/MediaFragmentRecorder/.
-
Browser video player that can stich together video files and play them as one without rendering new video?
The requirement is pssible. You can use RTCRtpSender.replaceTrack(), among other options. This repository is dedicated to that purpose https://github.com/guest271314/MediaFragmentRecorder.
-
Trying to record off a canvas, but bitrate is very low; high values are ignored.
You can use Image Capture API to get images from a MediaStreamTrack https://github.com/guest271314/MediaFragmentRecorder/tree/imagecapture-audiocontext-readablestream-writablestream.
-
Preview feature of a video editor
You can use Media Fragment URI https://www.w3.org/TR/media-frags/ to play specific time slices of videos, or RTCRtpSender.replaceTrack() to merge specific time slices of discrete videos into a single media stream, see https://github.com/guest271314/MediaFragmentRecorder/blob/webrtc-replacetrack/MediaFragmentRecorder.html.
- Programmatically Creating a Video Stream?
-
How do websites like Netflix prevent screenshots?
No. It can't. I can capture anything on my screen with navigator.mediaDevides.getDisplayMedia({video: true}) alone https://github.com/guest271314/screenshot, or other means. If I wanted to, I can capture audio as well, with several different approaches, respectively https://github.com/guest271314/captureSystemAudio; and both in a single video, or multiple vides merged into one https://github.com/guest271314/MediaFragmentRecorder.
mediacapture-record
Posts with mentions or reviews of mediacapture-record.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-18.
-
How do I Effectively Capture Video playing in Canvas?
Courtesy of this GitHub thread, my currently working, but very inconvenient strategy to capture the video is to use mediaCapture(0) on the canvas element with MediaStreamTrackProcessor to pipe frames into WebM muxer from a package called webm-muxer.
-
How to create a seamless loop for a looping video?
WebRTC's RTCRtpSender.replaceTrack() method achieves "seamless" replacement of a MediaStreamTrack. I proposed the same be added to MediaRecorder, see Add replaceTrack method to MediaRecorder., Add replaceStream to MediaRecorder.
-
FFmpeg for browser and node, powered by WebAssembly
I guess this could be used to remux the broken files that are spitted by the MediaRecorder API, which have missing metadata that prevents from seeking and thus far has been ignored / sweeped away in Chrome [1], Firefox [2], and even the standard itself [3], which ignored in its design the basic fact that encoding any file should include a "closing" stage (where metadata is written) before yielding it as a finished file.
[1]: https://bugs.chromium.org/p/chromium/issues/detail?id=642012
[2]: https://bugzilla.mozilla.org/show_bug.cgi?id=1283464
[3]: https://github.com/w3c/mediacapture-record/issues/119
What are some alternatives?
When comparing MediaFragmentRecorder and mediacapture-record you can also consider the following projects:
captureSystemAudio - Capture system audio ("What-U-Hear")
reference-types - Proposal for adding basic reference types (anyref)
screenshot - Screenshots
assemblyscript - A TypeScript-like language for WebAssembly.
mediacapture-transform - MediaStreamTrack Insertable Media Processing using Streams
rust-ffmpeg-wasi - ffmpeg 7 libraries precompiled for WebAsembly/WASI, as a Rust crate.
webm-writer-js - JavaScript-based WebM video encoder for Google Chrome
tinyglitch - Just an experiment with libavformat/libavcodec
MediaFragmentRecorder vs captureSystemAudio
mediacapture-record vs reference-types
MediaFragmentRecorder vs screenshot
mediacapture-record vs assemblyscript
MediaFragmentRecorder vs mediacapture-transform
mediacapture-record vs rust-ffmpeg-wasi
MediaFragmentRecorder vs webm-writer-js
mediacapture-record vs mediacapture-transform
mediacapture-record vs tinyglitch