Closed
Bug 1184874
Opened 10 years ago
Closed 10 years ago
Remove dependency on MediaDecoderStateMachine::DispatchOnPlaybackOffsetUpdate from AudioSink
Categories
(Core :: Audio/Video, defect)
Core
Audio/Video
Tracking
()
RESOLVED
FIXED
mozilla42
Tracking | Status | |
---|---|---|
firefox42 | --- | fixed |
People
(Reporter: jwwang, Assigned: jwwang)
Details
Attachments
(3 files)
1.08 KB,
patch
|
cpearce
:
review+
|
Details | Diff | Splinter Review |
6.99 KB,
patch
|
cpearce
:
review+
|
Details | Diff | Splinter Review |
4.53 KB,
patch
|
cpearce
:
review+
|
Details | Diff | Splinter Review |
This bug reduces bi-directional dependency between MDSM and AudioSink and makes it easier to unify AudioSink and DecodedStream.
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → jwwang
Assignee | ||
Comment 1•10 years ago
|
||
Assignee | ||
Comment 2•10 years ago
|
||
Assignee | ||
Comment 4•10 years ago
|
||
Part 2 - add the ability to know which item is popped from the MediaQueue.
Attachment #8636931 -
Flags: review?(cpearce)
Assignee | ||
Comment 5•10 years ago
|
||
Part 3 - call mDecoder->UpdatePlaybackOffset in On{Audio,Video}Popped and remove MediaDecoderStateMachine::DispatchOnPlaybackOffsetUpdate.
Assignee | ||
Updated•10 years ago
|
Attachment #8636932 -
Flags: review?(cpearce)
Updated•10 years ago
|
Attachment #8636930 -
Flags: review?(cpearce) → review+
Updated•10 years ago
|
Attachment #8636931 -
Flags: review?(cpearce) → review+
Comment 6•10 years ago
|
||
Comment on attachment 8636932 [details] [diff] [review]
1184874_part3_remove_DispatchOnPlaybackOffsetUpdate-v1.patch
Review of attachment 8636932 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/media/MediaDecoderStateMachine.cpp
@@ +688,5 @@
> MediaDecoderStateMachine::OnAudioPopped(const AudioData* aSample)
> {
> MOZ_ASSERT(OnTaskQueue());
> ReentrantMonitorAutoEnter mon(mDecoder->GetReentrantMonitor());
> + // TODO: could mOffset be -1?
It mOffset should not be < 0. You could assert that. Or even do:
mDecoder->UpdatePlaybackOffset(std::max(0, aSample->mOffset));
Attachment #8636932 -
Flags: review?(cpearce) → review+
Assignee | ||
Comment 7•10 years ago
|
||
Comment on attachment 8636932 [details] [diff] [review]
1184874_part3_remove_DispatchOnPlaybackOffsetUpdate-v1.patch
Review of attachment 8636932 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/media/MediaDecoderStateMachine.cpp
@@ +688,5 @@
> MediaDecoderStateMachine::OnAudioPopped(const AudioData* aSample)
> {
> MOZ_ASSERT(OnTaskQueue());
> ReentrantMonitorAutoEnter mon(mDecoder->GetReentrantMonitor());
> + // TODO: could mOffset be -1?
The code is moved from AudioSink. Sure, I will adjust the value to be non-negative.
Assignee | ||
Comment 8•10 years ago
|
||
Thanks for the review.
Comment 10•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/2a3bb1b5861b
https://hg.mozilla.org/mozilla-central/rev/f8dd2f681ce8
https://hg.mozilla.org/mozilla-central/rev/4625fdae1cc3
Status: NEW → RESOLVED
Closed: 10 years ago
status-firefox42:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
You need to log in
before you can comment on or make changes to this bug.
Description
•