HasSPS, ExtractExtraData and CompareExtraData have nothing to do with the handling of annex B format. They are raw H264 related methods.
It will also prevent in the following change to have cycling references between two headers.
MozReview-Commit-ID: FCs5aU4GcTU
--HG--
extra : rebase_source : a96fe0c70416d38690b0c2f1dee567b0b025e947
HasSPS, ExtractExtraData and CompareExtraData have nothing to do with the handling of annex B format. They are raw H264 related methods.
It will also prevent in the following change to have cycling references between two headers.
MozReview-Commit-ID: FCs5aU4GcTU
--HG--
extra : rebase_source : b204723cdbb599d4f0a227871ed28f5da39e9cff
Update our in-tree copy of the aom reference implementation
of the av1 video codec to upstream git commit id
aadbb0251996c8ebb8310567bea330ab7ae9abe4.
This picks up recent changes and addresses a build issue on win64.
MozReview-Commit-ID: 34LXXzFtEFN
--HG--
extra : rebase_source : 0face926928de6bd1c6a1726df912bd20e363e60
Upstream has removed the requirement to set this when
initializing the stream_info struct.
MozReview-Commit-ID: 24OJ550Ral
--HG--
extra : rebase_source : 501fd9f51084a4b6f779462536e94c71cf8c5bb7
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.
MozReview-Commit-ID: GS4n7cPxfQ7
--HG--
extra : rebase_source : a595942242304ccf97a341474b6e2e1e869e7a77
The duration is rounded down to 0 if |frames| is smaller than |mInfo.mRate|.
We should call FramesToTimeUnit() instead.
MozReview-Commit-ID: E7eOQuD48x2
--HG--
extra : rebase_source : 1edabb9a9fe495f89a13df71d73d3b9aef49fa9d
Since RefPtr<T>&& can't be converted to T* implicitly, we need to change
T* to RefPtr<T> in resolve/reject callbacks to make it compile again.
We should review the changes later to look for the opportunity to
optimize away unnecessary AddRef/Release pairs.
MozReview-Commit-ID: 22rHQ8dhxJv
--HG--
extra : rebase_source : 1b09f353d6e86d60c93a2746333585ec0dba8526
Conditionally enable the AV1 decoder as part of the
agnostic PlatformDecoderModule factory.
MozReview-Commit-ID: ApZ1CMvdLE
--HG--
extra : rebase_source : 33cedc6bd6243ccd2019ea40dc9b989921c63b98
Port the VPXDecoder interface to libaom which uses
the same api with the names changed. I've removed
the alpha support for now.
MozReview-Commit-ID: IdxcVWhNgVl
--HG--
extra : rebase_source : 5f3a84fb9a827f01c80057eb520bde184c41f0b9
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.
MozReview-Commit-ID: ASRRhNl0A41
--HG--
extra : rebase_source : e0a27e946a60e0c33ecf4908f1e09436f836e123
Use the enum we already have here instead of converting
to an int when we pass it around, giving us better
type checking.
MozReview-Commit-ID: Gj4xmtQnzw2
--HG--
extra : rebase_source : fc7769c9650c59f52bfd8611e6cabb8e5b6d7068
We want to replace the use of int64_t for microseconds by TimeUnit
whenever possible since int64_t is ambiguous which could be microseconds
or milliseconds.
MozReview-Commit-ID: LRz9d4yKBYJ
--HG--
extra : rebase_source : 1f73f1f338142b3183491d04726821a881ccabbe
extra : intermediate-source : 88e167b7b06303d10d92cd5317502f405d1c553e
extra : source : 98deb30ec93d395f9951f5fc488170ae35e29675
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.
MozReview-Commit-ID: ASRRhNl0A41
--HG--
extra : rebase_source : a1421462f6fc66a2abd965782ec408a8bcf7fe1f
Use the enum we already have here instead of converting
to an int when we pass it around, giving us better
type checking.
MozReview-Commit-ID: Gj4xmtQnzw2
--HG--
extra : rebase_source : 95f582e655f1a942dfb68cbba588c44afbb8a38f
This severs the ChromiumCDMVideoDecoder's connection with the CDM. The CDM process
will shutdown when the MediaKeys also severs its connection.
MozReview-Commit-ID: Aqc4y5Nxjvc
--HG--
extra : rebase_source : 5a2f77ffe84f9b99b4668520c838b29a428578d3
At this stage, I store video frames in memory in nsTArrays rather than in
shmems just so we can get this working. Once this is working, I'll follow up
with patches to switch to storing all large buffer traffic between the CDM and
other processes in shmems.
I'm not planning on preffing this new CDM path on until that's in place.
MozReview-Commit-ID: LSTb42msWQS
--HG--
extra : rebase_source : b7f162515a1a32b2c344c11d0fa5c7004cec2e15
So that we can write gtests easily at next patch.
MozReview-Commit-ID: 8ZWVYO1hDOW
--HG--
extra : rebase_source : 8c3523b06fe284376d59914ecfa3791a91930fc2
If OOM happends, just return null and the DummyMediaDataDecoder will reject the DecodePromise with NS_ERROR_OUT_OF_MEMORY.
MozReview-Commit-ID: H6sTyoQWZk5
--HG--
extra : rebase_source : 5046a68978b817db8f1191e1f56e80ec5848899c
The blank decoder used to create green frames.
Bug 1274626 patch 2 modifies its behavior to return black frames.
The original implementation is better in memory usage, so we revert it.
MozReview-Commit-ID: Lue63Rsoy3G
--HG--
extra : rebase_source : ba6a1bb74a2b5d61b245c114e4dd5cf32dc29b89
extra : intermediate-source : fcb4f38cf4d4ee2709a3d0d4e2945eef9dc6cab0
extra : source : e920b71a11ebf410f4a1c99708911be98f68586c
The video decoder of NullDecoderModule returns a VideoData with dimension of zero size and no image data.
By this way, we reduce memory usage while a video element is suspended.
MozReview-Commit-ID: IMODFOGdpaj
--HG--
extra : rebase_source : e12dc91158939052b23d4ab9707485bb3565dc41
extra : intermediate-source : f8390b1c52e9ee859c33b7a9d2e34781534eb3ff
extra : source : 8a002d74db6c445dff17aa24d2e92f9c27019b07
Change name to 'Dummy' to signify it's base for decoders that don't decode.
And we will implement a new NullDecoderModule in the next patch which will utilize the DummyMediaDataDecoder.
MozReview-Commit-ID: LPsczoztgx3
--HG--
extra : rebase_source : 413345139ba060065217cfd7718665091f8f6166
extra : intermediate-source : 12d022e15b7a3a91867293fd2e71510fa084ff02
extra : source : dec60f61cc8809ebe6dd65cb16a325f2272b3ce2
The blank decoder used to create green frames.
Bug 1274626 patch 2 modifies its behavior to return black frames.
The original implementation is better in memory usage, so we revert it.
MozReview-Commit-ID: Lue63Rsoy3G
--HG--
extra : rebase_source : 87ba4a2cea29f3fcb90c84e5b844d35b62799995
extra : source : e920b71a11ebf410f4a1c99708911be98f68586c
The video decoder of NullDecoderModule returns a VideoData with dimension of zero size and no image data.
By this way, we reduce memory usage while a video element is suspended.
MozReview-Commit-ID: IMODFOGdpaj
--HG--
extra : rebase_source : 6da95997eeb2098396b577b9dc0473d30d78b4d4
extra : source : 8a002d74db6c445dff17aa24d2e92f9c27019b07
Change name to 'Dummy' to signify it's base for decoders that don't decode.
And we will implement a new NullDecoderModule in the next patch which will utilize the DummyMediaDataDecoder.
MozReview-Commit-ID: LPsczoztgx3
--HG--
extra : rebase_source : b8c3c565709f998eb40a72b6c8831d7b4f3bd142
extra : source : dec60f61cc8809ebe6dd65cb16a325f2272b3ce2