Commit Graph

56 Commits

Author SHA1 Message Date
Matt Woodrow
2bae1c3fd1 Bug 1105066 - Chain seeks in MediaSourceReader so that we seek audio to the same time as video; r=kentuckyfriedtakahe 2015-01-12 11:05:08 +13:00
Matt Woodrow
f05ddb6181 Bug 1105066 - Make SeekPromise return the time we actually seeked to; r=kentuckyfriedtakahe 2015-01-12 10:57:14 +13:00
Matt Woodrow
eae5a1bf43 Bug 1118528 - Use fuzzy comparisons in MediaSourceReader::HaveData. r=cajbir 2015-01-12 09:47:56 +13:00
Bobby Holley
dbb413d6ec Bug 1120014 - Initialize MediaSourceReader::mLast{Audio,Video}Time to 0 rather than -1. r=rillian
There isn't actually any initialization code that sets them at 0. Instead, we
currently rely on the fact that our first decoder ends up active regardless of
what its buffered range reports. So as long as invoking the first Request{Audio,Video}Data
is resolved, this ends up ok. But while that is usually the case, it isn't _always_
the case, especially in the case where the MP4Reader rejects with WAITING_FOR_DATA.
2015-01-09 17:20:58 -08:00
Bobby Holley
3a84da82a8 Bug 1064128 - Implement support for timestampOffset in segments mode. r=k17e,r=cajbir 2015-01-07 15:58:55 -08:00
Bobby Holley
e068da71f1 Bug 1109437 - Implement non-polling buffering. r=cpearce 2014-12-22 00:20:31 -08:00
Bobby Holley
f58ed77d04 Bug 1092025 - Hold the lock for the entire duration of MediaSourceReader::ReadMetaData. r=karlt 2014-12-21 23:14:59 -08:00
Bobby Holley
f61feaf2d2 Bug 1113282 - Check during async TrackBuffer decoder initialization to make sure we haven't been shut down. r=cajbir 2014-12-18 13:59:00 +01:00
Carsten "Tomcat" Book
8ad1c2cafd Backed out changeset 4757a1d4a23e (bug 1113282) for e10s M1 test failures 2014-12-19 09:00:07 +01:00
Bobby Holley
0ea6f6548c Bug 1113282 - Check during async TrackBuffer decoder initialization to make sure we haven't been shut down. r=cajbir 2014-12-18 22:26:52 -08:00
Matt Woodrow
c4b04bce21 Bug 1112446 - Add logging for media queue lengths. r=ajones 2014-12-18 12:41:19 +13:00
Matt Woodrow
878c895eb7 Bug 1111413 - Part 2: Remove RequestSampleCallback. r=bholley 2014-12-16 23:08:42 +13:00
Matt Woodrow
93e24340d6 Bug 1111413 - Part 1: Use MediaPromises for seeking. r=bholley 2014-12-16 22:52:57 +13:00
Bobby Holley
2963d4eccb Bug 1109954 - Make resolve/reject values optional in callback signatures. r=cpearce 2014-12-12 14:22:23 -08:00
Anthony Jones
9afda1809f Bug 1110595 - Fix MSE playback stalling; r=mattwoodrow 2014-12-12 17:11:51 +13:00
Bobby Holley
f9be8aa27b Backed out changeset 89c9d42ef78e (bug 1109954) for colliding with bug 1108701 on a CLOSED TREE. 2014-12-10 22:56:09 -08:00
Bobby Holley
6fb40adfa1 Bug 1109954 - Make resolve/reject values optional in callback signatures. r=cpearce 2014-12-10 22:38:33 -08:00
Bobby Holley
ef7b8245e6 Bug 1108701 - Use MediaPromises for RequestAudioData and RequestVideoData. r=cpearce 2014-12-10 14:03:56 -08:00
Bobby Holley
5823c22a13 Bug 1108707 - Make reader shutdown asynchronous. r=cpearce (relanding on a CLOSED TREE because it wasn't the source of the leaks) 2014-12-09 11:43:21 -08:00
Ryan VanderMeulen
28ea3da34b Backed out changeset 18c302f80bce (bug 1108707) for nsTArray_base leaks.
CLOSED TREE
2014-12-09 15:49:38 -05:00
Bobby Holley
89292051ab Bug 1108707 - Make reader shutdown asynchronous. r=cpearce 2014-12-09 11:43:21 -08:00
Bobby Holley
d3d2a8dd4c Bug 1097823 - Move NotDecodedReason from RequestSampleCallback to MediaDecoderReader. r=cpearce 2014-12-08 14:45:36 -08:00
Ryan VanderMeulen
b04ae532a6 Backed out changesets ae63e2dda6e0, a9ca0113db3c, and d0a6757e24bd (bug 1097823) for bustage.
DONTBUILD CLOSED TREE
2014-12-08 15:00:02 -05:00
Bobby Holley
8f32f522cd Bug 1097823 - Move NotDecodedReason from RequestSampleCallback to MediaDecoderReader. r=cpearce 2014-12-08 11:34:50 -08:00
Bobby Holley
97f300c6e6 Backed out changeset c405b4271e64 (bug 1097823) 2014-12-07 17:09:12 -08:00
Bobby Holley
1239cadbd6 Backed out changeset b76636e9f49a (bug 1097823) 2014-12-07 17:09:08 -08:00
Bobby Holley
381a1aaa8c Backed out changeset 47c97b8b490c (bug 1097823) 2014-12-07 17:09:04 -08:00
Bobby Holley
2b801e0711 Backed out changeset 1ea671313ad3 (bug 1097823) 2014-12-07 17:09:03 -08:00
Bobby Holley
2fef819cad Backed out changeset 979bec024c07 (bug 1097823) 2014-12-07 17:08:19 -08:00
Bobby Holley
3c42f295f7 Bug 1097823 - Followup to remove the assertions cpearce asked for because they don't hold. rpending=cpearce 2014-12-07 15:41:46 -08:00
Bobby Holley
d3c268c694 Bug 1097823 - Followup to avoid null-derefing when promises have already been rejected during shutdown. rpending=cpearce 2014-12-07 15:08:47 -08:00
Bobby Holley
edb57bed1b Bug 1097823 - Followup fix to ensure that the borrowed task queue doesn't get destroyed before subdecoders shut down. rpending=cpearce 2014-12-07 13:25:11 -08:00
Bobby Holley
552d93e0d7 Bug 1097823 - Use MediaPromises for RequestAudioData and RequestVideoData. r=cpearce 2014-12-07 11:21:35 -08:00
Bobby Holley
8cb0b52e57 Bug 1097823 - Move NotDecodedReason from RequestSampleCallback to MediaDecoderReader. r=cpearce 2014-12-07 11:21:34 -08:00
Bobby Holley
b0443be2c5 Bug 1104964 - Make MediaDecoderReader own the task queue. r=cpearce 2014-12-01 21:51:03 -08:00
Matt Woodrow
6f8543ba2b Bug 1105553 - Handle 'CANCELLED' NotDecodedReason in MediaSourceReader. r=ajones 2014-11-28 13:17:32 +13:00
Kai-Zhen Li
09b47aa1a2 Bug 1102144 - Move MOZ_FMP4 code into related compiled flag. r=ajones,bwu 2014-11-21 11:48:22 +08:00
Bobby Holley
bc859c949e Bug 1100776 - Reference-count MediaData. r=cpearce 2014-11-19 13:01:10 -08:00
Jean-Yves Avenard
f76301c128 Bug 1100913 - Fix incorrect playback of MSE with HE-AAC audio streams. r=cajbir 2014-11-18 23:23:00 +11:00
Anthony Jones
4b72865ad1 Bug 1036849 - Create SharedDecoderManager and SharedDecoderProxy; r=blakewu 2014-11-05 02:14:00 +13:00
Wes Kocher
f4f3fe8778 Backed out changeset 46b6cb002a34 (bug 1036849) for leaks on a CLOSED TREE 2014-11-17 17:16:25 -08:00
Anthony Jones
11d0047b73 Bug 1036849 - Create ShareDecoderManager and SharedDecoderProxy; r=blakewu 2014-11-05 02:14:00 +13:00
Matt Woodrow
b370384d2c Bug 1097375 - Implement MediaSource::setDuration. r=kinetik
--HG--
extra : rebase_source : 7e5f5387de5db3deccc6e74222b32f461359beb2
2014-11-12 17:11:33 +13:00
David Major
8b1e686a51 Bug 1091008 bustage fix - the second parameter was unused and removed by changeset 6907c1cb8bc0 CLOSED TREE
--HG--
extra : amend_source : 70685616cb814de1f0d8fc641b626682905075e3
2014-11-12 18:24:29 +13:00
Bobby Holley
3a1a42690d Bug 1091008 - Remove special handling for MSE in HTMLMediaElement::Buffered. r=cajbir
The same code will now be reached by invoking this method on the decoder.
2014-11-11 20:50:21 -08:00
Bobby Holley
632d34e5ea Bug 1091008 - Implement a sensible GetBuffered override for MediaSourceReader using the existing GetBuffered on MediaSource. r=cajbir 2014-11-11 20:50:21 -08:00
Bobby Holley
64ca5577a7 Bug 1091008 - Teach MediaDecoderReader about its start time. r=cpearce
Duplicating state is never great, but this lets the reader make calculations
using this immutable state variable without involving the state machine. We
could alternatively punch a hole from MediaDecoderReader to
MediaDecoderStateMachine and access it there, but that would create tighter
coupling, and weird relationships for MSE.
2014-11-11 20:50:20 -08:00
Chris Double ext:(%20with%20tweaks%20by%20Karl%20Tomlinson%20%3Ckarlt%2B%40karlt.net%3E)
ade13ac0f9 Bug 1089937 Add a fuzz time to end times for MSE reader switching on EOS r=karl,mattwoodrow
mLast{Audio,Video}Time differs from the actual end time because of
Bug 1065207 - the duration of a WebM fragment is an estimate not the
actual duration. In the case of audio time an example of where they
differ would be the actual sample duration being small but the
previous sample being large. The buffered end time uses that last
sample duration as an estimate of the end time duration giving an end
time that is greater than mLastAudioTime, which is the actual sample
end time.

Reader switching is based on the buffered end time though so we can't use
the actual sample end time for switching comparison.

For this reason we use the end time from the buffers to compare if we
should switch readers in this patch. We also add an EOS_FUZZ_US to allow
for the fact that it is an estimate and can differ slightly from actual times.

--HG--
extra : rebase_source : 47149609119c5dcd1ca7374501dd7c1e285469ef
2014-11-12 12:12:21 +13:00
Matt Woodrow
f2179de021 Bug 1056441 - Make MediaSourceReader seeking asynchronous. r=kinetik 2014-11-05 13:32:26 +13:00
Carsten "Tomcat" Book
c26db049b1 Backed out 10 changesets (bug 1091008, bug 1093020, bug 1063323) for windows m2 permanent test failures on a CLOSED TREE
Backed out changeset 21ddb8a58fea (bug 1093020)
Backed out changeset fe9e11333c7d (bug 1093020)
Backed out changeset bba774c54652 (bug 1063323)
Backed out changeset 16f58d7e1e17 (bug 1091008)
Backed out changeset 649bfc6dad4d (bug 1091008)
Backed out changeset 6f270b2d90f4 (bug 1091008)
Backed out changeset 966093bbc26a (bug 1091008)
Backed out changeset 9de4746aa59a (bug 1091008)
Backed out changeset 856016c0118a (bug 1091008)
Backed out changeset 8aaa10a8d956 (bug 1091008)
2014-11-05 12:57:43 +01:00