Commit Graph

628 Commits

Author SHA1 Message Date
Ryan VanderMeulen
52484dbcb0 Merge inbound to m-c. 2014-04-01 16:45:00 -04:00
JW Wang
3729e45eb8 Bug 980868 - Don't skip video frame when |clock time| is less than |mVideoFrameEndTime| for we are still in the safe range without underruning video frames. r=cpearce 2014-04-01 08:58:55 -04:00
Rick Eyre
e2c769ed44 Bug 903030 - Add tests for TextTrackCue validation code. r=cpearce 2014-03-31 12:48:00 +02:00
Chris Pearce
a8e52798ff Bug 778077 - Implement HTMLMediaElement.fastSeek(time). r=cajbir
Implement HTMLMediaElement.fastSeek(), basically by changing all the
MediaDecoderReader::Seek() overrides to not call
MediaDecoderReader::DecodeToTarget(), and have MediaDecoderReader::DecodeSeek()
call DecodeToTarget() if we're doing an accurate (non-fast) seek.

Update gizmo.mp4 to have a keyframe every second, instead of only 1 keyframe at
the start of stream. This makes the unit test I added more useful for mp4...

I pushed most of the seek target clamping logic in MediaDecoder up into
HTMLMediaElement, so that we're clamping in fewer places. Note
MediaDecoderStateMachine::Seek() still sanity checks the seek target.

We have to update the currentTime/MediaDecoder playback position after a seek
completes now, rather than assuming the seek always got it exactly right.

Removed those pesky assertions about seek target lying in the first frame after
seek, since actually sometimes the media doesn't have samples for all streams
after a seek (either due to the media being encoded like that, or because of a
bug in the platform's decoder, not entirely sure).

Green: https://tbpl.mozilla.org/?tree=Try&rev=b028258565e2
* * *
Bug 778077 - Fix up MediaOMXReader fastseek to ensure audio stream stays in sync with video stream. r=cajbir
2014-04-01 16:39:04 +13:00
Karl Tomlinson
4280e20d4d crashtest for bug 986901
Derived from testcase by Jesse Ruderman <jruderman@gmail.com>

--HG--
extra : transplant_source : %AE%CEf%29%F9%C4%25%82%B5%17%24%3C%0ErA%90.%7C%09%0C
2014-03-31 18:32:33 +13:00
Karl Tomlinson
9f9c4e885f b=983066 pad out resampler input past track end only to the end of the block r=padenot
The extra null samples were mostly harmless, and may have even helped avoid
bug 983062 sometimes, but caused the "Samples missing" assertion to fail.

--HG--
extra : transplant_source : M%D6%B4ra2%AE%DA%EC%82%E1%D8_%83%9F%FBw%F2%ECh
2014-03-31 18:32:32 +13:00
Ed Morley
9d7a5cff30 Backed out changeset 00fa39c23b44 (bug 778077) for reftest failures 2014-03-28 12:31:29 +00:00
Chris Pearce
c9cd61eb5d Bug 778077 - Implement HTMLMediaElement.fastSeek(time). r=cajbir
Implement HTMLMediaElement.fastSeek(), basically by changing all the
MediaDecoderReader::Seek() overrides to not call
MediaDecoderReader::DecodeToTarget(), and have MediaDecoderReader::DecodeSeek()
call DecodeToTarget() if we're doing an accurate (non-fast) seek.

Update gizmo.mp4 to have a keyframe every second, instead of only 1 keyframe at
the start of stream. This makes the unit test I added more useful for mp4...

I pushed most of the seek target clamping logic in MediaDecoder up into
HTMLMediaElement, so that we're clamping in fewer places. Note
MediaDecoderStateMachine::Seek() still sanity checks the seek target.

We have to update the currentTime/MediaDecoder playback position after a seek
completes now, rather than assuming the seek always got it exactly right.

Removed those pesky assertions about seek target lying in the first frame after
seek, since actually sometimes the media doesn't have samples for all streams
after a seek (either due to the media being encoded like that, or because of a
bug in the platform's decoder, not entirely sure).

Green: https://tbpl.mozilla.org/?tree=Try&rev=b028258565e2
2014-03-28 22:36:10 +13:00
Phil Ringnalda
1a6280a756 Backed out 2 changesets (bug 778077, bug 631058)
CLOSED TREE

Backed out changeset dda301682977 (bug 631058)
Backed out changeset 25b633e7dcd5 (bug 778077)
2014-03-27 21:50:02 -07:00
Chris Pearce
b26d467d58 Bug 778077 - Implement HTMLMediaElement.fastSeek(time). r=cajbir
Implement HTMLMediaElement.fastSeek(), basically by changing all the
MediaDecoderReader::Seek() overrides to not call
MediaDecoderReader::DecodeToTarget(), and have MediaDecoderReader::DecodeSeek()
call DecodeToTarget() if we're doing an accurate (non-fast) seek.

Update gizmo.mp4 to have a keyframe every second, instead of only 1 keyframe at
the start of stream. This makes the unit test I added more useful for mp4...

I pushed most of the seek target clamping logic in MediaDecoder up into
HTMLMediaElement, so that we're clamping in fewer places. Note
MediaDecoderStateMachine::Seek() still sanity checks the seek target.

We have to update the currentTime/MediaDecoder playback position after a seek
completes now, rather than assuming the seek always got it exactly right.

Removed those pesky assertions about seek target lying in the first frame after
seek, since actually sometimes the media doesn't have samples for all streams
after a seek (either due to the media being encoded like that, or because of a
bug in the platform's decoder, not entirely sure).

Green: https://tbpl.mozilla.org/?tree=Try&rev=b028258565e2
2014-03-28 15:50:28 +13:00
Randy Lin
867e22698f Bug 973522 MediaRecorder causes large leak. r=roc, jsmith 2014-03-26 01:11:58 +08:00
Carsten "Tomcat" Book
7dbffe4461 Backed out changeset 9b6ec03572ed (bug 981470) for suspicion of breaking mochitest-1 on a CLOSED TREE
--HG--
rename : content/media/test/test_documentTitle.html => content/media/test/test_audioDocumentTitle.html
2014-03-25 12:25:07 +01:00
Carsten "Tomcat" Book
0118fbd578 Backed out changeset 8baf04242325 (bug 493692) for mochitest bustage on a CLOSED TREE 2014-03-25 12:15:38 +01:00
Robert O'Callahan
5b6e267ad0 Bug 493692. Fix and reenable test_preload_suspend. r=cpearce
--HG--
extra : rebase_source : 947c7f65d071c62b57d7bf529a00cc72f9910345
2014-03-10 11:03:14 +08:00
Robert O'Callahan
8f471df6ac Bug 981470. Combine test_audioDocumentTitle and test_videoDocumentTitle and avoid testing WAV files, which aren't supposed to load properly in <iframe>s. r=cpearce
--HG--
rename : content/media/test/test_audioDocumentTitle.html => content/media/test/test_documentTitle.html
extra : rebase_source : 27016e8c3a15dcbfeb9462a17f27b043ac977d75
2014-03-10 10:45:14 +08:00
Rick Eyre
a0b716dca0 Bug 891381 - Tracks loaded via TrackElement should have the same id as the TrackElement. r=cpearce 2014-03-19 11:27:39 -04:00
Boris Zbarsky
05af31f010 Bug 980962. Fix in-tree consumers to not construct typed arrays without "new". r=jorendorff 2014-03-20 23:19:42 -04:00
Rick Eyre
59ba14791c Bug 977302 - Perform automatic text track selection. r=rillian
This takes care of automatic track selection for tracks with
the default attribute specified. However, it does not take
into account any user preferences set through Firefox such
as default language.
2014-02-28 15:40:00 -05:00
JW Wang
68a17dc990 Bug 951100 - Set 'autoplay' to true to trigger play instead of calling play() in 'canplaythrough' callback. r=cpearce
canplaythrough results from an estimation of download speed and playback rate and could be fired multiple times or sometimes not at all.
2014-03-19 14:07:41 +08:00
Wes Kocher
f9ae02417f Merge inbound to m-c 2014-03-18 14:15:03 -07:00
Rick Eyre
2e37168e82 Bug 983207 - Tracks created through a TrackElement should have a default mode of 'disabled'. r=cpearce
- I've refactored the way we set modes as well, making it a part
of the TextTrack ctors.
- I've also changed TextTracks in the track tests to have their
mode set to 'hidden' in order to be able to call TextTrack::Cues.
This is correct since TextTracks with a mode of 'disabled' do not
return null for their cue lists.
2014-03-13 13:18:06 -04:00
Alfredo Yang
5a07e0a6fb Bug 975978 - Testcase for aspect-ration mp4 video playback. r=cpearce 2014-03-18 08:20:19 -04:00
Ryan VanderMeulen
6598f49d2f Merge inbound to m-c. 2014-03-17 13:16:53 -04:00
JW Wang
d3261be54e Bug 984213 - Since 'preload' defaults to 'none' on b2g, 'loadedmetadata' is not fired and caused timeout. r=cpearce 2014-03-17 16:54:35 +08:00
Rick Eyre
cb4dd1f583 Bug 982183 - Put VTTRegion DOM API behind a pref. r=rillian, r=bz 2014-03-12 13:55:45 -04:00
JW Wang
1f4af455de Bug 886188 - Remove test 12 since the spec no longer found in the document, http://dev.w3.org/html5/spec-preview/media-elements.html. r=roc 2014-03-17 13:30:46 +08:00
Bill McCloskey
d960718b48 Bug 982828 - [e10s] Disable mochitest-plain tests that don't pass in e10s (r=ted) 2014-03-13 21:38:19 -07:00
Wes Kocher
62d61f05a8 Backed out changeset 88425ad0f06a (bug 982828) for introducing various mochitest-5 failures on a CLOSED TREE
* * *
Backed out changeset 94f9ebdc6662 (bug 982828)
2014-03-13 19:41:21 -07:00
Bill McCloskey
cff466f79f Bug 982828 - [e10s] Disable mochitest-plain tests that don't pass in e10s (r=ted) 2014-03-13 15:41:41 -07:00
Bill McCloskey
624ffda758 Backed out changeset d6261f65070a 2014-03-13 15:52:27 -07:00
Bill McCloskey
a23e0f8633 Bug 982828 - [e10s] Disable mochitest-plain tests that don't pass in e10s (r=ted) 2014-03-13 15:41:41 -07:00
Rick Eyre
cf709f8952 Bug 882664 - Part 2: Perform sorting on TextTrackLists. r=rillian
- This implements sorting on the MediaElement's list of TextTracks as
described in: http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#text-track-model
This is important as automatically positioned cues will have a line
position that is relative to their TextTrack's position in the
MediaElement's list of TextTracks.
- Added a TextTrackSource enum which all TextTracks have. This helps
distinguish where a TextTrack came from.
2014-02-27 12:47:23 -05:00
Rick Eyre
51f912b0a6 Bug 978163 - Part 4: Add test for VTTCue::Region. r=rillian
Updated test_texttrackregion.html to reflect the changes as well.

See spec bug: https://www.w3.org/Bugs/Public/show_bug.cgi?id=24380

DONTBUILD
2014-03-11 14:06:44 -04:00
Ryan VanderMeulen
1be5d873b0 Backed out changeset 2b3efd1687ec for landing with the wrong bug number. 2014-03-13 11:42:23 -04:00
Rick Eyre
b4602dfd6f Bug 978173 - Part 4: Add test for VTTCue::Region. r=rillian
Updated test_texttrackregion.html to reflect the changes as well.

See spec bug: https://www.w3.org/Bugs/Public/show_bug.cgi?id=24380
2014-03-11 14:06:44 -04:00
Vaibhav Agarwal
5f496eafb5 Bug 971132 - B2G mochitests should use the new manifest format; r=jmaher 2014-03-12 11:41:08 -04:00
Vaibhav Agarwal
07841bb6fe Bug 970925 - convert testing/mochitest/android.json into skip-if statements in mochitest.ini files; r=jmaher 2014-03-12 06:16:12 -04:00
Boris Zbarsky
139c43ef35 Bug 980965. Stop using DOM constructors as functions in chrome code. r=bholley 2014-03-10 17:38:14 -04:00
Vaibhav Agarwal
f0bd81877d Bug 970925 - convert testing/mochitest/android.json into skip-if statements in mochitest.ini files; r=jmaher 2014-03-06 13:42:47 -05:00
Vaibhav Agarwal
cb06996fcf Bug 971132 - B2G mochitests should use the new manifest format [directories]; r=jmaher 2014-03-06 13:42:45 -05:00
Vaibhav Agarwal
b192b2603d Bug 971132 - B2G mochitests should use the new manifest format; r=jmaher 2014-03-06 13:42:43 -05:00
JW Wang
5d7f75173f Bug 969706 - Playback may reach end before pref change is completed thus no more timeupdate events. Set loop to true to keep playing. r=padenot 2014-03-04 11:11:19 +08:00
Chris Pearce
9be1d4b017 Bug 975270 - Fire 'emptied' and 'abort' asynchronously in media load algorithm, as per spec. r=roc 2014-02-28 15:01:47 +13:00
Matthew Gregan
1ee282dbfe Bug 962353 - Remove totalFrameDelay from VideoPlaybackQuality. r=chris.double
It's not implemented by other vendors and marked as "at risk" in the spec.
Easy to add back if there's real demand/a concrete spec.
2014-03-04 15:31:57 +13:00
Ryan VanderMeulen
ed45530108 Merge inbound to m-c. 2014-03-03 17:00:34 -05:00
Randy Lin
8217910936 Bug 973235 - Intermittent test_mediarecorder_getencodeddata.html | should get onError first. r=jsmith 2014-03-03 15:34:14 +08:00
Benjamin Chen
c8cf0ff00c Bug 969289 - Add new test_mediarecorder_record_gum_video_timeslice.html test case. r=jsmith 2014-02-18 11:11:18 +08:00
Chris Pearce
b3b564fef6 Bug 977314 - Serve all media mochitest files with 'Cache-Control: no-store' header, so Necko doesn't mess with our byte-range-request detection code. r=kinetik 2014-02-27 16:06:03 +13:00
Chris Pearce
658355882f Bug 975933 - Increase precision of bug516323.indexed.ogv index's timestamp denominator to prevent precision mismatch causing test failures. r=rillian 2014-02-26 13:36:54 +13:00
Chris Pearce
741f2a7cc5 Bug 975928 - Make test_buffered.html load media using xhr, so it's deterministic. r=kinetik 2014-02-26 13:36:54 +13:00