Closed
Bug 1139271
Opened 11 years ago
Closed 11 years ago
Video stalls due to a gap in audio
Categories
(Core :: Audio/Video, defect, P2)
Tracking
()
RESOLVED
FIXED
mozilla39
People
(Reporter: ajones, Assigned: jya)
References
(Blocks 1 open bug)
Details
Attachments
(3 files, 1 obsolete file)
10.00 KB,
patch
|
ajones
:
review+
lsblakk
:
approval-mozilla-aurora+
lsblakk
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
4.02 KB,
patch
|
ajones
:
review+
|
Details | Diff | Splinter Review |
3.64 KB,
patch
|
ajones
:
review+
|
Details | Diff | Splinter Review |
This video seems to have somehow hit a gap in the audio stream:
HTMLMediaElement debug data
https://www.youtube.com/watch?v=d7zLIm3ipkM&index=26&list=LL2pmfLm7iq6Ov1UwYrWYkZA
mediasource:https://www.youtube.com/69090b09-4e6e-4ab0-8f33-08548ccbedb3
currentTime: 68.840022
SourceBuffer 0
start=0 end=70.007505
start=80.015963 end=278.383537
SourceBuffer 1
start=0 end=278.28
Internal Data:
Dumping data for reader c2aeac0:
Dumping Audio Track Decoders: - mLastAudioTime: 70.008162
Reader 0: 100bf000 ranges=[(0.000000, 70.007505), (80.015963, 278.383537)] active=false size=4469781
Dumping Video Track Decoders - mLastVideoTime: 69.280000
Reader 3: ee81400 ranges=[(210.600000, 278.280000)] active=false size=4105181
Reader 2: 15a4bc00 ranges=[(48.600000, 210.600000)] active=true size=4886615
Reader 1: 15315800 ranges=[(27.000000, 48.600000)] active=false size=659028
Reader 0: 10131400 ranges=[(0.000000, 32.400000)] active=false size=446501
Assignee | ||
Comment 1•11 years ago
|
||
I've seen this happening from time to time. No eviction occurred, yet the gap was there.. Seems to I dicate to me a bug with youtube.
![]() |
Reporter | |
Comment 2•11 years ago
|
||
We've got 1 audio decoder with two time ranges, but we only append to an existing decoder if the end of one time range matches the start of the next. Something is not right. I'll try to get a log.
Assignee | ||
Comment 3•11 years ago
|
||
one possibility would be that the data passed to appendBuffer doesn't start with a moof or styp, but instead the previous segment contained a partial moof, or contained a moof+partial mdat.
We don't handle partial media segment at this stage.
Updated•11 years ago
|
Priority: -- → P2
Assignee | ||
Updated•11 years ago
|
Assignee: nobody → jyavenard
Assignee | ||
Comment 5•11 years ago
|
||
I have a way to reproduce the issue consistently now thanks to info provided by Google.
I'm hoping I'll have it done this week-end.
I hope this is the last case that can cause stalls in YouTube
Assignee | ||
Comment 6•11 years ago
|
||
Add logs when mp4's atoms are invalid
Attachment #8577612 -
Flags: review?(ajones)
Assignee | ||
Comment 7•11 years ago
|
||
If a moof is incomplete, MoofParser::mOffset would be updated causing this moof to never be parsed again, leading to gaps in the buffered range. Ideally, Box.IsAvailable() should return false if we don't have the entire data available in the stream. To come.
Attachment #8577613 -
Flags: review?(ajones)
Assignee | ||
Comment 8•11 years ago
|
||
Can return a sample if we found one moof, so do so only abort if we found no valid moof.
Attachment #8577614 -
Flags: review?(ajones)
Assignee | ||
Updated•11 years ago
|
Attachment #8577613 -
Attachment is obsolete: true
Attachment #8577613 -
Flags: review?(ajones)
Assignee | ||
Comment 9•11 years ago
|
||
Only consider a box as available if entire content is present. Avoid having non properly handled partial read.
Attachment #8577617 -
Flags: review?(ajones)
![]() |
Reporter | |
Comment 10•11 years ago
|
||
Comment on attachment 8577612 [details] [diff] [review]
Part1. Add logging when encountering invalid atmos
Review of attachment 8577612 [details] [diff] [review]:
-----------------------------------------------------------------
::: media/libstagefright/binding/MoofParser.cpp
@@ +737,5 @@
> mValid = true;
> }
> +
> +#undef LOG
> +#undef LOGV
Looks like we're undefing the wrong things here. Should be LOG, TOSTIRNG, STRINGIFY, __func__.
Suggestion: It probably belongs in a separate header file.
Attachment #8577612 -
Flags: review?(ajones) → review+
![]() |
Reporter | |
Updated•11 years ago
|
Attachment #8577614 -
Flags: review?(ajones) → review+
![]() |
Reporter | |
Updated•11 years ago
|
Attachment #8577617 -
Flags: review?(ajones) → review+
Assignee | ||
Comment 11•11 years ago
|
||
![]() |
||
Comment 12•11 years ago
|
||
Tracking 37+ for MSE related playback bug.
status-firefox36:
--- → unaffected
status-firefox37:
--- → affected
status-firefox38:
--- → affected
status-firefox39:
--- → affected
tracking-firefox38:
--- → +
tracking-firefox39:
--- → +
Assignee | ||
Comment 13•11 years ago
|
||
Comment on attachment 8577612 [details] [diff] [review]
Part1. Add logging when encountering invalid atmos
Approval is for all patches.
Approval Request Comment
[Feature/regressing bug #]:1139271
[User impact if declined]: YouTube playback will sometimes stall
[Describe test coverage new/current, TreeHerder]:Not hit central yet. Sample test case to reproduce issue provided by Google.
[Risks and why]: Low. This is MSE so no regression can be introduced
[String/UUID change made/needed]:None
Attachment #8577612 -
Flags: approval-mozilla-beta?
Attachment #8577612 -
Flags: approval-mozilla-aurora?
![]() |
||
Comment 14•11 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/8d9bee3deba7
https://hg.mozilla.org/mozilla-central/rev/4d81c5f8293d
https://hg.mozilla.org/mozilla-central/rev/87d3cef0f4aa
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
Comment 15•11 years ago
|
||
Comment on attachment 8577612 [details] [diff] [review]
Part1. Add logging when encountering invalid atmos
Approving uplift for Beta given low risk.
Attachment #8577612 -
Flags: approval-mozilla-beta?
Attachment #8577612 -
Flags: approval-mozilla-beta+
Attachment #8577612 -
Flags: approval-mozilla-aurora?
Attachment #8577612 -
Flags: approval-mozilla-aurora+
Comment 17•11 years ago
|
||
Comment 18•11 years ago
|
||
Comment 20•2 years ago
|
||
Part 3 was essentially reverted in https://hg.mozilla.org/integration/mozilla-inbound/rev/cd65aead5419#l1.30
Regressions: 1149278
You need to log in
before you can comment on or make changes to this bug.
Description
•