Matt Woodrow
b737d30e9d
Bug 1196417 - Make video software fallback only affect the current video instead of the entire browser. r=cpearce
2015-08-20 11:43:36 -04:00
Benjamin Chen
7fcaa31af2
Bug 1192733: fix the MediaFormatReader can not back from dormant state. r=jya
2015-08-14 12:02:15 +08:00
Jean-Yves Avenard
bf33167f1e
Bug 1195071: Check for MediaDataDecoder::Input error. r=cpearce
2015-08-17 10:28:43 +10:00
Matt Woodrow
2b310a6e30
Bug 1178098 - Report why DXVA initialization failed to about:support. r=cpearce
2015-07-13 16:12:23 -04:00
Jean-Yves Avenard
3df14d7bf2
Bug 1188871: P1. Don't drain decoders when an error is encountered. r=cpearce
...
This is a partial revert of bug 1173657 (commit 80f9da7f0806). Not all decoders will properly handle draining when they have encountered an error and will never call DrainComplete().
The Gonk and Android decoder do not. So we just get around this.
2015-08-14 10:20:31 +10:00
Jean-Yves Avenard
aa4c7bc41b
Bug 1180935: P3. Fixed MediaFormatReader::Update logging. r=gerald
2015-08-12 21:46:06 +10:00
Jean-Yves Avenard
94e4022ec1
Bug 1180935: P1. Do not drain decoders when waiting for data. r=cpearce
...
We made the design decision that it was preferable to decode as much of what we had, even if that meant we couldn't decode some frames upon resume.
This can cause significant apparent stalls with some YouTube videos where keyframes are up to 4.2s appart (128 frames).
2015-08-12 21:46:05 +10:00
Birunthan Mohanathas
fd290c6aa3
Bug 1185763 - Part 3: Rename nsTArray::MoveElementsFrom to AppendElements. r=froydnj
2015-08-11 08:29:46 -07:00
Birunthan Mohanathas
0e83cd889c
Bug 1185763 - Part 1: Always use mozilla::Move with nsTArray::MoveElementsFrom. r=froydnj
2015-08-11 08:29:46 -07:00
Jean-Yves Avenard
8215af8c5e
Bug 1188313: P1. Attempt to seek audio near video. r=cpearce
...
Do not only rely on the MediaDecoderState machine to keep A/V sync after a seek as should we seeked in fast mode ; it wouldn't
2015-08-11 14:18:49 +10:00
Alfredo Yang
df30a6a272
Bug 1146086: use promise to Init() in PlatformDecoderModule. r=jya,r=cpearce
2015-08-11 14:09:12 +10:00
Kilik Kuo
edaff42ded
Bug 1188812 - Obtain CDM can render capability and store into MediaInfo r=cpearce.
2015-08-06 14:24:00 +08:00
Jean-Yves Avenard
51d7aca4b6
Bug 1188131: Don't rely on MediaResource type to detect media format. r=cpearce
...
This information is often wrong and non-existent with MSE. Let the PDM decides later based on the metadata.
This prevent hardware acceleration to be turned on leading to extremely high CPU usage on high definition videos.
2015-08-07 12:19:49 +10:00
Bobby Holley
75645bdcf4
Bug 1190496 - Namespace the SharedThreadPool.h include. r=cpearce
2015-08-04 14:00:25 -07:00
Alfredo Yang
271d02e288
Bug 1189173 - Drop frames aggressively during internal seek. r=jya
2015-07-30 00:53:00 +02:00
Jean-Yves Avenard
28f2814d64
Bug 1189138: P2. Add useful debugging information to logs. r=cpearce
2015-07-30 15:20:19 +10:00
Jean-Yves Avenard
b3b4eca437
Bug 1188233: Ensure drainComplete flag is set upon failure to create decoder. r=cpearce
2015-07-28 23:28:24 +10:00
Jean-Yves Avenard
fb0da9d0db
Revert "Bug 1188233: Ensure drainComplete flag is set upon failure to create decoder. r=cpearce"
...
This reverts commit 9c48bac3e0d3
2015-07-28 16:37:53 +10:00
Jean-Yves Avenard
2322ace9d6
Bug 1188233: Ensure drainComplete flag is set upon failure to create decoder. r=cpearce
2015-07-28 14:23:29 +10:00
Jean-Yves Avenard
d021805eb0
Bug 1188220: Allow disabling HW acceleration even when SharedDecoderManager isn't used. r=cpearce
...
The SharedDecoderManager is being obsoleted.
2015-07-28 14:11:06 +10:00
Jean-Yves Avenard
389b37b6e4
Bug 1185886: P2. Don't unnecessarily drain decoders when there's no frames pending. r=cpearce
2015-07-27 14:52:11 +10:00
Jean-Yves Avenard
15de6c00ab
Bug 1183888: Report empty buffered ranges unless we have a start time. r=bholley
2015-07-24 23:02:20 +10:00
Jean-Yves Avenard
eb636f684f
Bug 1185431: Immediately resolve WaitingForDataPromise if we're not waiting for data. r=cpearce
2015-07-22 14:22:46 +10:00
Jean-Yves Avenard
3a8745162e
Bug 1181204 - Prevent use of the decoder outside the reader's taskqueue. r=cpearce
...
This fix a potential race when the decoder could be shutting down on the reader's taskqueue while the MediaDecoderStateMachine thread attempts to read it.
2015-07-20 15:14:37 -04:00
Jan Gerber
9988952a0a
Bug 1148102: P7. Hookup WebMDemuxer. r=jya
2015-07-20 17:27:08 +10:00
Bobby Holley
13ff5c37f3
Bug 1184634
- Rename MediaTaskQueue to TaskQueue. r=gerald
2015-07-16 22:23:06 -07:00
Bobby Holley
7365c7cf9a
Bug 1184634
- Rename "TaskQueue()" accessor to "OwnerThread()". r=gerald
...
Otherwise this name will collide with the rename of MediaTaskQueue to TaskQueue.
It's also a better naming convention, because it generalizes to things that are
owned by an AbstractThread that is not a Task Queue.
We rename to Queue() in TestMozPromise, because that's more accurate.
2015-07-16 22:22:07 -07:00
Jean-Yves Avenard
2b61689e5e
Bug 1183519: P2. Reject promise if decoder couldn't be created. r=me
...
Follow-up fix.
2015-07-16 16:05:27 +10:00
Jean-Yves Avenard
0eeadf9bdb
Bug 1183653: MediaFormatReader: returns error if no tracks are usable. r=cpearce
2015-07-16 14:31:56 +10:00
Jean-Yves Avenard
fa3c37cb85
Bug 1183482: Fix shutdown hang. r=cpearce
...
The MediaFormatReader destructor is only called once all media task queues have shutdown.
However, the main thread demuxer always owned a reference to trackbuffer task queue.
2015-07-16 14:31:55 +10:00
Jean-Yves Avenard
a8352b08c9
Bug 1183519: Wait until current drain completes before decoding new data. r=cpearce
2015-07-16 14:31:54 +10:00
Jean-Yves Avenard
ef5489ebf7
Bug 1182985: Drain decoder when changing resolution. r=cpearce
2015-07-16 14:31:53 +10:00
Jean-Yves Avenard
12f18602ce
Bug 1173657: Drain decoder when discontinuity encountered. r=cpearce
...
A discontinuity can be when waiting for data, decoding error or reaching end of stream.
2015-07-16 14:31:53 +10:00
Jean-Yves Avenard
f28c23a44f
Bug 1182967: Reject metadata promise on shutdown. r=bholley
2015-07-16 14:31:52 +10:00
Jean-Yves Avenard
b625ffc87b
Bug 1181894: Always create a PlatformDecoderModule in CDMWrapper. r=cpearce
...
Not all tracks may be encrypted, as such we need a default PDM in order to decode non-encrypted data.
2015-07-09 16:18:05 +10:00
Jean-Yves Avenard
dbad274e64
Bug 1180403: P2. Prevent crash when shutting down. r=cpearce
2015-07-09 11:06:07 +10:00
Sotaro Ikeda
6305c525d7
Bug 1171257 - Add force decode ahead to MediaFormatReader r=jya,bholley
2015-07-05 09:39:30 -07:00
Bobby Holley
e43840b8d4
Bug 1179110 - Use a Maybe<> to store start time, rather than using -1 as a sentinel. r=jya
...
This allows us to properly support videos with a negative start time, which
is happening here.
2015-07-02 12:05:17 -07:00
Jean-Yves Avenard
34dbe1c37c
Bug 1179569: Remove use of decoder's monitor in ResetDecode(). r=bholley
...
Doesn't appear to ever have been required.
2015-07-02 11:55:33 +10:00
Bobby Holley
2a790a5fc8
Bug 1178437 - Do the dormant-enabled tracking on the main thread. r=jww,r=jya
...
This is purely a question of policy, so there's no reason it needs to live on
the off-main-thread decoding machinery.
2015-07-01 18:47:41 -07:00
Bobby Holley
947f197e8b
Bug 1175768 - Use mirroring for buffered ranges. r=jya
2015-06-27 01:19:13 -07:00
Bobby Holley
bae46ed9c3
Bug 1175768 - Dispatch NotifyDataArrived and remove the aBuffer argument. r=jya
...
It would be nice to remove the argument in a separate patch, but we can't
perform MediaResource reads on the main thread, so the SilentReadAt stuff
needs to happen at the same time as the off-main-thread stuff.
2015-06-27 01:19:10 -07:00
Ryan VanderMeulen
9d5966b120
Backed out 8 changesets (bug 1175768) for frequent media test failures.
...
Backed out changeset a369cfb95b59 (bug 1175768)
Backed out changeset e02dd312d622 (bug 1175768)
Backed out changeset 6776ce74b9e5 (bug 1175768)
Backed out changeset 6aa5fa1d318e (bug 1175768)
Backed out changeset a8bd7a0d2aea (bug 1175768)
Backed out changeset 41ffc9a9ac48 (bug 1175768)
Backed out changeset 2d2cefa397dc (bug 1175768)
Backed out changeset 4e06368496d2 (bug 1175768)
CLOSED TREE
2015-06-23 16:20:15 -04:00
Bobby Holley
84118906a6
Bug 1175768 - Use mirroring for buffered ranges. r=jya
2015-06-22 22:53:09 -07:00
Bobby Holley
723b4cae9a
Bug 1175768 - Dispatch NotifyDataArrived and remove the aBuffer argument. r=jya
...
It would be nice to remove the argument in a separate patch, but we can't
perform MediaResource reads on the main thread, so the SilentReadAt stuff
needs to happen at the same time as the off-main-thread stuff.
2015-06-22 22:53:07 -07:00
Jean-Yves Avenard
7c01b18d26
Bug 1173792: P2. Always seek audio to original seeking position. r=cpearce
...
There's no guarantee that the audio stream will have the same buffered ranges as the video track; which could lead to a stall.
It is up to the MediaDecoderStateMachine to ensure proper A/V sync following a sync
2015-06-19 16:45:26 +10:00
Jean-Yves Avenard
ff9eb0e2db
Bug 1174582: P2. Do not skip keyframe with negative timestamp. rpending=alfredo
2015-06-19 16:45:17 +10:00
Jean-Yves Avenard
d3ec03a343
Bug 1171314: P3. Detect change of stream content and automatically recreate decoder. r=cpearce
2015-06-19 16:45:15 +10:00
Bobby Holley
59fbbf4329
Bug 1163223 - Remove MediaDecoderStateMachine::mStartTime. r=jww CLOSED TREE
2015-06-16 15:08:45 -07:00
Bobby Holley
72245b4591
Bug 1163223 - Introduce StartTimeRendezvous and route samples through it. r=jww
...
No sample adjusting is done yet - this just makes the data available.
2015-06-16 15:08:30 -07:00