summaryrefslogtreecommitdiffstats
path: root/dom/media
Commit message (Collapse)AuthorAgeLines
...
* Revert "Add support for AV1 in MP4"trav902018-10-23-8/+0
| | | | | | This commit was incomplete. Will re-land AV1 in MP4 support properly at a future date. This reverts commit 29f718ef78f1a25ca904c6438b59ffc8e365a750.
* Ensure we correctly parse the finalized codec string for av1trav902018-10-21-11/+12
|
* Add support for AV1 in MP4trav902018-10-20-0/+8
|
* Use larger stack for media decoder threadstrav902018-10-20-1/+13
| | | | 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.
* Downsample av1 images unconditionallytrav902018-10-20-2/+2
| | | | | | 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.
* Fix canPlayType/isTypeSupported for AV1 contenttrav902018-10-20-33/+35
|
* Put AV1 codec behind a preftrav902018-10-20-3/+12
| | | | Disabled by default.
* Updates to AOMDecoder for aom v1.0.0trav902018-10-19-10/+3
| | | | 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 v1.0.0trav902018-10-19-1/+1
| | | | Update aom to commit id d14c5bb4f336ef1842046089849dee4a301fbbf0.
* Update aom to commit id e87fb2378f01103d5d6e477a4ef6892dc714e614trav902018-10-18-2/+2
|
* [aom] Don't resample 8-bit imagestrav902018-10-18-7/+16
| | | | | | 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.
* [aom] Resample high bit depth framestrav902018-10-18-1/+83
| | | | 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.
* Update aom to commit id f5bdeac22930ff4c6b219be49c843db35970b918trav902018-10-18-1/+1
|
* Add missing includes to FFmpegLibWrappertrav902018-10-17-1/+3
|
* Fix typo (build bustage)trav902018-10-17-1/+1
|
* Update aom to slightly newer commit IDtrav902018-10-17-1/+1
|
* Add av1 to MediaSource.isTypeSupportedtrav902018-10-17-0/+24
| | | | | | 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.
* Remove aom_codec_stream_info_t sz field referencestrav902018-10-17-2/+0
| | | | Upstream has removed the requirement to set this when initializing the stream_info struct.
* Make AOMDecoder actually buildtrav902018-10-15-3/+3
|
* Add missing includes to WebMDemuxertrav902018-10-15-0/+4
|
* Recognize AV1 in WebMDemuxertrav902018-10-15-4/+25
| | | | 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.
* Add AOMDecoder to AgnosticDecoderModuletrav902018-10-15-1/+14
|
* Add AOMDecodertrav902018-10-15-0/+314
| | | | Port the VPXDecoder interface to libaom which uses the same api with the names changed.
* [webm] Don't reject seeks with EOStrav902018-10-08-0/+4
| | | | The MediaDecoderStateMachine treat seek's EOS as fatal errors, so instead we always resolve the seek promise, and let the next GetSample return EOS.
* [webm] Treat demuxing errors differently than EOStrav902018-10-08-41/+75
| | | | Otherwise the WebM demuxer makes no difference between a genuine EOS and encountering an error.
* Call VPXDecoder libvpx wrappers for WebMtrav902018-10-08-13/+14
| | | | Use the new helper functions instead of calling libvpx directly. This simplifies adding other codecs in the future.
* Implement keyframe and framesize VPXDecoder helperstrav902018-10-08-10/+46
| | | | 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.
* Add Span support to MediaRawDatatrav902018-10-08-0/+3
|
* [vpx] Store VPXDecoder codec as an enumtrav902018-10-08-4/+5
| | | | Use the enum we already have here instead of converting to an int when we pass it around, giving us better type checking.
* [webm] Store LastSeenFrame dimensions as an nsIntSizetrav902018-10-08-8/+6
| | | | This simplifies the comparison and update logic.
* [ffmpeg] Always allocate memory to pass extradatatrav902018-10-01-3/+15
| | | | Despite wording of the documentation to the contrary, we can't provide a static pointer to an immutable object.
* [ffvpx] Update ffvp9/ffvp8 to release 4.0.2trav902018-10-01-1/+1
|
* Revert "Update ffvpx code to 4.0.2"Moonchild2018-10-01-1/+1
|
* Merge pull request #801 from trav90/update-from-upstreamMoonchild2018-10-01-1/+1
|\ | | | | Update ffvpx code to 4.0.2
| * [ffvpx] Update ffvp9/ffvp8 to release 4.0.2trav902018-09-30-1/+1
| |
* | Remove telemetry reporting functions from CubebUtilswolfbeast2018-10-01-40/+0
|/ | | | Tag #21.
* Update test files for libnestegg updatetrav902018-09-29-3/+5
|
* Fix clang build bustage.wolfbeast2018-09-12-1/+1
| | | | Follow-up to 9830cd079d8306abc223461190553af64b6fd0ca
* Bug 1472925 - Keep a strong reference to MediaStreamGraph from GraphDriver.wolfbeast2018-09-11-8/+9
|
* RTCCertificate.cpp: output truncated before the last format charactertrav902018-09-07-1/+1
| | | | Fixes compiler warnings when building with GCC 7+
* Remove all C++ Telemetry Accumulation calls.wolfbeast2018-09-03-168/+4
| | | | | This creates a number of stubs and leaves some surrounding code that may be irrelevant (eg. recorded time stamps, status variables). Stub resolution/removal should be a follow-up to this.
* [EME] Add support for sbgp and sgpd boxes occuring in the sampletabletrav902018-07-25-3/+3
|
* [EME] Add support for sbgp and sgpd boxes in the traf boxtrav902018-07-25-1/+6
|
* Bug 1464079 - Bring ICE connection state change callback up to spec. r=jib, ↵Byron Campen [:bwc]2018-06-29-0/+12
| | | | a=RyanVM
* Bug 1464079 - Bring ICE connection state change callback up to spec. r=jib, ↵Byron Campen [:bwc]2018-06-29-1/+4
| | | | | | a=RyanVM WebRTC
* Media: harden TrackID handling.wolfbeast2018-06-07-31/+130
|
* Revoke MediaDataDecoder callback after RemoteVideoDecoder has been shut downtrav902018-05-25-0/+1
|
* Null check the right pointer in RecvReadbacktrav902018-05-25-1/+1
|
* Perform null check earlier in OggCodecState.cpptrav902018-05-25-3/+4
|
* [MSE] Correct ADTS frame size calculationtrav902018-05-25-2/+2
| | | | This should be bitwise OR rather than logical OR, which just returns 1.