Closed Bug 1340446 Opened 7 years ago Closed 7 years ago

Rounding error in composition_start time

Categories

(Core :: Audio/Video: Playback, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla54
Tracking Status
firefox54 --- fixed

People

(Reporter: ayang, Assigned: ayang)

References

Details

Attachments

(1 file)

Stagefright's result:

[MediaPDecoder #1]: D/MP4Metadata s_o: 8753, e_o: 18567, s_c: 95000, e_c: 128344, s_d: 0, sync: 1
[MediaPDecoder #1]: D/MP4Metadata s_o: 18567, e_o: 19384, s_c: 161666, e_c: 195011, s_d: 33333, sync: 0
[MediaPDecoder #1]: D/MP4Metadata s_o: 19384, e_o: 19982, s_c: 128344, e_c: 161666, s_d: 33344, sync: 0
[MediaPDecoder #1]: D/MP4Metadata s_o: 19982, e_o: 20638, s_c: 228333, e_c: 261677, s_d: 100000, sync: 0
[MediaPDecoder #1]: D/MP4Metadata s_o: 20638, e_o: 21144, s_c: 195011, e_c: 228333, s_d: 100011, sync: 0
[MediaPDecoder #1]: D/MP4Metadata s_o: 21144, e_o: 21847, s_c: 295000, e_c: 328344, s_d: 166666, sync: 0


Rust MP4 parser result:
mp4parse_indice { start_offset: 8753, end_offset: 18567, start_composition: 95000, end_composition: 128344, start_decode: 0, sync: true }
mp4parse_indice { start_offset: 18567, end_offset: 19384, start_composition: 161666, end_composition: 195011, start_decode: 33333, sync: false }
mp4parse_indice { start_offset: 19384, end_offset: 19982, start_composition: 128344, end_composition: 161666, start_decode: 33344, sync: false }
mp4parse_indice { start_offset: 19982, end_offset: 20638, start_composition: 228333, end_composition: 261677, start_decode: 100000, sync: false }
mp4parse_indice { start_offset: 20638, end_offset: 21144, start_composition: 195011, end_composition: 228333, start_decode: 100011, sync: false }
mp4parse_indice { start_offset: 21144, end_offset: 21847, start_composition: 294999, end_composition: 328344, start_decode: 166666, sync: false }


There is one us different in start_composition time; it should be rounding error from rational_scale().
This difference doesn't propagate to next sample, so I probably just keep it.
Blocks: 1161350
Depends on: 1331330
Blocks: 1341221
Comment on attachment 8839794 [details]
Bug 1340446 - check the rounding error smaller or euqal to one.

https://reviewboard.mozilla.org/r/114348/#review115800
Attachment #8839794 - Flags: review?(kinetik) → review+
Pushed by ayang@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/437ff32b12ea
check the rounding error smaller or euqal to one. r=kinetik
Pushed by ayang@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/58659a84e538
check the rounding error smaller or euqal to one. r=kinetik
Backed out for failing dom/media/mediasource/test/test_FrameSelection.html on Android:

https://hg.mozilla.org/integration/autoland/rev/22b9b71fded8a729f17274a61831c6ec966b2675

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=58659a84e538f102d76fd2a142dc15834d23dcb7&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&filter-resultStatus=retry&filter-resultStatus=usercancel&filter-resultStatus=runnable
Failure log Android: https://treeherder.mozilla.org/logviewer.html#?job_id=79580943&repo=autoland

[task 2017-02-23T08:32:59.326092Z] 08:32:59     INFO -  15 INFO TEST-START | dom/media/mediasource/test/test_FrameSelection.html
[task 2017-02-23T08:37:58.969826Z] 08:37:58     INFO -  Buffered messages logged at 08:32:56
[task 2017-02-23T08:37:58.969936Z] 08:37:58     INFO -  16 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | fetchWithXHR load uri='seek.webm' status=200
[task 2017-02-23T08:37:58.969990Z] 08:37:58     INFO -  Buffered messages logged at 08:32:57
[task 2017-02-23T08:37:58.970059Z] 08:37:58     INFO -  17 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | currentTime has correct initial value
[task 2017-02-23T08:37:58.971093Z] 08:37:58     INFO -  18 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | videoWidth has correct initial value
[task 2017-02-23T08:37:58.971176Z] 08:37:58     INFO -  19 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | videoHeight has correct initial value
[task 2017-02-23T08:37:58.971614Z] 08:37:58     INFO -  20 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | fetchWithXHR load uri='seek_lowres.webm' status=200
[task 2017-02-23T08:37:58.972600Z] 08:37:58     INFO -  21 INFO Appending low-res init segment
[task 2017-02-23T08:37:58.972657Z] 08:37:58     INFO -  22 INFO Appending low-res range [2,4]
[task 2017-02-23T08:37:58.972701Z] 08:37:58     INFO -  23 INFO Seeking to t=3
[task 2017-02-23T08:37:58.973037Z] 08:37:58     INFO -  24 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | Video currentTime at target
[task 2017-02-23T08:37:58.973672Z] 08:37:58     INFO -  25 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | videoWidth has correct low-res value
[task 2017-02-23T08:37:58.974054Z] 08:37:58     INFO -  Buffered messages logged at 08:32:58
[task 2017-02-23T08:37:58.974355Z] 08:37:58     INFO -  26 INFO TEST-PASS | dom/media/mediasource/test/test_FrameSelection.html | videoHeight has correct low-res value
[task 2017-02-23T08:37:58.974545Z] 08:37:58     INFO -  27 INFO Seeking to t=1
[task 2017-02-23T08:37:58.974797Z] 08:37:58     INFO -  Buffered messages finished
[task 2017-02-23T08:37:58.975064Z] 08:37:58     INFO -  28 INFO TEST-UNEXPECTED-FAIL | dom/media/mediasource/test/test_FrameSelection.html | Test timed out.
[task 2017-02-23T08:37:58.975291Z] 08:37:58     INFO -      reportError@SimpleTest/TestRunner.js:120:7
[task 2017-02-23T08:37:58.975525Z] 08:37:58     INFO -      TestRunner._checkForHangs@SimpleTest/TestRunner.js:141:7
Flags: needinfo?(ayang)
(In reply to Sebastian Hengst [:aryx][:archaeopteryx] (needinfo on intermittent or backout) from comment #8)
> Backed out for failing dom/media/mediasource/test/test_FrameSelection.html
> on Android:
> 
> https://hg.mozilla.org/integration/autoland/rev/
> 22b9b71fded8a729f17274a61831c6ec966b2675
> 
> Push with failures:
> https://treeherder.mozilla.org/#/
> jobs?repo=autoland&revision=58659a84e538f102d76fd2a142dc15834d23dcb7&filter-
> resultStatus=testfailed&filter-resultStatus=busted&filter-
> resultStatus=exception&filter-resultStatus=retry&filter-
> resultStatus=usercancel&filter-resultStatus=runnable
> Failure log Android:
> https://treeherder.mozilla.org/logviewer.html#?job_id=79580943&repo=autoland
> 
> [task 2017-02-23T08:32:59.326092Z] 08:32:59     INFO -  15 INFO TEST-START |
> dom/media/mediasource/test/test_FrameSelection.html
> [task 2017-02-23T08:37:58.969826Z] 08:37:58     INFO -  Buffered messages
> logged at 08:32:56
> [task 2017-02-23T08:37:58.969936Z] 08:37:58     INFO -  16 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | fetchWithXHR load
> uri='seek.webm' status=200
> [task 2017-02-23T08:37:58.969990Z] 08:37:58     INFO -  Buffered messages
> logged at 08:32:57
> [task 2017-02-23T08:37:58.970059Z] 08:37:58     INFO -  17 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | currentTime has
> correct initial value
> [task 2017-02-23T08:37:58.971093Z] 08:37:58     INFO -  18 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | videoWidth has correct
> initial value
> [task 2017-02-23T08:37:58.971176Z] 08:37:58     INFO -  19 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | videoHeight has
> correct initial value
> [task 2017-02-23T08:37:58.971614Z] 08:37:58     INFO -  20 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | fetchWithXHR load
> uri='seek_lowres.webm' status=200
> [task 2017-02-23T08:37:58.972600Z] 08:37:58     INFO -  21 INFO Appending
> low-res init segment
> [task 2017-02-23T08:37:58.972657Z] 08:37:58     INFO -  22 INFO Appending
> low-res range [2,4]
> [task 2017-02-23T08:37:58.972701Z] 08:37:58     INFO -  23 INFO Seeking to
> t=3
> [task 2017-02-23T08:37:58.973037Z] 08:37:58     INFO -  24 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | Video currentTime at
> target
> [task 2017-02-23T08:37:58.973672Z] 08:37:58     INFO -  25 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | videoWidth has correct
> low-res value
> [task 2017-02-23T08:37:58.974054Z] 08:37:58     INFO -  Buffered messages
> logged at 08:32:58
> [task 2017-02-23T08:37:58.974355Z] 08:37:58     INFO -  26 INFO TEST-PASS |
> dom/media/mediasource/test/test_FrameSelection.html | videoHeight has
> correct low-res value
> [task 2017-02-23T08:37:58.974545Z] 08:37:58     INFO -  27 INFO Seeking to
> t=1
> [task 2017-02-23T08:37:58.974797Z] 08:37:58     INFO -  Buffered messages
> finished
> [task 2017-02-23T08:37:58.975064Z] 08:37:58     INFO -  28 INFO
> TEST-UNEXPECTED-FAIL | dom/media/mediasource/test/test_FrameSelection.html |
> Test timed out.
> [task 2017-02-23T08:37:58.975291Z] 08:37:58     INFO -     
> reportError@SimpleTest/TestRunner.js:120:7
> [task 2017-02-23T08:37:58.975525Z] 08:37:58     INFO -     
> TestRunner._checkForHangs@SimpleTest/TestRunner.js:141:7

Well, this patch won't be run without preference media.rust.test_mode is on (which is off now), that's strange it's caused by my patch.
Flags: needinfo?(ayang)
Assignee: nobody → ayang
Pushed by ayang@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f39e45810998
check the rounding error smaller or euqal to one. r=kinetik
Sorry, this hadn't been caused by your patch.
See Also: → 1342339
(In reply to Sebastian Hengst [:aryx][:archaeopteryx] (needinfo on intermittent or backout) from comment #12)
> Sorry, this hadn't been caused by your patch.

It's ok. :-)
https://hg.mozilla.org/mozilla-central/rev/f39e45810998
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
You need to log in before you can comment on or make changes to this bug.