Commit Graph

28 Commits

Author SHA1 Message Date
JW Wang
b263fc85e1 Bug 1284399. Part 6 - store a copy of SeekTarget instead of its reference in SeekTask so it's life cycle can be independent from the client. r=kaku
MozReview-Commit-ID: BWrutqvsj29

--HG--
extra : rebase_source : 2eb997b9a13a7b9a3390700aceef9fbfb77268a2
extra : source : 8d7d3b19db1cfbc8df2e91bd78f6fbb9c7688ac0
2016-07-05 14:12:42 +08:00
JW Wang
b59f4f8bc4 Bug 1284399. Part 4 - move |mSeekJob.RejectIfExists(__func__)| out of SeekTask::Discard(). r=kaku
MozReview-Commit-ID: C0kmdNkCpk3

--HG--
extra : rebase_source : 0ed92f1b6fd88f94fac1049fa403f926ded3c0ce
extra : source : 2108ea7e3c390d0afcae3234204cf7cb83ff7b54
2016-07-05 13:55:32 +08:00
JW Wang
f6ec26e728 Bug 1284399. Part 2 - add MDSM::mCurrentSeek to replace SeekTask::mSeekJob. r=kaku
MozReview-Commit-ID: 84KJcdoXakS

--HG--
extra : rebase_source : 2f5ea74f31e95cca4e5e7371f05154e6245b612a
extra : source : 2b942182822fec8376c7f042d7c6f4071ebe49fe
2016-07-05 13:43:46 +08:00
JW Wang
715617f21b Bug 1284399. Part 1 - add GetSeekTarget() to remove direct access to mSeekJob. r=kaku
MozReview-Commit-ID: 60wIW9gHYKt

--HG--
extra : rebase_source : af1a96c78fbdab64f24ed4f39ac0becdc74aba0f
extra : source : cdf3a98800de9676871743751f57854645192c5d
2016-06-30 13:37:20 +08:00
JW Wang
2b74567dc5 Bug 1283785. Part 4 - remove unused macros and fix some styles. r=kaku
MozReview-Commit-ID: 4xz8rlymOsS

--HG--
extra : rebase_source : fc516865f9434192970ac89674b4731788226b86
2016-07-01 18:10:57 +08:00
JW Wang
764f9db0aa Bug 1283785. Part 3 - merge and remove unused functions. r=kaku
MozReview-Commit-ID: IC5bTvawVGm

--HG--
extra : rebase_source : 1194596e5516a4241f0c03f228c3496667421e61
2016-07-01 17:55:41 +08:00
JW Wang
871505d9fa Bug 1283785. Part 2 - remove the IsVideoDecoding() check from EnsureVideoDecodeTaskQueued(). r=kaku
EnsureVideoDecodeTaskQueued() is always called when NeedMoreVideo() is true which
guarantees mIsVideoQueueFinished is false and IsVideoDecoding() is true.

MozReview-Commit-ID: BURhDl6vNXi

--HG--
extra : rebase_source : 620175f87586075625ae3f57911f8f291a5320aa
2016-07-01 17:53:03 +08:00
JW Wang
1bac9b5fbe Bug 1283785. Part 1 - remove the IsVideoRequestPending() check from EnsureVideoDecodeTaskQueued() r=kaku
1. EnsureVideoDecodeTaskQueued() is called from video callbaks where IsVideoRequestPending() is false.
2. EnsureVideoDecodeTaskQueued() is called from Seek() which checks IsVideoRequestPending() is false.

MozReview-Commit-ID: 59qu0Gh6nK7

--HG--
extra : rebase_source : 29941e0e2a450db572f84d22de9707eeb250d6e9
2016-07-01 17:49:25 +08:00
JW Wang
dcbbe2b3bf Bug 1283783 - cancel callbacks before rejecting the promise. r=kaku
MozReview-Commit-ID: 820xSLlaKa3

--HG--
extra : rebase_source : f6a7ac45914958f4e8e7495f4f2c5342cca172c7
2016-07-01 16:09:32 +08:00
JW Wang
9d86d0a443 Bug 1283769 - don't discard audio samples until seek is completed. r=kaku
MozReview-Commit-ID: AirmL0fETNL

--HG--
extra : rebase_source : 194659f4eadb21604ce5dc8ee3aa151b16b3d154
2016-07-01 15:59:56 +08:00
JW Wang
fed5a4ba6d Bug 1283718. Part 6 - always check NeedMoreVideo() before requesting new video. r=kaku
We still have a chance to finish seeking even when video promises are rejected
provided we already have video samples in the queue.

MozReview-Commit-ID: 5cIbryiLMYt

--HG--
extra : rebase_source : bebed5ab2639686f75eb8aa122fe4e3aac3a98ca
2016-07-07 12:03:48 +08:00
JW Wang
5f103ef1ca Bug 1283718. Part 5 - move the call to EnsureVideoDecodeTaskQueued() out of MaybeFinishSeek() so we only request video in video callbacks. r=kaku
MozReview-Commit-ID: 3Hdwx26I9Mi

--HG--
extra : rebase_source : 9e9aa7e5acd2517904bb282746bba48cc43ce94c
2016-07-07 11:45:57 +08:00
JW Wang
44e9fa5a27 Bug 1283718. Part 4 - rename some function. r=kaku
MozReview-Commit-ID: CGOiy8SBjMR

--HG--
extra : rebase_source : 404b594b91473fecf2d445e402685ce080ae55aa
2016-07-07 11:39:56 +08:00
JW Wang
f0ef2f4515 Bug 1283718. Part 3 - replace some code with new helpers. r=kaku
MozReview-Commit-ID: 3fHSEoxdh9u

--HG--
extra : rebase_source : 0532da9c0b61f4c36acb52f397683e4560dc9a6a
2016-07-07 11:32:27 +08:00
JW Wang
d87290b303 Bug 1283718. Part 2 - fix the logic of IsVideoSeekComplete(). r=kaku
MozReview-Commit-ID: L1u5P5hWMAA

--HG--
extra : rebase_source : 670e70671e5e2449371b270303d933b6c044d091
2016-07-07 11:23:11 +08:00
JW Wang
e4535c4ebf Bug 1283718. Part 1 - fix comments and constify IsAudioSeekComplete(). r=kaku
MozReview-Commit-ID: 8NCyAURQ1RQ

--HG--
extra : rebase_source : 35ceb5ffd735878431764f34ea51892f82ed7ac8
extra : source : d50131544cb3ca7e5ad6a6d00f1574b47199ea4b
2016-07-01 11:43:06 +08:00
JW Wang
914165c6a4 Bug 1283370. Part 7 - remove setting mNeedToStopPrerollingVideo per discussion in https://reviewboard.mozilla.org/r/43689/#comment54421. r=kaku
MozReview-Commit-ID: 4yj3EBH84OF

--HG--
extra : rebase_source : d8d2b60be9a17f35ed65dbb8e0defe14f7584f4b
2016-07-01 11:47:44 +08:00
JW Wang
c0bdcf055e Bug 1283370. Part 6 - remove asserting |mReader->IsWaitForDataSupported()| for mReader->WaitForData() will crash if the method has no override. r=kaku
MozReview-Commit-ID: DrINZu4fkKl

--HG--
extra : rebase_source : 79f092e64ac84983262100bc50eaec2b9471cd90
2016-07-01 11:46:00 +08:00
JW Wang
8b4a9d2d4b Bug 1283370. Part 5 - make EnsureVideoDecodeTaskQueued() return void. r=kaku
MozReview-Commit-ID: 885lZ2eygvs

--HG--
extra : rebase_source : c2775fdc05e8557f098363bd682881642c7f183f
2016-06-30 17:47:57 +08:00
JW Wang
ce80f9e75b Bug 1283370. Part 4 - remove HasAudio(). r=kaku
We guarantee to have |!mReader->IsRequestingAudioData() && !mReader->IsWaitingAudioData()|
when there is no audio at all. We can remove the check for HasAudio().

MozReview-Commit-ID: KYYIq6n06Vr

--HG--
extra : rebase_source : d5e41b7fac5053ac36a1178a2f8e29eb077ada65
2016-06-30 17:42:57 +08:00
JW Wang
1d54d7845f Bug 1283370. Part 3 - remove unused HasVideo(). r=kaku
MozReview-Commit-ID: 8Cj1ILiWkNv

--HG--
extra : rebase_source : e3ee4f932e744a5385d8dc8251a99db3ff2c293b
2016-06-30 17:36:36 +08:00
JW Wang
4351dda8da Bug 1283370. Part 2 - remove unnecessary checks for HasVideo() for we assert it in the constructor. r=kaku
MozReview-Commit-ID: 5wfWmgtdgQw

--HG--
extra : rebase_source : 353083b246e62f94faf7b630f4bf00b41ef68b52
2016-06-30 17:34:31 +08:00
JW Wang
d42662c2fc Bug 1283370. Part 1 - remove unnecessary checks for Exists(). r=kaku
1. On{Audio,Video}[Not]Decoded() happens after |return mSeekTaskPromise.Ensure(__func__)|
   in Seek(). mSeekTaskPromise is non-empty and Exists() will return true.
2. Is{Audio,Video}SeekComplete() is called indirectly from On{Audio,Video}[Not]Decoded()
   where Exists() is guaranteed to be true.

MozReview-Commit-ID: DhaI8se8xPW

--HG--
extra : rebase_source : c7118bd9b4db3d4480d83098a51b04e44a385b59
2016-06-30 17:27:55 +08:00
JW Wang
1f9f27d78b Bug 1283394. Part 3 - check if seek is completed in AudioWaitCallback(). r=kaku
MozReview-Commit-ID: ACopopP2gnf

--HG--
extra : rebase_source : 37e82c4dec1e4419b670c40eb0f3057e068ed02c
2016-06-30 17:03:12 +08:00
JW Wang
4ecd4baeee Bug 1283394. Part 2 - remove some null-checks. r=kaku
MozReview-Commit-ID: D8DkptoCNgK

--HG--
extra : rebase_source : f367fdc680b81c419b90f7aa6b03229d47707a62
2016-06-30 14:18:37 +08:00
JW Wang
b7af24ae34 Bug 1283394. Part 1 - rename some functions. r=kaku
MozReview-Commit-ID: IrdaLYk1hwX

--HG--
extra : rebase_source : acf0e0939b6f6016cfb0e04607ccc33fdc883211
2016-06-30 14:16:18 +08:00
JW Wang
67a5e7b845 Bug 1281090. Part 3 - replace MediaDecoderReaderWrapper::Set{Audio,Video}Callback with MediaCallback. r=kaku.
MozReview-Commit-ID: DleK3s5F3sD

--HG--
extra : rebase_source : d4ef0e44106f939ed0695e5eef6df181e9bd0ec9
2016-06-14 11:22:45 +08:00
Kaku Kuo
e6658c1851 Bug 1235301 - part 2 - implement NextFrameSeekTask; r=jwwang
MozReview-Commit-ID: 3ucCLzT6w27

--HG--
extra : rebase_source : c5fe5bc4fd4f616b56ca961dda18e2e06f91d059
2016-05-24 11:03:12 +08:00