Closed Bug 1016177 Opened 10 years ago Closed 10 years ago

AudioNodeStreams create tracks after they have finished

Categories

(Core :: Web Audio, defect, P2)

x86_64
Linux
defect

Tracking

()

RESOLVED FIXED
mozilla32

People

(Reporter: karlt, Assigned: karlt)

References

Details

Attachments

(2 files)

The TimeToTicksRoundDown(aRate, mTracksKnownTime) <= aStart, "Start time too early" assertion fails in StreamBuffer::AddTrack() at http://hg.mozilla.org/mozilla-central/annotate/b5bdc1aaf378/content/media/StreamBuffer.h#l227 if MEDIA_TIME_MAX is changed to INT64_MAX >> MEDIA_TIME_FRAC_BITS so as not to overflow when multiplied by sample rates.
MediaTimes are multiplied by sample rates when converting to ticks. This new maximum leaves 24 bits to count seconds, which corresponds to 194 days. TimeVarying::GetAt() can return INT64_MAX, which may be > GRAPH_TIME_MAX. The "Start time too early" assertion would now fail because conversion of STREAM_TIME_MAX to ticks no longer overflows.
Attachment #8434685 - Flags: review?(roc)
https://hg.mozilla.org/integration/mozilla-inbound/rev/80d207a21b88 https://hg.mozilla.org/integration/mozilla-inbound/rev/58f1f6dbe7ce Unfortunately the webrtc code makes asserting against this impractical, but at least we have a warning now.
Flags: in-testsuite-
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
Blocks: 1023697
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: