Closed
Bug 1057201
Opened 10 years ago
Closed 10 years ago
MP4Reader can get stuck in MP4Reader::Decode() somehow
Categories
(Core :: Audio/Video, defect)
Tracking
()
RESOLVED
FIXED
mozilla34
People
(Reporter: cpearce, Assigned: cpearce)
Details
Attachments
(1 file)
986 bytes,
patch
|
ajones
:
review+
|
Details | Diff | Splinter Review |
I discovered that MP4Reader can get the decode thread stuck in the "prevNumFramesOutput == data.mNumSamplesOutput" wait at the bottom of Decode(). Not sure how to repro, but I think it has something to do with seeking when the network is slow.
Assignee | ||
Comment 1•10 years ago
|
||
The problem is that MP4Reader::NotifyDataArrived() can dispatch an event to the audio/video task queues, and the MediaDataDecoders are assuming that only they dispatch to those task queues and they're using MediaTaskQueue.IsEmpty() to decide whether they've processed all their input. With the recent changes to GetBuffered(), that assumption is no longer valid.
Assignee | ||
Comment 2•10 years ago
|
||
Don't use the decoder's task queues to update index. I'll try to figure out a way to not make these visible inside MP4Reader at all on Monday. For now, here's the fix.
Attachment #8477214 -
Flags: review?(ajones)
Updated•10 years ago
|
Attachment #8477214 -
Flags: review?(ajones) → review+
Assignee | ||
Comment 3•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/e036df3c1caf
https://hg.mozilla.org/mozilla-central/rev/e036df3c1caf
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
You need to log in
before you can comment on or make changes to this bug.
Description
•