TPEPlatform/MediaRecorder
Summary
We already have mozCamera for take photo or video recording. mozCamera itself is not part of any standard web spec, which means
- It works on Firefox platform only.
- Totally isolate in media world. There is no way to connect data stream from mozCamera with media processing module, such as WebAudio, or recording module, such as MediaRecorder.
The following table reveals encode and associate container format we are going to support:
| Type | Encoder | Detailed | Container |
| Audio | Opus | mono/ stereo | Ogg |
| Vobis | mono/ stereo | Ogg | |
| AAC | MPEG-4 | ||
| PCM | mono/ stereo | Wave | |
| Video | H.264 | Baseline Profile | MPEG-4 |
| VP8 | WebM |
Encoder framework
Encoding framework META issues:
- bug 879688: [Meta] Implement MediaEncoder
- bug 842243: Implement Audio encoding path
- bug 879669: Implement Video encoding path
You may trace progress of recording via these three.
TODO: encoding pipeline diagram.
Codec/ Container support
B2G
| Milestone | Target | Issue | Assignee |
| (Audio) Opus/ OGG | Gecko 24 | bug 842243 | Shelly |
| (Video) H.264/ AAC/ MP4 | Gecko 28 | bug 879668 | |
| (Video) VP8/ Vobis/ WebM | Gecko 27 | bug 881840 | |
| (Video) VP9/ Opus/ WebM | ??/?? | TBD | |
Android
| Milestone | Target | Issue | Assignee |
| Opus/ OGG | 6/14 | bug 842243 | Shelly |
Linux
| Milestone | Target | Issue | Assignee |
| Opus/ OGG | 6/14 | bug 842243 | Shelly |
Windows
| Milestone | Target Date | Issue No | Assignee |
| Opus/ OGG | 6/14 | bug 842243 | Shelly |
Mac
| Milestone | Target Date | Issue No | Assignee |
| Opus/ OGG | 6/14 | bug 842243 | Shelly |
Reference
- Meeting Minutes
- MediaStream Recording
- Image Capture
- API for taking photo shot
- https://dvcs.w3.org/hg/dap/raw-file/tip/media-stream-capture/ImageCapture.html
- HTML media capture (only supports simple capture functionalities)
- Android JB encoder matrix
- iOS encorder matrix
- Firefox playback format