Andreas Pehrson
80e35edf78
Bug 1113600 - Part 4. Handle switching directly from audio clock to stream clock. r=roc
2015-01-13 03:23:48 +08:00
Andreas Pehrson
a22a198c37
Bug 1113600 - Part 2. Handle setting a MediaStream sync point mid-playback. r=roc
2015-01-08 13:37:22 +08:00
Andreas Pehrson
a5b7750c02
Bug 1113600 - Part 1. Send stream data right away after adding an output stream. r=roc
2015-01-08 13:36:29 +08:00
Sotaro Ikeda
18b1606ac8
Bug 1112410 - Handle set dormant during seeking r=cpearce
2015-01-12 15:08:55 -08:00
JW Wang
1bb19d6931
Bug 1115505 - keep decoding to ensure the stream is initialized in the decode-to-stream case. r=roc
2014-12-25 01:26:00 +01:00
Matt Woodrow
972dde5588
Bug 1105066 - Make SeekPromise return the time we actually seeked to; r=kentuckyfriedtakahe
2015-01-12 10:57:14 +13:00
Chris Peterson
9e23388ca8
Bug 1118076 - Remove MOZ_THIS_IN_INITIALIZER_LIST. r=Waldo
2015-01-06 21:39:46 -08:00
Bobby Holley
8d967098a2
Bug 1120017 - Make the DispatchDecodeTasksIfNeeded path handle DECODER_STATE_DECODING_FIRSTFRAME. r=cpearce
...
Once we make MP4Reader reject with WAITING_FOR_DATA, we end up with the following scenario:
DecodeFirstFrame requests audio data, and then it gets rejected with WAITING_FOR_DATA.
So OnAudioNotDecided does WaitForData, which eventually causes us to be called back in
MediaDecoderStateMachine::WaitForDataResolved. That does DispatchDecodeTasksIfNeeded, which
currently bails out of our state is DECODER_STATE_DECODING_FIRSTFRAME.
The other way to do this would be to add a separate specialized path through all this
asynchronicity for DECODER_STATE_DECODING_FIRSTFRAME. But it's not clear to me what that
buys us.
2015-01-09 17:20:58 -08:00
Jonathan Hao
e56901c3a0
Bug 1080461 - Part 2: Fix RTSP autoplay. r=bechen, r=jwwang
2015-01-06 09:58:04 +08:00
Jonathan Hao
a29a94eff5
Bug 1080461 - Part 1: Add IsRealTime() in MediaDecoderStateMachine. r=bechen, r=jwwang
2015-01-06 09:57:53 +08:00
Bobby Holley
81fc7d1d4b
Bug 1114840 - Don't start playback during prerolling. r=cpearce
2014-12-29 23:16:48 -08:00
Bobby Holley
c3291e8b61
Bug 1114840 - Dynamically compute preroll thresholds. r=cpearce
...
Currently, the preroll threshold ends up higher than the ample threshold in the
audio-only case where we slash the audio thresholds by a factor of 8. The best
way to avoid these sorts of bugs is to compute the values dynamically.
2014-12-29 23:16:48 -08:00
Bobby Holley
01990f4d69
Bug 1114840 - Hoist arms-length conditions and rename StartPlayback() to MaybeStartPlayback(). r=cpearce
2014-12-29 23:16:48 -08:00
Bobby Holley
1eefb9ac1f
Bug 1114840 - Use StartDecoding() rather than SetState in PlayInternal. r=cpearce
...
This makes sure that decode tasks are dispatched and that all the preroll state
is appropriately set up.
2014-12-29 23:16:48 -08:00
Bobby Holley
680cba307f
Bug 1114840 - Make MediaDecoderStateMachine::Play run on the state machine thread. r=cpearce
...
We want to invoke StartDecoding() from Play, but that calls into a bunch of stuff
that asserts that we're on the state machine thread. It's not clear to me whether
that's actually necessary, but this seems like the right thing to do regardless
given that this is all supposed to be async anyway.
2014-12-29 23:16:48 -08:00
Bobby Holley
51e382d00c
Bug 1114830 - Only enter buffering mode when the pending request is waiting for data. r=cpearce a=philor
2014-12-22 20:54:01 -08:00
Bobby Holley
f01bb671ea
Bug 1109437 - Only switch to buffering mode when the reader is waiting for data. r=cpearce
2014-12-22 00:20:31 -08:00
Bobby Holley
49601684ad
Bug 1109437 - Implement non-polling buffering. r=cpearce
2014-12-22 00:20:31 -08:00
Bobby Holley
17a26db299
Bug 1109437 - Switch m{Audio,Video}RequestPending to a tri-state. r=cpearce
2014-12-22 00:20:31 -08:00
Bobby Holley
663679c83b
Bug 1109437 - Stop using buffering heuristics when they're not requested. r=cpearce
...
Given that we set the buffering wait to 0 in this case already, the only practical
impact on our behavior of this change is that we'll no longer ping-pong between
states.
2014-12-22 00:20:30 -08:00
Bobby Holley
05224076bc
Bug 1109437 - Generalize GetBufferingWait to UseBufferingHeuristics. r=cpearce
2014-12-22 00:20:30 -08:00
Benjamin Chen
d676e9ef65
Bug 1091992 - fix the flag skipToNextKeyFrame in DecodeVideo can't be raised if the video is slower than audio. r=cpearce, r=jwwang
2014-12-22 11:32:31 +08:00
Matt Woodrow
675718e2ea
Bug 1112446 - Add logging for media queue lengths. r=ajones
2014-12-18 12:41:19 +13:00
Matt Woodrow
646b842413
Bug 1111413 - Part 2: Remove RequestSampleCallback. r=bholley
2014-12-16 23:08:42 +13:00
Matt Woodrow
2c7e571767
Bug 1111413 - Part 1: Use MediaPromises for seeking. r=bholley
2014-12-16 22:52:57 +13:00
Alfredo Yang
b140d759be
Bug 1105209 - Add media resource request API. r=kentuckyfriedtakahe
2014-12-15 22:25:00 -05:00
Alastor Wu
50d890e0f7
Bug 1100803 - Re-create a decoded media stream if necessary. r=roc
2014-12-15 09:22:15 +08:00
Sotaro Ikeda
e32c11d714
Bug 1108728 - Remove dormant related state from MediaDecoder r=cpearce
2014-12-12 17:29:24 -08:00
Bobby Holley
da72b3891c
Bug 1109954 - Make resolve/reject values optional in callback signatures. r=cpearce
2014-12-12 14:22:23 -08:00
Bobby Holley
ed81da5593
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
6ec9fa2dd8
Bug 1109954 - Make resolve/reject values optional in callback signatures. r=cpearce
2014-12-10 22:38:33 -08:00
Bobby Holley
60c0158fdd
Bug 1108701 - Use MediaPromises for RequestAudioData and RequestVideoData. r=cpearce
2014-12-10 14:03:56 -08:00
Bobby Holley
312651fc98
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
073573c2a9
Backed out changeset 18c302f80bce (bug 1108707) for nsTArray_base leaks.
...
CLOSED TREE
2014-12-09 15:49:38 -05:00
Bobby Holley
fc5e0383a6
Bug 1108707 - Make reader shutdown asynchronous. r=cpearce
2014-12-09 11:43:21 -08:00
Bobby Holley
8c9d29f7fe
Bug 1097823 - Move NotDecodedReason from RequestSampleCallback to MediaDecoderReader. r=cpearce
2014-12-08 14:45:36 -08:00
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