Commit Graph

54 Commits

Author SHA1 Message Date
Ryan VanderMeulen
0aae88bf85 Backed out changesets ae63e2dda6e0, a9ca0113db3c, and d0a6757e24bd (bug 1097823) for bustage.
DONTBUILD CLOSED TREE
2014-12-08 15:00:02 -05:00
Bobby Holley
7aa1467674 Bug 1097823 - Move NotDecodedReason from RequestSampleCallback to MediaDecoderReader. r=cpearce 2014-12-08 11:34:50 -08:00
Andreas Pehrson
27ed59b426 Bug 1106963 - Resync media stream clock before destroying decoded stream. r=roc 2014-12-04 19:29:00 +01:00
Bobby Holley
aa27b00ccd Backed out changeset c405b4271e64 (bug 1097823) 2014-12-07 17:09:12 -08:00
Bobby Holley
8327697375 Backed out changeset b76636e9f49a (bug 1097823) 2014-12-07 17:09:08 -08:00
Bobby Holley
61900e1d2d Bug 1097823 - Use MediaPromises for RequestAudioData and RequestVideoData. r=cpearce 2014-12-07 11:21:35 -08:00
Bobby Holley
14e9457ae3 Bug 1097823 - Move NotDecodedReason from RequestSampleCallback to MediaDecoderReader. r=cpearce 2014-12-07 11:21:34 -08:00
Bobby Holley
dba2651569 Bug 1104964 - Make MediaDecoderReader own the task queue. r=cpearce 2014-12-01 21:51:03 -08:00
Bobby Holley
38d5cddf88 Bug 1104964 - Split shutdown initiatation and queue-drain-waiting into separate pieces. r=cpearce
This patch shouldn't change any behavior. The upcoming patch takes advantage of
these separate pieces.
2014-12-01 21:51:02 -08:00
Carsten "Tomcat" Book
f402e297e0 Backed out changeset 9f013d802a78 (bug 1091992) for Android m5 test failures 2014-11-28 10:33:02 +01:00
Benjamin Chen
0d2cda6949 Bug 1091992 - fix the flag skipToNextKeyFrame in DecodeVideo can't be raised if the video is slower than audio. r=cpearce, r=jwwang 2014-11-26 18:38:38 +08:00
Andreas Pehrson
b30333304c Bug 1103848 - Part 2. Use a single source for audio/video track ID constants. r=roc 2014-11-26 21:09:00 +01:00
Chris Pearce
e8e248c3de Bug 1104101 - Ensure we always set mVideoDecodeStartTime when calling RequestVideoData. r=kinetik 2014-11-26 15:39:11 +13:00
JW Wang
fb266a4b4c Bug 1098668 - remember the end time of the last decoded audio sample so that HasLowUndecodedData doesn't need to peek AudioQueue or query AudioClock. r=cpearce 2014-11-20 22:24:00 +01:00
Chris Pearce ext:(%2C%20Edwin%20Flores%20%3Cedwin%40mozilla.com%3E%2C%20Matt%20Woodrow%20%3Cmwoodrow%40mozilla.com%3E)
1d2f1fef3e Bug 1038031 - Make MP4Reader decode asynchronously - r=kinetik,cpearce 2014-07-20 12:54:00 +12:00
Robert O'Callahan
d6cfabd956 Bug 1061046. Part 9: Split SourceMediaStream::AddTrack into a method that adds an audio track and can resample, and a method that can add any track but always uses the graph rate. r=karlt 2014-09-18 11:50:02 +12:00
Robert O'Callahan
1933b9d170 Bug 1061046. Part 6: Remove MediaDecoderStateMachine's USECS_PER_S video rate and use the graph rate instead. r=karlt 2014-09-18 11:50:01 +12:00
Bobby Holley
4d9c1393da Bug 1100776 - Reference-count MediaData. r=cpearce 2014-11-19 13:01:10 -08:00
Ryan VanderMeulen
b7f8072b05 Backed out changeset fa836f2dccb6 for introducing new Win7 leaks.
CLOSED TREE
2014-11-14 15:24:17 -05:00
Chris Pearce
cd8ef39351 Bug 1038031 - Make MP4Reader decode asynchronously - r=kinetik 2014-07-20 12:54:00 +12:00
Bobby Holley
beaac4b1f3 Bug 1093020 - Don't use a buffering wait for MSE. r=cpearce 2014-11-11 20:50:22 -08:00
Bobby Holley
19f7e785c2 Bug 1096597 - Switch to buffering mode on WAITING_FOR_DATA. r=cpearce 2014-11-11 20:50:22 -08:00
Bobby Holley
e2dd17c59b Bug 1091008 - Reimplement HasLowUndecodedData in terms of GetBuffered. r=cpearce
Since GetBuffered now has a sane implementation for MSE, this should
make this function sane for MSE as well.
2014-11-11 20:50:21 -08:00
Bobby Holley
9e6777da77 Bug 1091008 - Remove the aStartTime argument from MediaDecoderReader::GetBuffered. r=cpearce
We now have this stashed on the superclass.
2014-11-11 20:50:21 -08:00
Bobby Holley
0edced4c63 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
Bobby Holley
e049233714 Bug 1091008 - Make sure to always set mStartTime via SetStartTime. r=cpearce 2014-11-11 20:50:20 -08:00
Bobby Holley
d547accf22 Bug 1091008 - Factor out IsDataCachedToEndOfResource() into a higher-level question and answer it sensibly for MSE. r=cpearce 2014-11-11 20:50:20 -08:00
Jean-Yves Avenard
68c0ab5cf5 Bug 1093654 - Fix various memory leaks in MediaDecoders. r=jwwang
Change various function prototyping to make object ownership more explicit.
2014-11-06 19:17:05 +11:00
Jean-Yves Avenard
48cf285b42 Bug 1065827 - Do not always wait to decode frames to emit loadedmetadata. r=jwwang 2014-11-06 20:52:44 +11:00
Carsten "Tomcat" Book
b645513227 Backed out changeset 44f27b3c35d4 (bug 1065827) 2014-11-06 14:59:04 +01:00
Carsten "Tomcat" Book
d63ae3fd40 Backed out changeset 70a72a19cb4b (bug 1093654) 2014-11-06 14:58:53 +01:00
Jean-Yves Avenard
76d6d44c61 Bug 1093654 - Fix various memory leaks in MediaDecoders. r=jwwang
Change various function prototyping to make object ownership more explicit.
2014-11-06 19:17:05 +11:00
Jean-Yves Avenard
5d9d3cd793 Bug 1065827 - Do not always wait to decode frames to emit loadedmetadata. r=jwwang 2014-11-06 20:52:44 +11:00
Matt Woodrow
1b7aa4fbde Bug 1056441 - Make MediaSourceReader seeking asynchronous. r=kinetik 2014-11-05 13:32:26 +13:00
Carsten "Tomcat" Book
ab3a404727 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
Bobby Holley
28d2d55247 Bug 1093020 - Don't use a buffering wait for MSE. r=cpearce 2014-11-05 10:09:00 +01:00
Bobby Holley
d89289ac96 Bug 1091008 - Reimplement HasLowUndecodedData in terms of GetBuffered. r=cpearce
Since GetBuffered now has a sane implementation for MSE, this should
make this function sane for MSE as well.
2014-11-05 10:08:59 +01:00
Bobby Holley
5a2f54ca85 Bug 1091008 - Hoist stream pinning into the MediaDecoderReaders and make MediaDecoderStateMachine::GetBuffered just forward to them. r=cpearce
Whether or not we ping a stream depends a lot on what kind of decoder we're
dealing with. In particular, it doesn't really make sense for MSE.
2014-11-05 10:08:58 +01:00
Bobby Holley
461d13b4d5 Bug 1091008 - Remove the aStartTime argument from MediaDecoderReader::GetBuffered. r=cpearce
We now have this stashed on the superclass.
2014-11-05 10:08:58 +01:00
Bobby Holley
ccff922922 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-05 10:08:58 +01:00
Bobby Holley
9939d4bbd6 Bug 1091008 - Factor out IsDataCachedToEndOfResource() into a higher-level question and answer it sensibly for MSE. r=cpearce 2014-11-05 10:08:57 +01:00
Cgg
4ef94165c9 Bug 966247 - Make MediaElementAudioSourceNode take the HTMLMediaElement volume into account. r=padenot
--HG--
extra : rebase_source : 6ba3d01780be44c4164bd8ed1b69e6171eaa66dd
2014-06-22 14:12:57 +02:00
Bobby Holley
efd90d884a Bug 1090991 - Introduce a new NotDecodedReason WAITING_FOR_DATA and use it for MSE. r=cpearce,r=cajbir 2014-11-03 09:20:15 +01:00
Bobby Holley
a757b63f7e Bug 1090991 - Unify MediaDecoderStateMachine::On{DecodeError,AudioEOS,VideoEOS} and eliminate duplicated logic. r=cpearce
We take this opportunity to align the behavior of Finish() calls between audio
and video EOS, invoking them unconditionally for both cases. Currently both
cases always call Finish() immediately, with the exception of:

(A) Video in seeking mode, where we may push mFirstVideoFrameAfterSeek before
    doing so, and
(B) Video in the |default:| case.

Push() and Finish() seem like orthogonal operations on MediaQueue, but we
nonetheless preserve the old order just in case. There doesn't seem to be a good
reason for (B).
2014-11-03 09:20:14 +01:00
Bobby Holley
a215c61b6a Bug 1090991 - Refactor RequestSampleCallback to use a single callback for all "not decoded" message. r=cpearce,r=cajbir
I'm going to add another one, and want this API to scale better than it does.
2014-11-03 09:20:14 +01:00
JW Wang
eaff88ccea Bug 1079695 - Part 3 - fix const-correctness of MediaDecoderStateMachine. r=kinetik 2014-10-30 21:12:00 +01:00
JW Wang
4d39082ebf Bug 1079695 - Part 2 - remove audio clock wordaround from MediaDecoderStateMachine. r=kinetik. 2014-11-02 18:06:00 +01:00
Bobby Holley
053e9ca254 Bug 1090983 - Invoke UpdateReadyState() after invoking SetState(). r=cpearce
Otherwise, UpdateReadyState() will think that nothing has changed.
2014-10-30 09:16:02 +01:00
Matt Woodrow
1668f024f7 Bug 1089480 - Assume a start time of 0 for MSE videos. r=cajbir
--HG--
extra : rebase_source : fb44192e9f7f97a9ed1d753dd185dc82fdeaaa48
2014-10-29 09:30:36 +13:00
JW Wang
c43aaafaa2 Bug 1085204 - take playback rate into account when calculating presentation time of a video frame. r=cpearce. 2014-10-27 23:31:00 +01:00