Closed
Bug 1378085
Opened 7 years ago
Closed 7 years ago
Decouple video-only seek into a subclass of AccurateSeekingState.
Categories
(Core :: Audio/Video: Playback, enhancement)
Core
Audio/Video: Playback
Tracking
()
RESOLVED
FIXED
mozilla56
Tracking | Status | |
---|---|---|
firefox56 | --- | fixed |
People
(Reporter: kaku, Assigned: kaku)
References
Details
Attachments
(9 files, 1 obsolete file)
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
59 bytes,
text/x-review-board-request
|
jwwang
:
review+
|
Details |
Spawn from bug 1375922 comment 24.
Assignee | ||
Updated•7 years ago
|
Assignee: nobody → kaku
Status: NEW → ASSIGNED
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Assignee | ||
Comment 10•7 years ago
|
||
try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=51afcc026035f2662d27730472bf9a991af6fe64
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Assignee | ||
Comment 20•7 years ago
|
||
mozreview-review |
Comment on attachment 8883249 [details] Bug 1378085 P2 - override Enter(); https://reviewboard.mozilla.org/r/154178/#review159426 ::: dom/media/MediaDecoderStateMachine.cpp:974 (Diff revision 2) > - // Dispatch a mozvideoonlyseekbegin event to indicate UI for corresponding > + NotifyVideoOnlySeekBegin(); > - // changes. > - if (mSeekJob.mTarget->IsVideoOnly()) { > - mMaster->mOnPlaybackEvent.Notify(MediaEventType::VideoOnlySeekBegin); > - } Having a port here for a specific subclass is not ideal, but we need to maintain the event order of ExitVideoSuspend and VideoOnlySeekBegin (as we introduced in bug 1355031). Any suggestion?
Assignee | ||
Comment 21•7 years ago
|
||
try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=be0c90fdf9b62de45a98b7cf7f6edcc8c7a32596
Comment 22•7 years ago
|
||
mozreview-review |
Comment on attachment 8883249 [details] Bug 1378085 P2 - override Enter(); https://reviewboard.mozilla.org/r/154178/#review159434 ::: dom/media/MediaDecoderStateMachine.cpp:974 (Diff revision 2) > - // Dispatch a mozvideoonlyseekbegin event to indicate UI for corresponding > + NotifyVideoOnlySeekBegin(); > - // changes. > - if (mSeekJob.mTarget->IsVideoOnly()) { > - mMaster->mOnPlaybackEvent.Notify(MediaEventType::VideoOnlySeekBegin); > - } It is confusing when you have many pieces of code that could be overridden by the sub-classes in a function. ::: dom/media/MediaDecoderStateMachine.cpp:1780 (Diff revision 2) > + EventVisibility aVisibility) > + { > + MOZ_ASSERT(aSeekJob.mTarget->IsVideoOnly()); > + MOZ_ASSERT(aVisibility == EventVisibility::Suppressed); > + > + return AccurateSeekingState::Enter(Move(aSeekJob), aVisibility); You can change the order of the statements and do: // Stop playback. RefPtr<MediaDecoder::SeekPromise> p = AccurateSeekingState::Enter(...); // Notify the event. return p.forget();
Attachment #8883249 -
Flags: review?(jwwang) → review-
Comment 23•7 years ago
|
||
mozreview-review |
Comment on attachment 8883248 [details] Bug 1378085 P1 - create VideoOnlySeekingState; https://reviewboard.mozilla.org/r/154176/#review159436
Attachment #8883248 -
Flags: review?(jwwang) → review+
Comment 24•7 years ago
|
||
mozreview-review |
Comment on attachment 8883250 [details] Bug 1378085 P3 - override Exit(); https://reviewboard.mozilla.org/r/154180/#review159450
Attachment #8883250 -
Flags: review?(jwwang) → review+
Comment 25•7 years ago
|
||
mozreview-review |
Comment on attachment 8883251 [details] Bug 1378085 p4 - override HandleAudioDecoded(); https://reviewboard.mozilla.org/r/154182/#review159452
Attachment #8883251 -
Flags: review?(jwwang) → review+
Comment 26•7 years ago
|
||
mozreview-review |
Comment on attachment 8883252 [details] Bug 1378085 p5 - override HandleWaitingForAudio(), HandleAudioCanceled(), and HandleEndOfAudio(); https://reviewboard.mozilla.org/r/154184/#review159454
Attachment #8883252 -
Flags: review?(jwwang) → review+
Comment 27•7 years ago
|
||
mozreview-review |
Comment on attachment 8883253 [details] Bug 1378085 p6 - override HandleAudioWaited(); https://reviewboard.mozilla.org/r/154186/#review159456
Attachment #8883253 -
Flags: review?(jwwang) → review+
Comment 28•7 years ago
|
||
mozreview-review |
Comment on attachment 8883254 [details] Bug 1378085 p7 - override DoSeek(); https://reviewboard.mozilla.org/r/154188/#review159458
Attachment #8883254 -
Flags: review?(jwwang) → review+
Comment 29•7 years ago
|
||
mozreview-review |
Comment on attachment 8883255 [details] Bug 1378085 P8 - don't update playback position in video-only seeking; https://reviewboard.mozilla.org/r/154190/#review159460 The same problem as P2.
Attachment #8883255 -
Flags: review?(jwwang) → review-
Comment 30•7 years ago
|
||
mozreview-review |
Comment on attachment 8883256 [details] Bug 1378085 P8 - always dispatch VideoOnlySeekCompleted at VideoOnlySeekingState::Exit(); https://reviewboard.mozilla.org/r/154192/#review159462
Attachment #8883256 -
Flags: review?(jwwang) → review+
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Assignee | ||
Updated•7 years ago
|
Attachment #8883255 -
Attachment is obsolete: true
Assignee | ||
Comment 40•7 years ago
|
||
try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=74f6012dc8616691ca9a6ca05a80b8d8f568f382 try for P0 only: https://treeherder.mozilla.org/#/jobs?repo=try&revision=af98dcfc8816f335bae96c10b199c2219450b093
Comment 41•7 years ago
|
||
mozreview-review |
Comment on attachment 8883818 [details] Bug 1378085 P0 - update playback position only if event visibility is observable; https://reviewboard.mozilla.org/r/154772/#review159804
Attachment #8883818 -
Flags: review?(jwwang) → review+
Comment 42•7 years ago
|
||
mozreview-review |
Comment on attachment 8883249 [details] Bug 1378085 P2 - override Enter(); https://reviewboard.mozilla.org/r/154178/#review159806
Attachment #8883249 -
Flags: review?(jwwang) → review+
Assignee | ||
Comment 43•7 years ago
|
||
Try looks pretty good, thanks for the review!
Comment 44•7 years ago
|
||
Pushed by tkuo@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ad71152dc8a5 P0 - update playback position only if event visibility is observable; r=jwwang https://hg.mozilla.org/integration/autoland/rev/8ea49c9fe3b8 P1 - create VideoOnlySeekingState; r=jwwang https://hg.mozilla.org/integration/autoland/rev/e3e65c829660 P2 - override Enter(); r=jwwang https://hg.mozilla.org/integration/autoland/rev/1395148684c3 P3 - override Exit(); r=jwwang https://hg.mozilla.org/integration/autoland/rev/17c791afc45b p4 - override HandleAudioDecoded(); r=jwwang https://hg.mozilla.org/integration/autoland/rev/cdee15b41196 p5 - override HandleWaitingForAudio(), HandleAudioCanceled(), and HandleEndOfAudio(); r=jwwang https://hg.mozilla.org/integration/autoland/rev/fc04749e3534 p6 - override HandleAudioWaited(); r=jwwang https://hg.mozilla.org/integration/autoland/rev/ac3d88e3f67e p7 - override DoSeek(); r=jwwang https://hg.mozilla.org/integration/autoland/rev/d890f9fc0b5c P8 - always dispatch VideoOnlySeekCompleted at VideoOnlySeekingState::Exit(); r=jwwang
Comment 45•7 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/ad71152dc8a5 https://hg.mozilla.org/mozilla-central/rev/8ea49c9fe3b8 https://hg.mozilla.org/mozilla-central/rev/e3e65c829660 https://hg.mozilla.org/mozilla-central/rev/1395148684c3 https://hg.mozilla.org/mozilla-central/rev/17c791afc45b https://hg.mozilla.org/mozilla-central/rev/cdee15b41196 https://hg.mozilla.org/mozilla-central/rev/fc04749e3534 https://hg.mozilla.org/mozilla-central/rev/ac3d88e3f67e https://hg.mozilla.org/mozilla-central/rev/d890f9fc0b5c
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
status-firefox56:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla56
You need to log in
before you can comment on or make changes to this bug.
Description
•