* Commit updated Javascript packages * Bump preact from 10.5.4 to 10.5.5 in /build/javascript (#265) * Trying a new github workflow to install javascript packages * Bump tailwindcss from 1.9.2 to 1.9.4 in /build/javascript (#266) Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 1.9.2 to 1.9.4. - [Release notes](https://github.com/tailwindlabs/tailwindcss/releases) - [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/master/CHANGELOG.md) - [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v1.9.2...v1.9.4) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Commit updated Javascript packages * Bump preact from 10.5.4 to 10.5.5 in /build/javascript Bumps [preact](https://github.com/preactjs/preact) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/preactjs/preact/releases) - [Commits](https://github.com/preactjs/preact/compare/10.5.4...10.5.5) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Owncast <owncast@owncast.online> * Bump @justinribeiro/lite-youtube in /build/javascript Bumps [@justinribeiro/lite-youtube](https://github.com/justinribeiro/lite-youtube) from 0.9.0 to 0.9.1. - [Release notes](https://github.com/justinribeiro/lite-youtube/releases) - [Commits](https://github.com/justinribeiro/lite-youtube/commits) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com>
1.6 KiB
Media Source Extensions Notes
A collection of findings experimenting with Media Source Extensions on Chrome 36.
- Specifying an audio and video codec when creating a source buffer but passing in an initialization segment with only a video track results in a decode error
ISO Base Media File Format (BMFF)
Init Segment
A working initialization segment is outlined below. It may be possible to trim this structure down further.
ftypmoovmvhdtraktkhdmdiamdhdhdlrminf
mvex
Media Segment
The structure of a minimal media segment that actually encapsulates movie data is outlined below:
moofmfhdtraftfhdtfdttruncontaining samples
mdat
Structure
sample: time {number}, data {array} chunk: samples {array} track: samples {array} segment: moov {box}, mdats {array} | moof {box}, mdats {array}, data {array}
track chunk sample
movie fragment -> track fragment -> [samples]
Sample Data Offsets
Movie-fragment Relative Addressing: all trun data offsets are relative to the containing moof (?).
Without default-base-is-moof, the base data offset for each trun in trafs after the first is the end of the previous traf.
iso5/DASH Style
moof
|- traf (default-base-is-moof)
| |- trun_0 + 0
| - trun_1 <size of moof> + 100 - traf (default-base-is-moof)
- trun_2 <size of moof> + 300 mdat |- samples_for_trun_0 (100 bytes) |- samples_for_trun_1 (200 bytes) - samples_for_trun_2
Single Track Style
moof
- traf - trun_0 + 0
mdat
`- samples_for_trun_0