| Commit message (Collapse) | Author | Age | Lines |
... | |
| | |
|
| | |
|
|/ |
|
|
|
|
| |
This resolves #881
|
|
|
|
| |
This resolves #881
|
| |
|
| |
|
|\
| |
| | |
Add support for AV1 in MP4 container
|
| | |
|
|/ |
|
|
|
|
| |
Not doing this can cause a leak because there is a cycle between the load request and the script element.
|
|
|
|
| |
Tag #871
|
|
|
|
|
|
| |
so a document-based marking function can be used separately.
Tag #871
|
| |
|
|
|
|
|
|
|
|
| |
CheckedInt propagates the mIsValid in each add operation so that it avoids needing a bunch of code
for the overflow check in each add operation. Additionally, it avoids mismatching parameters
between the computing result and the additional overflow check.
This patch uses CheckedInt to take advantage of those implicit features of it.
|
|
|
|
| |
Standards Compliance fix, port of Bug 1492737
|
|
|
|
|
|
| |
This commit was incomplete. Will re-land AV1 in MP4 support properly at a future date.
This reverts commit 29f718ef78f1a25ca904c6438b59ffc8e365a750.
|
| |
|
| |
|
|
|
|
| |
This increases the thread size for the platform decoder threads (to prevent stack overflows, particularly when decoding av1), while leaving the others at their default values.
|
|
|
|
|
|
| |
Adding partial support for 10/12-bit video images seems to have broken the native pixel-stride support we were using to pass 8-bit AV1 frame data formatted in 16-bit pixel values, resulting in vertical green lines.
Revert to the earlier behavior of always downsampling to 8 bit data. This is slower, but at least displays correctly.
|
| |
|
|
|
|
| |
Disabled by default.
|
|
|
|
| |
This reflects the API changes to the aom_codec_decode function and the removal of I440. It also sets allow_lowbitdepth to give proper support for 8 bit video, and removes the git version from the mime type.
|
|
|
|
| |
Update aom to commit id d14c5bb4f336ef1842046089849dee4a301fbbf0.
|
| |
|
|
|
|
|
|
| |
The libaom av1 decoder will return 16 bit per channel aom_image_t structures with only 8 significant bits.
Detect this case and use the mSkip fields of PlanarYCbCrImage to handle the extra data instead of allocating and performing an extra copy to obtain the necessary 8 bit representation.
|
|
|
|
| |
The libaom av1 decoder can return high bit depth frame data now. Handle those frames by downsampling them to 8 bits per channel so they can be passed to our normal playback pipeline.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
When av1 video playback is enabled, declare it as supported in the webm container in MediaSource.IsTypeSupported.
Also support special mime types of the form video/webm; codecs=vp9.experimental.<git-commit-id> so test sites can verify playback support of particular encodings while the av1 bitstream is under development.
|
|
|
|
| |
Upstream has removed the requirement to set this when initializing the stream_info struct.
|
| |
|
| |
|
|
|
|
| |
Call AOMDecoder to handle AV1 video tracks from the WebM container. The new decoder is very similar to VPXDecoder so we can use parallel calls. This codec is still build-time conditional.
|
| |
|
|
|
|
| |
Port the VPXDecoder interface to libaom which uses the same api with the names changed.
|
|
|
|
| |
The MediaDecoderStateMachine treat seek's EOS as fatal errors, so instead we always resolve the seek promise, and let the next GetSample return EOS.
|
|
|
|
| |
Otherwise the WebM demuxer makes no difference between a genuine EOS and encountering an error.
|
|
|
|
| |
Use the new helper functions instead of calling libvpx directly. This simplifies adding other codecs in the future.
|
|
|
|
| |
Encapsulate code from WebMDemuxer to query keyframe and frame resolution inside VPXDecoder, so we have a clean wrapper for all the libvpx functions we use.
|
| |
|
|
|
|
| |
Use the enum we already have here instead of converting to an int when we pass it around, giving us better type checking.
|
|
|
|
| |
This simplifies the comparison and update logic.
|
|
|
|
| |
This resolves #810.
|
|
|
|
| |
Despite wording of the documentation to the contrary, we can't provide a static pointer to an immutable object.
|
| |
|
| |
|