Граф коммитов

8027 Коммитов

Автор SHA1 Сообщение Дата
Jean-Yves Avenard 2014b787b8 Bug 1298617: [MSE] P3. Optimize sample search by breaking loop early. r=gerald
MozReview-Commit-ID: 48YcQiy0p8S

--HG--
extra : rebase_source : 00e6c3468618bc6811faa80b5da590ab9e31d582
2016-08-28 02:43:36 +12:00
Jean-Yves Avenard da968e2d25 Bug 1298617: [MSE] P2. Attempt to search the exactly matching sample first. r=gerald
MozReview-Commit-ID: AW1T51n6WMl

--HG--
extra : rebase_source : 241a200fdb4f450e8188000aa70ea058aae817b5
2016-08-28 02:38:59 +12:00
Jean-Yves Avenard d97b525caa Bug 1298617: [MSE] P1. Don't attempt to estimate next sample time if exact value known. r=gerald
MozReview-Commit-ID: 8DE9WHFsePt

--HG--
extra : rebase_source : dd9edb407d6f2cc8ba76367fca0e10fb91f2eea7
2016-08-28 02:34:44 +12:00
Jean-Yves Avenard d9412b2ac0 Bug 1298594: P5. Fix mochitest. r=gerald
The assumption was that the waiting event would be fired once the last frame prior the gap had been played. This is however incorrect, as per spec, the waiting event is to be fired once readyState is <= HAVE_CURRENT_DATA. So the waiting event is actually fired anytime between the start of the last frame and its end.

MozReview-Commit-ID: AA4Qhn7okhB

--HG--
extra : rebase_source : fc1f336b2e07cc2549071563804de8fae9c9ab67
2016-08-29 16:07:38 +10:00
Jean-Yves Avenard b3537bb63d Bug 1298594: P4. Pop the frame when current time is past the end of the current frame. r=jwwang
Most frames start when the previous one stop.

MozReview-Commit-ID: H92Bmiki49Q

--HG--
extra : rebase_source : 071416d9151d5188550d73f0eb5a4c70a5fbd48b
2016-08-29 15:46:56 +10:00
Jean-Yves Avenard 9e433b8a83 Bug 1298594: P3. Ensure currentTime is updated prior changing readyState. r=jwwang
Otherwise we get intermittent in mochitests checking the value of currenTime when events are fired

MozReview-Commit-ID: AVktWrXochp

--HG--
extra : rebase_source : 76c952e62e9b449834d5924454c25ddad305ada6
2016-08-28 21:20:52 +10:00
Jean-Yves Avenard a9dab88295 Bug 1298594: [MSE] P1. Add mochitest to verify correct behavior. r=gerald
1- We shouldn't reach ended if we have a gap in the buffered range prior the end of the file (see bug 1297036)
2- Waiting should be fired when readyState goes below HAVE_FUTURE_DATA

MozReview-Commit-ID: 18bEnkNpYvO

--HG--
extra : rebase_source : c42c7fd19fec9ede5bb64ea697a0086116882403
2016-08-27 00:08:38 +12:00
Jean-Yves Avenard 3b8c226443 Bug 1297036: [MSE] P6. Fix invalid mochitest. r=gerald
The test accidentally worked because any demuxing failures in ended mode would be treated as EOS. There's no audio between [0-3), so playback couldn't start

MozReview-Commit-ID: 4B90CrVUTy4

--HG--
extra : rebase_source : 9079aa8a6983877745baac71c7868ca360b85095
2016-08-28 12:26:40 +10:00
Jean-Yves Avenard 46842a940a Bug 1297036: [MSE] P5. Make fuzz research consistent. r=gerald
The aim is to only allow skipping gaps of fuzz=500ms.

MozReview-Commit-ID: 8uHxni2nPHI

--HG--
extra : rebase_source : ccef593170fb3a0c3ff61dc97ad1a0508be06934
2016-08-27 23:51:40 +10:00
Jean-Yves Avenard 8d676d83a6 Bug 1297036: [MSE] P4. Only report end of stream when reaching the end. r=gerald
MozReview-Commit-ID: 5EWhBVnscXY

--HG--
extra : rebase_source : 914aa1b8abb8d4026993281dbd68b1ba2ef04642
2016-08-28 01:00:39 +12:00
Jean-Yves Avenard 90f7e263a7 Bug 1297036: P3. Revert "Bug 1293646: [MSE] P2. Only reject a seek request with EOS if it's passed the explicit duration." r=gerald
This reverts commit 5a949eb358e27

Another more complete solution will follow.

MozReview-Commit-ID: K3lTdrBxW7W

--HG--
extra : rebase_source : d0f9443193b0816ae85972a4a368599b872fd437
2016-08-26 19:30:50 +12:00
Jean-Yves Avenard 03f6dc4d61 Bug 1297036: [MSE] P2. Make seek always succeed when attempting to seek past the end time. r=gerald
MozReview-Commit-ID: H2YJu7vY0aP

--HG--
extra : rebase_source : 73b1e324a6d9f8612ef03dcbf7dc5e5a91c7e2b2
2016-08-26 19:23:29 +12:00
Jean-Yves Avenard e4f3e62f41 Bug 1297036: [MSE] P1. Add mochitest to verify behavior. r=gerald
Seeking in the buffered range should always succeed, even if we have no data in a given track

MozReview-Commit-ID: FGjsDCNIdWC

--HG--
extra : rebase_source : c91348e44055f82deee0e97da4abef0cf799b225
2016-08-26 23:10:00 +12:00
Jean-Yves Avenard fb042f363f Bug 1298606: P3. Fix coding style. r=gerald
MozReview-Commit-ID: L5MHnYOkyDV

--HG--
extra : rebase_source : 5da52435a47cc1dae14459ad44e910329c702ce4
2016-08-29 16:59:17 +10:00
Jean-Yves Avenard 85862da5ee Bug 1298606: [MSE] P2. Properly determine next frame status in ended state. r=gerald
MozReview-Commit-ID: 2m05GzauHes

--HG--
extra : rebase_source : d5541dd96dc0480c41e7d68cfb96a95243b9a454
2016-08-27 22:27:22 +12:00
Jean-Yves Avenard e45036c616 Bug 1298606: P1. Add Intervals::ContainsStrict method. r=gerald
MozReview-Commit-ID: 7XA8xVUWSi7

--HG--
extra : rebase_source : e8123ed9a11063a5e0e83f4b31bb9cafec7f02b4
2016-08-27 20:24:31 +10:00
Jean-Yves Avenard 954647ed96 Bug 1297218: [MSE] Remove unnecessary call to Find(). r=gerald
MozReview-Commit-ID: Af7mzXbLiNy

--HG--
extra : rebase_source : b3107a0be24a839be06ab5d4d22045a6fb0c94c3
2016-08-26 16:51:18 +12:00
Jean-Yves Avenard 5b04109e85 Bug 1297037: [MSE] Update Duration Change algorithm as per latest spec. r=gerald
The MSE spec was recently updated to use the highest end time across tracks rather than across the buffered ranges.

See https://github.com/w3c/media-source/issues/124 and the fix described in https://github.com/w3c/media-source/pull/154

MozReview-Commit-ID: 4CqI8d2e9gu

--HG--
extra : rebase_source : b25f0e2a76c517c0dca0a9def00edd6eff38d8ad
2016-08-26 16:39:36 +12:00
JW Wang 663ca6b4fa Bug 1297553 - Dump more debugging messages for MDSM and MediaSink. r=kaku
MozReview-Commit-ID: ILcF1hT2hVN

--HG--
extra : rebase_source : 1f6564eb5161608ee6031b1c362a6b689762dcfe
2016-08-24 11:45:58 +12:00
Gerald Squelart d56f52d1c6 Bug 1298271 - Make BoxReader use AutoByteReader - r=jya
This is done by moving FlacFrameParsers' AutoByteReader to a more public spot
in libstagefright's bindings.
Using AutoByteReader means there is no more need for explicit calls to
DiscardRemaining(); which means our parsers relying on BoxReader will be more
lenient about boxes that are larger than needed.

MozReview-Commit-ID: 3EERU749WYB

--HG--
extra : rebase_source : 6deba02ac553303b0a2b694c24bfcb54c2e732b1
2016-08-26 18:14:24 +10:00
Gerald Squelart 2088a45732 Bug 1298275 - Make ~AutoByteReader non-virtual - r=jya
Also ByteReader and AutoByteReader are marked RAII, to help prevent misuses.

MozReview-Commit-ID: 7oklXs4QMnq

--HG--
extra : rebase_source : 54fca3168a70d951e6012baea4bf0544827cae11
2016-08-26 17:27:23 +10:00
Byron Campen [:bwc] d4187beab5 Bug 1275461 - Part 2: See if slowing down the color changes helps. r=drno
MozReview-Commit-ID: HuYKmnXMl4T

--HG--
extra : rebase_source : 98a87572ac9cc07aa51102a9faf4058a9521e199
2016-08-22 12:43:03 -05:00
Alex Chronopoulos d635328838 Bug 1286041 - Assert audio callback is not called in initialized state. r=jwwang 2016-07-12 16:53:58 +02:00
Ryan VanderMeulen 1c0c6ec5d4 Merge m-c to inbound. a=merge 2016-08-29 12:56:19 -04:00
Michael Layzell b258dfaa89 Bug 1297802 - Remove unused RefPtr<> and COMPtr<> types in dom/, r=baku
MozReview-Commit-ID: CLUJZdbN7sW
2016-08-29 11:40:02 -04:00
Randell Jesup 9f2b9ce819 Bug 1298698: Block race between EnsureNextIteration and WaitForNextIteration r=karlt 2016-08-29 10:41:01 -04:00
Munro Mengjue Chiang 7290087ca7 Bug 1297911 - followup: if block needs to be braced; r=jib
MozReview-Commit-ID: I44jAWKquTd

--HG--
extra : rebase_source : a59a286a63aa12ff8f10aae340d0ad7b6f028c98
2016-08-25 14:07:42 +08:00
Wes Kocher f78f2d693b Merge inbound to central, a=merge 2016-08-25 16:59:00 -07:00
Ryan VanderMeulen e5adfbffe6 Merge m-c to autoland. a=merge
--HG--
rename : accessible/tests/browser/browser_caching_attributes.js => accessible/tests/browser/e10s/browser_caching_attributes.js
rename : accessible/tests/browser/browser_caching_description.js => accessible/tests/browser/e10s/browser_caching_description.js
rename : accessible/tests/browser/browser_caching_name.js => accessible/tests/browser/e10s/browser_caching_name.js
rename : accessible/tests/browser/browser_caching_relations.js => accessible/tests/browser/e10s/browser_caching_relations.js
rename : accessible/tests/browser/browser_caching_states.js => accessible/tests/browser/e10s/browser_caching_states.js
rename : accessible/tests/browser/browser_caching_value.js => accessible/tests/browser/e10s/browser_caching_value.js
rename : accessible/tests/browser/browser_events_caretmove.js => accessible/tests/browser/e10s/browser_events_caretmove.js
rename : accessible/tests/browser/browser_events_hide.js => accessible/tests/browser/e10s/browser_events_hide.js
rename : accessible/tests/browser/browser_events_show.js => accessible/tests/browser/e10s/browser_events_show.js
rename : accessible/tests/browser/browser_events_statechange.js => accessible/tests/browser/e10s/browser_events_statechange.js
rename : accessible/tests/browser/browser_events_textchange.js => accessible/tests/browser/e10s/browser_events_textchange.js
rename : accessible/tests/browser/browser_treeupdate_ariadialog.js => accessible/tests/browser/e10s/browser_treeupdate_ariadialog.js
rename : accessible/tests/browser/browser_treeupdate_ariaowns.js => accessible/tests/browser/e10s/browser_treeupdate_ariaowns.js
rename : accessible/tests/browser/browser_treeupdate_canvas.js => accessible/tests/browser/e10s/browser_treeupdate_canvas.js
rename : accessible/tests/browser/browser_treeupdate_cssoverflow.js => accessible/tests/browser/e10s/browser_treeupdate_cssoverflow.js
rename : accessible/tests/browser/browser_treeupdate_doc.js => accessible/tests/browser/e10s/browser_treeupdate_doc.js
rename : accessible/tests/browser/browser_treeupdate_gencontent.js => accessible/tests/browser/e10s/browser_treeupdate_gencontent.js
rename : accessible/tests/browser/browser_treeupdate_hidden.js => accessible/tests/browser/e10s/browser_treeupdate_hidden.js
rename : accessible/tests/browser/browser_treeupdate_imagemap.js => accessible/tests/browser/e10s/browser_treeupdate_imagemap.js
rename : accessible/tests/browser/browser_treeupdate_list.js => accessible/tests/browser/e10s/browser_treeupdate_list.js
rename : accessible/tests/browser/browser_treeupdate_list_editabledoc.js => accessible/tests/browser/e10s/browser_treeupdate_list_editabledoc.js
rename : accessible/tests/browser/browser_treeupdate_listener.js => accessible/tests/browser/e10s/browser_treeupdate_listener.js
rename : accessible/tests/browser/browser_treeupdate_optgroup.js => accessible/tests/browser/e10s/browser_treeupdate_optgroup.js
rename : accessible/tests/browser/browser_treeupdate_removal.js => accessible/tests/browser/e10s/browser_treeupdate_removal.js
rename : accessible/tests/browser/browser_treeupdate_table.js => accessible/tests/browser/e10s/browser_treeupdate_table.js
rename : accessible/tests/browser/browser_treeupdate_textleaf.js => accessible/tests/browser/e10s/browser_treeupdate_textleaf.js
rename : accessible/tests/browser/browser_treeupdate_visibility.js => accessible/tests/browser/e10s/browser_treeupdate_visibility.js
rename : accessible/tests/browser/browser_treeupdate_whitespace.js => accessible/tests/browser/e10s/browser_treeupdate_whitespace.js
rename : accessible/tests/browser/doc_treeupdate_ariadialog.html => accessible/tests/browser/e10s/doc_treeupdate_ariadialog.html
rename : accessible/tests/browser/doc_treeupdate_ariaowns.html => accessible/tests/browser/e10s/doc_treeupdate_ariaowns.html
rename : accessible/tests/browser/doc_treeupdate_imagemap.html => accessible/tests/browser/e10s/doc_treeupdate_imagemap.html
rename : accessible/tests/browser/doc_treeupdate_removal.xhtml => accessible/tests/browser/e10s/doc_treeupdate_removal.xhtml
rename : accessible/tests/browser/doc_treeupdate_visibility.html => accessible/tests/browser/e10s/doc_treeupdate_visibility.html
rename : accessible/tests/browser/doc_treeupdate_whitespace.html => accessible/tests/browser/e10s/doc_treeupdate_whitespace.html
rename : accessible/tests/browser/events.js => accessible/tests/browser/e10s/events.js
rename : browser/components/extensions/test/browser/browser_ext_pageAction_context.js => browser/components/extensions/test/browser/browser_ext_pageAction_title.js
rename : browser/components/extensions/test/browser/browser_ext_pageAction_context.js => browser/components/extensions/test/browser/head_pageAction.js
rename : dom/events/test/pointerevents/pointerevent_element_haspointercapture.html => dom/events/test/pointerevents/pointerevent_element_haspointercapture-manual.html
rename : dom/events/test/pointerevents/test_pointerevent_element_haspointercapture.html => dom/events/test/pointerevents/test_pointerevent_element_haspointercapture-manual.html
rename : gfx/thebes/DeviceManagerD3D11.cpp => gfx/thebes/DeviceManagerDx.cpp
rename : gfx/thebes/DeviceManagerD3D11.h => gfx/thebes/DeviceManagerDx.h
rename : media/webrtc/trunk/tools/gyp/test/compiler-override/compiler.gyp => media/webrtc/trunk/tools/gyp/test/compiler-override/compiler-exe.gyp
rename : media/webrtc/trunk/tools/gyp/test/mac/app-bundle/TestApp/English.lproj/InfoPlist.strings => media/webrtc/trunk/tools/gyp/test/ios/app-bundle/TestApp/English.lproj/InfoPlist-error.strings
rename : media/webrtc/trunk/tools/gyp/test/mac/app-bundle/TestApp/English.lproj/InfoPlist.strings => media/webrtc/trunk/tools/gyp/test/mac/app-bundle/TestApp/English.lproj/InfoPlist-error.strings
rename : media/webrtc/trunk/tools/gyp/test/mac/gyptest-postbuild-static-library.gyp => media/webrtc/trunk/tools/gyp/test/mac/gyptest-postbuild-static-library.py
rename : media/webrtc/trunk/tools/gyp/test/rules/src/subdir4/asm-function.asm => media/webrtc/trunk/tools/gyp/test/rules/src/subdir4/asm-function.assem
rename : mfbt/unused.h => mfbt/Unused.h
rename : testing/web-platform/tests/pointerevents/pointerevent_element_haspointercapture.html => testing/web-platform/tests/pointerevents/pointerevent_element_haspointercapture-manual.html
extra : rebase_source : a3de7d91a61df9b14fe07a89f5b0184a067549cf
2016-08-25 08:14:36 -04:00
Ryan VanderMeulen 520acfd195 Merge inbound to m-c. a=merge 2016-08-25 08:10:52 -04:00
Randell Jesup fd2b3d5eb8 Bug 1255737: don't set a shutdown timer if we don't have a shutdown ticket r=pehrsons 2016-08-24 12:24:17 -04:00
JW Wang 2fa66fff7d Bug 1295906 - Remove the call to |mVideoFrameContainer->ClearCurrentFrame()| from ReleaseResources(). r=jya
ReleaseResources() is called when MDSM enters dormant or during shutdown.

When it is called in response to dormant request, we don't want to clear
current frames so we are able to enter dormant state more aggressively
even when the media element is visible to the user.

When it is called from MediaDecoderReader::Shutdown(), it doesn't really
call ClearCurrentFrame() because MediaFormatReader::Shutdown clears the
|mVideoFrameContainer| pointer. So it doesn't make a difference to remove
the call.


MozReview-Commit-ID: IakGHbSMWTv

--HG--
extra : rebase_source : 7a25de39e04f5c7728bf65fcd447cc67b7a85411
extra : source : 44ff0ffaf63ad51a7a382cf0ee1c16e64ade63b9
2016-08-17 17:11:19 +08:00
Jean-Yves Avenard bca42a94d5 Bug 1297580: [MSE] P4. Add mochitest. r=gerald
MozReview-Commit-ID: IulzS2GSHa2

--HG--
extra : rebase_source : aeae90406b115d8215a5b134a54f34d7c3c49baa
2016-08-25 10:59:42 +12:00
Jean-Yves Avenard b32b9b034f Bug 1297580: [MSE] P3. Increase gap threshold to 500ms. r=gerald,kentuckyfriedtakahe
MozReview-Commit-ID: Ii9YjJ7YaJB

--HG--
extra : rebase_source : 0871be48b09bcb804ecca3bf67548c06441e21c7
2016-08-24 17:21:57 +12:00
Jean-Yves Avenard 94ece3bfc4 Bug 1297580: [MSE] P2. Halves the fuzz value when checking if seek target is present. r=gerald
The fuzz value is a +/- one. To check if a target is within an interval
we need to check with half the fuzz only.

MozReview-Commit-ID: J5H5sbNokse

--HG--
extra : rebase_source : aeedcb111c84a353307c8e641385ef0800792fa7
2016-08-24 17:20:52 +12:00
Jean-Yves Avenard a3cc5764c1 Bug 1297580: P1. Remove broken optimisation in IntervalSet. r=gerald
Interval.LeftOf would always return true if the length of the interval
is less than the fuzzing value.

MozReview-Commit-ID: L9uyZjQXnGA

--HG--
extra : rebase_source : af14038da603b928c7a4942f1b37f031908e61bb
2016-08-24 17:17:25 +12:00
Andreas Pehrson 20c6e5d1e0 Bug 1259788 - Remove direct track listeners from TrackUnionStream before inputs are removed. r=jesup
MozReview-Commit-ID: DTHF2pHEFSt

--HG--
extra : rebase_source : feddfc8ddbae33b2c97d0009b2a648ca71b33bbe
2016-08-23 18:08:19 +02:00
Andreas Pehrson 9f015ef1b0 Bug 1259788 - Implement disabled track modes for direct track listeners. r=jesup
MozReview-Commit-ID: H8TygONnCiv

--HG--
extra : rebase_source : 58f76583517fcf1f7f49e8c6fae139f402a83e52
2016-08-23 18:05:51 +02:00
Andreas Pehrson 821c28c6c3 Bug 1259788 - Use RefPtr<MediaStream> in NewRunnableMethod() in DOMMediaStream. r=jesup
MozReview-Commit-ID: F7nNCJBcWGz

--HG--
extra : rebase_source : b3e9243e60f9d1bcc51b459747d8a927ed5b4555
2016-08-18 18:24:50 +02:00
Andreas Pehrson dfb49b5ab0 Bug 1259788 - Raise "addtrack" in separate tasks. r=jesup
Turns out runnables added through
MediaStreamGraph::DispatchToMainThreadAfterStreamStateUpdate on the same
iteration are all run in the same task. Creating them in the owning dom stream
in one task solves the timing issues and lets us add them
(and raise "addtrack") in individual tasks.

MozReview-Commit-ID: 9Q3NoFrmnQs

--HG--
extra : rebase_source : aa391668ec424d2f9b1485f6218d7d1f9948abc9
2016-08-22 12:23:37 +02:00
Andreas Pehrson 9a907cfbfc Bug 1259788 - Add a new disabled mode for MSG tracks. r=jesup
MozReview-Commit-ID: 1dMTR4Wmcd8

--HG--
extra : rebase_source : 8c2ea262d53901a11ec5c0e5067f328461dee8f2
2016-08-15 14:19:42 +02:00
Andreas Pehrson 091e8c0b00 Bug 1259788 - Support MediaStream sources for HTMLMediaElement.mozCaptureStream(). r=jesup
This adds support for HTMLMediaElement.mozCaptureStream() and
mozCaptureStreamUntilEnded() for a HTMLMediaElement playing a MediaStream.

This is up to spec, while capturing a HTMLMediaElement playing a file is not.
This incompatibility means we cannot mix sources for the returned MediaStream.

As such, a MediaStream returned while the HTMLMediaElement was playing a file
will only have content while the element is playing files. If the src changes
to a MediaStream, the stream will be empty.

It works the same way if a MediaStream was captured while the HTMLMediaElement
was playing another MediaStream.

This is due to TrackID management - MediaDecoder doesn't care, and creates new
tracks when you seek, so users are unable to keep track, while for MediaStream
we control everything from main thread and keep track of the TrackIDs used
previously.

This also adds a separate path from MediaElementAudioSourceNode so that we don't
forward video tracks when the returned MediaStream is only used internally for
WebAudio. We should in that case not require a DOMMediaStream but just forwarding
tracks to a TrackUnionStream should be enough, and will save us some cpu cycles.
This is however fine for now as it's simpler.

MozReview-Commit-ID: Bg8hESDISDU

--HG--
extra : rebase_source : 83885a73ec8cfc5fbe3c30a9330a52cd6b6dff12
extra : source : f1aec79078869c0a6435a1c06957c649d7a40dd9
2016-08-23 17:51:50 +02:00
JW Wang d13f41c2a0 Bug 1294616 - Somewhat improve the string performance by defining string literals whose length is known at compile time. r=cpearce
MozReview-Commit-ID: LAlqMDtGQN7

--HG--
extra : rebase_source : 4f2cdc9cb9ee7e4dd024d47dad329304f6ba70ae
extra : source : 6db22a524b1452fc50bf56535e7c619a8441dcfe
2016-08-15 15:41:53 +08:00
JW Wang a208d2cb40 Bug 1295073 - Remove the aRealTime parameter from the MediaDecoderStateMachine constructor. r=cpearce
MozReview-Commit-ID: BXMVAV1R3gx

--HG--
extra : rebase_source : 0749ff95de361da3c935dfe113690aa8c5e7dc2a
2016-08-15 14:54:10 +08:00
Andreas Pehrson 83dcc7266e Bug 1259788 - Break out AddTrackInternal() from DOMMediaStream::CreateDOMTrack. r=jesup
Sometimes a track is added to a stream synchronously (before the stream is
exposed to script), and sometimes asynchronously (see the mediacapture-main spec
on the "addtrack" event).

In the latter case we might still need to create the MediaStreamTrack object
synchronously for tracking purposes. CaptureStream of Media element playing a
MediaStream wants this.

MozReview-Commit-ID: 7me8xzN7rwj

--HG--
extra : rebase_source : 4f129b127b855e47aad2ae9ab3981ffde057412d
2016-08-12 13:50:41 +02:00
Munro Mengjue Chiang b6c7822e72 Bug 1296684 - export DeviceChangeCallback.h no matter webrtc is enabled or not; r=jib
MozReview-Commit-ID: 9xocLhe1QZw

--HG--
extra : rebase_source : cfa81f49e8b98b93c90a6ea436ee106db7a12f00
2016-08-22 18:16:28 +08:00
Chia-hung Tai 80a7e0d9a0 Bug 1292335 - Call mozCaptureStreamUntilEnded in loadedmetadata. r=pehrsons.
MozReview-Commit-ID: 5S3jR9V23Yn

--HG--
extra : rebase_source : 65fa7e3f76318d1149a9700fae96a55a9a395d31
2016-08-22 11:01:27 +08:00
Andreas Pehrson 0a0c94abc9 Bug 1297099 - Change LoadManagerSingleton WeakPtr to RefPtr. r=jesup
--HG--
extra : rebase_source : c40fe1ca338ca3e8aed7e618ea4dd8e95dc74672
2016-08-25 10:04:58 -04:00
James Cheng c6899c4863 Bug 1290830 - [Part2] Remove the GMP types using genral types instead. r=cpearce
MozReview-Commit-ID: 3EKwTNPddI1

--HG--
extra : rebase_source : 00f7267a76ad299b52d02b16425bb266ee58985b
2016-08-02 15:05:21 +08:00
James Cheng b74f50bca9 Bug 1290830 - [Part1] Detach the GMPDecryptorProxyCallback interface to DecryptorProxyCallback. r=cpearce
MozReview-Commit-ID: EPGf0ITakPO

--HG--
extra : rebase_source : 1186be0680789c1f9e66366e549fd5ec5b418a38
2016-08-01 17:37:18 +08:00
Sebastian Hengst 2f9e419db4 Backed out changeset 7e3e593e8141 (bug 1295352) for failing mda test test_getUserMedia_basicTabshare.html. r=backout on a CLOSED TREE 2016-08-23 20:46:13 +02:00
Andreas Pehrson e00a5345bd Bug 1295352 - Check state in MediaEngines' NotifyPull(). r=jesup
GetEndOfAppendedData() returns null and calls a NS_ERROR() if the track we're
looking for doesn't exist - to indicate an error in the caller's code.

When we end a MediaEngine track we set the state to stopped, which we can use
to guard the calls to GetEndOfAppendedData() (and appending data in general).
The locking is already in place.

MozReview-Commit-ID: DuknmBF883H

--HG--
extra : rebase_source : 6304e61a4050f0ea9c31ee01f5b42f5cb45b9bf6
2016-08-23 10:45:09 +02:00
Ryan VanderMeulen 69113163cf Merge m-c to inbound. a=merge 2016-08-24 09:09:05 -04:00
Ryan VanderMeulen 2b4ac234e9 Merge m-c to inbound. a=merge 2016-08-25 08:27:17 -04:00
Nicholas Nethercote c2306345d5 Bug 1297658 - Avoid unnecessary checking in memory reporters. r=erahm.
This patch removes checking of all the callback calls in memory reporter
CollectReport() functions, because it's not useful.

The patch also does some associated clean-up.

- Replaces some uses of nsIMemoryReporterCallback with the preferred
  nsIHandleReportCallback typedef.

- Replaces aCallback/aCb/aClosure with aHandleRepor/aData for CollectReports()
  parameter names, for consistency.

- Adds MOZ_MUST_USE/[must_use] in a few places in nsIMemoryReporter.idl.

- Uses the MOZ_COLLECT_REPORT macro in all suitable places.

Overall the patch reduces code size by ~300 lines and reduces the size of
libxul by about 37 KiB on my Linux64 builds.

--HG--
extra : rebase_source : e94323614bd10463a0c5134a7276238a7ca1cf23
2016-08-24 15:23:45 +10:00
Cykesiopka a16f7b0f6a Bug 1296316 - Convert nsNSSShutDownObject::CalledFromType to an enum class. r=mgoodwin
enum classes are in general safer than plain enums, and as such should be
preferred.

MozReview-Commit-ID: 1FK89SNhdk4

--HG--
extra : rebase_source : 764c4855026c02d8c9e33ca33637fec54ea5ca31
2016-08-20 23:00:19 +08:00
Ryan VanderMeulen 82663d8710 Merge inbound to m-c. a=merge 2016-08-23 10:05:18 -04:00
Iris Hsiao 1db439cf3b Backed out changeset d6d2cc94bb92 (bug 1295906) for M-e10s crashes on Windows 7 debug 2016-08-23 15:39:20 +08:00
Jean-Yves Avenard 551e91fa7d Bug 1195723: [flac] P15. Add metadata mochitest. r=kamidphish
MozReview-Commit-ID: vVAA2Gnls8

--HG--
extra : rebase_source : afea7fc313d6178fd44154202c5fcb94ad4ab1e3
2016-08-18 16:34:56 +10:00
Jean-Yves Avenard 4f31c80e25 Bug 1195723: [flac] P14. Add support for metadata. r=kamidphish
MozReview-Commit-ID: GDlmGcWRNsM

--HG--
extra : rebase_source : 7e5bbe7186935cc05db5fcd590aa23db6f55eabf
2016-08-18 16:06:38 +10:00
Jean-Yves Avenard 6c04460e8c Bug 1195723: [flac] P13. Add mochitest files. r=kamidphish
MozReview-Commit-ID: 34FlM9HcTDo

--HG--
extra : rebase_source : 67ecb3f56f51be797f68cb1b1799d721854b1271
2016-08-18 15:30:52 +10:00
Jean-Yves Avenard 07e2fafa73 Bug 1195723: [flac] P12. Add sniffer for streaming flac. r=kamidphish
MozReview-Commit-ID: P62v6vsXzs

--HG--
extra : rebase_source : aec72ae19890e3c21f4557c4899cf1697e7e94cc
2016-08-18 13:07:11 +10:00
Jean-Yves Avenard 72e257f20f Bug 1195723: [flac] P9. Hook up flac decoder and demuxer. r=kamidphish
MozReview-Commit-ID: 5Md6mcZkME

--HG--
extra : rebase_source : 8cee6fbc41f7de347702af4d03372a058a86d655
2016-08-17 15:45:06 +10:00
Jean-Yves Avenard ee63d6aef9 Bug 1195723: [flac] P8. Add flac MediaDecoder. r=kamidphish
MozReview-Commit-ID: BQ9fERFEFcg

--HG--
extra : rebase_source : 04d365967a1caa1104e17b78b5b7c1fa46da27ae
2016-08-17 15:42:18 +10:00
Jean-Yves Avenard 51fc514176 Bug 1195723: [flac] P7. Add flac demuxer. r=kamidphish
MozReview-Commit-ID: 5db0hAsDjji

--HG--
extra : rebase_source : 976dbcbcb46b82a7e09a38106df9ad7d2578f829
2016-08-17 15:40:14 +10:00
Jean-Yves Avenard c347ee4238 Bug 1195723: [flac] P6. Add support for raw flac metadata decoding. r=kamidphish
We also move flac related files to their own flac folder.

MozReview-Commit-ID: YnV3HNbjZe

--HG--
extra : rebase_source : 5f064723d68a877d9790f0c51c5d1579d7a9bac4
2016-08-17 15:33:50 +10:00
Jean-Yves Avenard 23f6b3cb6f Bug 1195723: [adts] P4. Add extra mimetype for adts/aac. r=kamidphish
When the content is served by Apache, a file with an .aac extension always see its Content-Type set to x-aacp.

MozReview-Commit-ID: 65NANlKNQek

--HG--
extra : rebase_source : 5f5d4bf65117f862a22698b450dedd2d5f0ef8d1
2016-08-17 15:25:02 +10:00
Randell Jesup dc0ebbd114 Bug 1297101: Reduce audio/video load from fake video/audio for android debug r=dminor
Debug is slow already, and VM emulator debug is glacial and times out a lot
2016-08-22 20:57:13 -04:00
Randell Jesup f2c343d0ec Bug 1297101: disable test_peerConnection_SetParameters on Android VM opt r=dminor 2016-08-22 20:57:11 -04:00
Thomas Wisniewski 6c4149c011 Bug 1017704 - Move DropJSObjects into the destructor in AudioBuffer.cpp. r=mccr8
--HG--
extra : rebase_source : a4c5ee7e40bf26814df7b9397b9862fb08684069
2016-08-20 20:32:52 -04:00
Randell Jesup 327ccb88b0 Bug 1297083: Don't insert audio for GetUserMedia N times if opened N times r=pehrsons 2016-08-22 10:59:00 -04:00
Jean-Yves Avenard 7e55ae1ff5 Bug 1195723: [ogg/flac] P3. Add flac support in ogg. r=kamidphish
This feature is intended to debug the flac parser only and is behind a hidden pref.
There's lots of redundant code in OggCodecState, there's need for a serious cleanup there.

MozReview-Commit-ID: 9H4efd2cfuE

--HG--
extra : rebase_source : cd5f6d16dd319391a0469b8317a18ef1d5e58331
2016-08-04 17:21:53 +10:00
Jean-Yves Avenard f27ae02841 Bug 1195723: [ogg] P2. Refactor mimetype parsing for ogg. r=kamidphish
Make it just like MP4, WebM and all the others new demuxers.
Additionally, make the ogg related preferences part of MediaPrefs.

MozReview-Commit-ID: DTedHyIMv9I

--HG--
extra : rebase_source : 8bfdf971993281454776a7c4fa644c9fc7c5ee8c
2016-08-04 17:14:28 +10:00
Jean-Yves Avenard 75d3e82740 Bug 1195723: [flac] P1. Primitive flac frame parser. r=kamidphish
Currently only handle metadata decoding.

MozReview-Commit-ID: JL4vqtY5kUS

--HG--
extra : rebase_source : 1470a92d12ccf3088d5663cd6d58cedc63922586
2016-08-04 17:09:34 +10:00
Jean-Yves Avenard 07a86a0f91 Bug 1296453: [MSE] P2. Clean up SourceBufferResource. r=gerald
The code was designed around the need for a MediaResource::Read which is
no longer possible since bug 1190238

MozReview-Commit-ID: 7s76YWg93jS

--HG--
extra : rebase_source : 3f6756193c352cf766471dd8cb1fb7646af191e6
2016-08-23 17:38:46 +12:00
Jean-Yves Avenard 8e46c367ed Bug 1296453: [MSE] P1. Fix eviction. r=gerald
The MP4 demuxer returns INT64_MAX when all data can be safely evicted
from the MediaResource.
Additionally, the MP4Demuxer will read the MediaResource using
CacheReadAt.

Eviction in the SourceBufferResource had a safeguard to ensure we would
never evict data we hadn't read yet. This was done by keeping the
position of the last data read in the mOffset member. CacheReadAt
however doesn't update mOffset.

As a result, no data was ever removed from the input buffer when using
MP4.

MozReview-Commit-ID: 2tAWzpMlOjG

--HG--
extra : rebase_source : bec585ca46e7fd0665c00bce525aaacede1b3897
2016-08-23 17:18:22 +12:00
JW Wang 144902b400 Bug 1295906 - Move |mVideoFrameContainer->ClearCurrentFrame()| out of MediaFormatReader::ReleaseResources(). r=jya
MozReview-Commit-ID: E0bm0zNoaZ7

--HG--
extra : rebase_source : bf9705ba84b99745adc91fae96495f1b13f4d5ea
2016-08-17 17:11:19 +08:00
JW Wang df3e437d3a Bug 1295893 - Add entry/exit actions to state transitions of MDSM. r=kaku
MozReview-Commit-ID: Ak17K7kEigC

--HG--
extra : rebase_source : fd1508b1ecb001ce88de45e8c6391d544bab5ca4
2016-08-12 16:06:30 +08:00
Jean-Yves Avenard e3d7cee89e Bug 1270016: P3. Only check audio format at decode time. r=kamidphish
With raw streaming flac, we can't determine the audio format at the time the codec is opened.
Additionally, when using streaming flac, we do not have a STREAMINFO block. The FFmpeg flac decoder check that extradata is null and not its size and would error due to an invalid extradata.

MozReview-Commit-ID: KZ3n8b8WUMo

--HG--
extra : rebase_source : a0dd8f517d730b1414c6461fc5c5e5b08d0d8b10
2016-08-16 16:21:18 +10:00
James Cheng 0c1650fb5a Bug 1291742 - Report MP4 videos with YUV444 format as unsupported. r=gerald
MozReview-Commit-ID: DxFfSIeYANR

--HG--
extra : rebase_source : b7a6097e7085bac23e02e7065165a024561a0316
2016-08-19 18:14:28 +08:00
Jean-Yves Avenard a18ecfafaa Bug 1280346: [mp4] Always use SPS dimensions if available. r=gerald,rillian
H264 decoders always use those anyway, so may as well use them in the demuxer if SPS NAL is available.
This guarantees that we have correct dimensions when reading the MP4 metadata, and will have the side benefit that when loadedmetadata is fired, the dimensions provided at the time will be final; not having to wait to decode the first frame.

MozReview-Commit-ID: 3j70Xqw8jJY

--HG--
extra : rebase_source : 6bc0f1fa1c2db35bcaa683cc1a68042d122e2892
2016-08-22 06:39:41 +10:00
Jean-Yves Avenard f06897e560 Bug 1270016: P2. Make the FFVPX PDM work with FLAC. r=kentuckyfriedtakahe
MozReview-Commit-ID: BmwtZF3NSEI

--HG--
extra : rebase_source : 4b7bc5d49bf129f8442314d3d43110577c0c7484
2016-08-02 22:54:26 +10:00
Dan Glastonbury 7e511c5952 Bug 1294358 - P4: Shrink video size. r=jya
Make the test videos smaller so they are visible in the mochitest
iframe.

--HG--
extra : rebase_source : f3b04136115b9cbd80eee180851ae15f2affe6f6
2016-08-22 15:30:05 +10:00
Dan Glastonbury 7650e88a66 Bug 1294358 - P3: Added test video with no audio. r=jya
--HG--
extra : rebase_source : 13de5edaf71a3ec19a5f5d697cc93683084003a5
2016-08-22 17:16:10 +10:00
dglastonbury@mozilla.com c25529b63f Bug 1294358 - P2: Add test for 'ended' event firing for suspended video. r=jwwang
--HG--
extra : rebase_source : c1d112ddb0c025e246629ab40d3ed0cca490e388
2016-08-11 09:57:52 +00:00
Dan Glastonbury 52d42c9734 Bug 1294358 - P1: Change test files to specify mime type. r=jwwang,jya
Change test files to specify the mime type of the file. This is checked
by media test manager so that changes in mochitest.ini are not needed.

MozReview-Commit-ID: 4hFQmRknBOY

--HG--
extra : rebase_source : b76a8dfe071dec320a7ebef8fc071e671278c1fa
2016-08-22 17:19:57 +10:00
Bryce Van Dyk c3673885ce Bug 1145011 - Add test for waitingforkey. r=jya
MozReview-Commit-ID: LKlDd4wkRSE

--HG--
extra : rebase_source : e7089e48d90739470686868541c9e8bfd6789dc0
2016-08-22 08:52:45 +12:00
Bryce Van Dyk bf4a449efb Bug 1145011 - Implement waitingforkey event. r=jya
Bubble information from SamplesWaitingForKey to an HTMLMediaElement so that we
can emit a waitingForKey event. If we are unable to decode more samples due to
needing a key the event will be signalled. See
http://w3c.github.io/encrypted-media/#dom-evt-waitingforkey for more information
on this event.

The code in place before this patch handles updating readyState when we are
waiting for a key, this patch adds the event which should be emitted in such a
case. The spec defines certain preconditions should be the case before running
the algo to emit this event. For example, the element should potentially be
playing, and it should have at least HAVE_FUTURE_DATA ready state. This is not
strictly true for when the new code is run, due how existing code handles ready
state. We are honoring the spirit of the spec, though the letter of the spec is
lightly gone against in the handling of the preconditions.

MozReview-Commit-ID: LKlDd4wkRSE

--HG--
extra : rebase_source : 2c61fc41636e430afa23240ad5d26c886124d87f
2016-08-22 08:51:01 +12:00
Wes Kocher 9c3d37e549 Backed out 3 changesets (bug 1270016) for various media test failures/unexpected-passes a=backout
Backed out changeset 9178e6e14a5a (bug 1270016)
Backed out changeset 8359b182bb99 (bug 1270016)
Backed out changeset 8a0f3231b43e (bug 1270016)
2016-08-22 10:07:57 -07:00
Wes Kocher 24cb21d4f6 Backed out 15 changesets (bug 1195723) for various media test failures/unexpected-passes a=backout
Backed out changeset 2a3b10281c9c (bug 1195723)
Backed out changeset c3775a6225d8 (bug 1195723)
Backed out changeset ba0aeb71c672 (bug 1195723)
Backed out changeset 894061e6037e (bug 1195723)
Backed out changeset 4637f8be98bb (bug 1195723)
Backed out changeset c2664064fa55 (bug 1195723)
Backed out changeset 39908ea4c390 (bug 1195723)
Backed out changeset 3fcb5682049a (bug 1195723)
Backed out changeset 867d6507a381 (bug 1195723)
Backed out changeset c938ad9dd11c (bug 1195723)
Backed out changeset 7bdb9540b60f (bug 1195723)
Backed out changeset a4f7a73c04fa (bug 1195723)
Backed out changeset 7f86beff4263 (bug 1195723)
Backed out changeset efb6bcf743e7 (bug 1195723)
Backed out changeset 04eceefa54c7 (bug 1195723)
2016-08-22 10:07:25 -07:00
clui 7af742f74e Bug 1287594 - Allow usage of marionette harness options through mach. r=whimboo
MozReview-Commit-ID: CJwo4RsCnVg

--HG--
extra : rebase_source : bbeb924627625e43878a9af26a1d6e2f7cb6d511
2016-08-19 16:35:19 -07:00
Jean-Yves Avenard 2c74818e1f Bug 1195723: [flac] P15. Add metadata mochitest. r=kamidphish
MozReview-Commit-ID: vVAA2Gnls8

--HG--
extra : rebase_source : 842fa2a1e3f0243e3ee4ffc6631fbde46dc6f164
2016-08-18 16:34:56 +10:00
Jean-Yves Avenard d34bf5f44c Bug 1195723: [flac] P14. Add support for metadata. r=kamidphish
MozReview-Commit-ID: GDlmGcWRNsM

--HG--
extra : rebase_source : 71845fe549b0ac79b36a3f7c0c0d422e13a90d8f
2016-08-18 16:06:38 +10:00
Jean-Yves Avenard 46be523297 Bug 1195723: [flac] P13. Add mochitest files. r=kamidphish
MozReview-Commit-ID: 34FlM9HcTDo

--HG--
extra : rebase_source : 3c7a112863647c7b5ae48fae23294ae2b252c77d
2016-08-18 15:30:52 +10:00
Jean-Yves Avenard a637a5b7d5 Bug 1195723: [flac] P12. Add sniffer for streaming flac. r=kamidphish
MozReview-Commit-ID: P62v6vsXzs

--HG--
extra : rebase_source : 37c365efbff607b10ad41ce8290556ded07783e2
2016-08-18 13:07:11 +10:00
Jean-Yves Avenard 0b8aa201dd Bug 1195723: [flac] P9. Hook up flac decoder and demuxer. r=kamidphish
MozReview-Commit-ID: 5Md6mcZkME

--HG--
extra : rebase_source : 0b8015d1da20e113aef4fd41847d4257f763b3b7
2016-08-17 15:45:06 +10:00
Jean-Yves Avenard 2fe396da19 Bug 1195723: [flac] P8. Add flac MediaDecoder. r=kamidphish
MozReview-Commit-ID: BQ9fERFEFcg

--HG--
extra : rebase_source : 259d428b921e11b1149811b15b2cbe81c5f76d14
2016-08-17 15:42:18 +10:00
Jean-Yves Avenard 28274a3ea1 Bug 1195723: [flac] P7. Add flac demuxer. r=kamidphish
MozReview-Commit-ID: 5db0hAsDjji

--HG--
extra : rebase_source : e9c316502f2a4cd7bb06796a43f4c4807d5ac6f3
2016-08-17 15:40:14 +10:00
Jean-Yves Avenard 467235f54a Bug 1195723: [flac] P6. Add support for raw flac metadata decoding. r=kamidphish
We also move flac related files to their own flac folder.

MozReview-Commit-ID: YnV3HNbjZe

--HG--
extra : rebase_source : 59ade40278c324ffc2f4604ec9f93697406f3269
2016-08-17 15:33:50 +10:00
Jean-Yves Avenard e7b75cd6a1 Bug 1195723: [adts] P4. Add extra mimetype for adts/aac. r=kamidphish
When the content is served by Apache, a file with an .aac extension always see its Content-Type set to x-aacp.

MozReview-Commit-ID: 65NANlKNQek

--HG--
extra : rebase_source : f43e15646589379b3e5f7f71fe30f8de8028fa4f
2016-08-17 15:25:02 +10:00
Jean-Yves Avenard 47733b46b7 Bug 1195723: [ogg/flac] P3. Add flac support in ogg. r=kamidphish
This feature is intended to debug the flac parser only and is behind a hidden pref.
There's lots of redundant code in OggCodecState, there's need for a serious cleanup there.

MozReview-Commit-ID: 9H4efd2cfuE

--HG--
extra : rebase_source : d6af6a028f50dea7c562cf62fac71ae23b1d5e01
2016-08-04 17:21:53 +10:00
Jean-Yves Avenard 5dd2775ab5 Bug 1195723: [ogg] P2. Refactor mimetype parsing for ogg. r=kamidphish
Make it just like MP4, WebM and all the others new demuxers.
Additionally, make the ogg related preferences part of MediaPrefs.

MozReview-Commit-ID: DTedHyIMv9I

--HG--
extra : rebase_source : 5ab806335b4ad17b04a20e37caf87eeb37f68bed
2016-08-04 17:14:28 +10:00
Jean-Yves Avenard c7bb459c9e Bug 1195723: [flac] P1. Primitive flac frame parser. r=kamidphish
Currently only handle metadata decoding.

MozReview-Commit-ID: JL4vqtY5kUS

--HG--
extra : rebase_source : 9cad10afb3174f67a78ea4418df5eb64fa1c83b1
2016-08-04 17:09:34 +10:00
Jean-Yves Avenard 5b527b5eca Bug 1270016: P3. Only check audio format at decode time. r=kamidphish
With raw streaming flac, we can't determine the audio format at the time the codec is opened.
Additionally, when using streaming flac, we do not have a STREAMINFO block. The FFmpeg flac decoder check that extradata is null and not its size and would error due to an invalid extradata.

MozReview-Commit-ID: KZ3n8b8WUMo

--HG--
extra : rebase_source : a0dd8f517d730b1414c6461fc5c5e5b08d0d8b10
2016-08-16 16:21:18 +10:00
Jean-Yves Avenard cc1aaa08e8 Bug 1270016: P2. Make the FFVPX PDM work with FLAC. r=kentuckyfriedtakahe
MozReview-Commit-ID: BmwtZF3NSEI

--HG--
extra : rebase_source : 4b7bc5d49bf129f8442314d3d43110577c0c7484
2016-08-02 22:54:26 +10:00
Jan-Ivar Bruaroey 9e4998ef79 Bug 1284683 - add unanonymized nsIMediaDevice.rawId for browser-chrome use. r=jesup
MozReview-Commit-ID: A4RDfdZAF21

--HG--
extra : rebase_source : 0c1ca7b5a413daad31a95dd7eb42277a4e984f2f
2016-08-18 00:01:00 -04:00
Chris Pearce b20d1d8c23 Bug 1295630 - Provide a way for A/V sync to be ruined, so talos can test compositor throughput by painting expired frames. r=mattwoodrow
In bug 1258870 I changed the media code so that we dropped all late video
frames. Without this, our A/V sync was broken when the decode was struggling
to keep up, and we weren't reporting dropped frames when the decode couldn't
keep up, and so players couldn't adapt to a bitrate which the decode could keep
up on.

However, dropping all late frames broke talos tests which relied on the old
behaviour of us rendering video frames that were late. So this patch adds a
pref to cause the frame dropping code to not drop the last frame in the
queue, so there will always be something for the compositor to composit. This
means talos will once again be able to test how fast it can composit frames
that aren't supposed to be drawn.

The pref is media.ruin-av-sync.enabled.

It defaults to false.

MozReview-Commit-ID: J3VvpzoDRmI

--HG--
extra : rebase_source : ee24f37f201ef266e0894ca2c5afda498629ec0a
2016-08-19 21:34:42 +12:00
Andreas Pehrson ba31cb2444 Bug 1259788 - Allow MediaStreamTrack::ForwardTrackContentsTo to take an explicit TrackID. r=jesup
MozReview-Commit-ID: EqsRdVJVuWu

--HG--
extra : rebase_source : 0008e6da5a4f49acdd567c0a84e432687599453e
extra : source : 7403911293c523f9714a693b91f9cafe5f5b3234
2016-07-06 10:37:28 +02:00
Andreas Pehrson d95d7de7da Bug 1259788 - Fix MediaStreamTrack logging. r=jesup
MozReview-Commit-ID: 43Pz8VcSXQ

--HG--
extra : rebase_source : e5fc6dc4cc1e3e5a7d65a5d742100dad89317b35
2016-08-12 14:03:33 +02:00
Andreas Pehrson 7fe05b7baa Bug 1259788 - Fix AudioStreamAnalyser debug canvas drawing. r=jib
MozReview-Commit-ID: 9kRWvdfFvbS

--HG--
extra : rebase_source : 81f9d4631eab4d5f39f6eed475e5ce50a5e4992c
extra : source : f5b558833cad65d3f4be73759ee066ac39ffa4ce
2016-07-06 10:34:18 +02:00
Andreas Pehrson 9d17b1873b Bug 1259788 - Make AudioStreamAnalyser (test-only) work with dynamically added tracks. r=jib
MozReview-Commit-ID: 1mpHKMyTHy8

--HG--
extra : rebase_source : a36487983862911b71e08a8c3ecee86b371a9860
extra : source : 083af945296f4630a603481d23797dab870d6dd7
2016-07-06 10:33:30 +02:00
Andreas Pehrson 702bbad147 Bug 1259788 - Multi-track support for MediaTrackList. r=jesup
MozReview-Commit-ID: 1av5uvyCMYv

--HG--
extra : rebase_source : d60ecefbe55bf3d77521aaf3aced427e0012411a
extra : source : e108109d193b5f18e358fcb226d7700c5103d9cc
2016-08-24 10:58:04 +02:00
Andreas Pehrson 342a7b0a17 Bug 1259788 - Add test for output MediaStreamTracks when media element captures MediaStream. r=jib
MozReview-Commit-ID: CikbebBmpQp

--HG--
extra : rebase_source : ac99203c904208d29318a508b15b5b7c20928167
2016-08-22 12:01:54 +02:00
Andreas Pehrson dba71afe5e Bug 1259788 - Add video content test for captureStream of MediaElement playing a MediaStream. r=jib
MozReview-Commit-ID: F6X0E0VeqP9

--HG--
extra : rebase_source : d15ab649de706aa374112d8d7a99cb276de8343c
2016-08-18 17:37:19 +02:00
Andreas Pehrson 92ec66172a Bug 1259788 - Add audio content test for captureStream of MediaElement playing a MediaStream. r=jib
MozReview-Commit-ID: HyR1EjCsYko

--HG--
extra : rebase_source : fb17f9e7b5dfbdad73ae0ffdbb3ea3d9ea215343
extra : source : 8a120ed4120932d54d47b49c474109a2981add97
2016-08-08 18:49:30 +02:00
Andreas Pehrson 515d54094e Bug 1259788 - Create haveEvents() and friends in head.js. r=jib
When we expect multiple events of the same type (in this case "addtrack" on
MediaStream) we can use this convenience function to attach a listener and
wait for the expected number of events before removing the listener and resolving.

This also adds a function to check that there were no extra events of the same
kind after the expected N events, and a function that checks that we don't see
a certain event within a given timeout period.

MozReview-Commit-ID: 1P8MkEI0Yzm

--HG--
extra : rebase_source : a815d5834c71785359613c2fb5af3cdb14ba1a54
2016-08-22 12:01:39 +02:00
Dan Glastonbury 0e76b94eb8 Bug 1297429 - Fix video suspend intermittent failures. r=jwwang
On Linux x64 PGO try, HTMLMediaElement was reliably invoking
decoder->NotifyOwnerActivityChanged() after SetVisible(false) was
called. This caused the pending suspend to be cancelled and the test
waits for an event that never arrives.

Fixed by adding 'forced hidden' to MediaDecoder that overrides the
element visibility that comes from HTMLMediaElement.

MozReview-Commit-ID: 5aRhxxZ5cZd

--HG--
extra : rebase_source : 5a4e1c44ddd2265eab545f8fe19c4ae47cebf7bf
2016-08-25 12:10:05 +10:00
Jean-Yves Avenard cb7d929883 Bug 1244489: Do not expect currentTime to always be 0 by the time playing is fired. r=jwwang
The playing event is sent asynchronously. By the time the playing event
actually gets fired, it is possible that playback has already started.

MozReview-Commit-ID: 1iD3ZSmWtmb

--HG--
extra : rebase_source : c9ea91b5102370f3b063a05f69f7eaf805bd8eb0
2016-08-23 21:31:13 +12:00
Dan Glastonbury 0f59ea17ee Bug 1295844 - Add webm testing files to video decode suspend tests. r=gerald
Test files transcoded from gizmo.mp4 using:
ffmpeg -i gizmo.mp4 -vcodec vp9 -acodec opus gizmo.webm
ffmpeg -i gizmo.webm -vcodec copy -an gizmo-noaudio.webm

MozReview-Commit-ID: 4OB8G9NtS7A

--HG--
extra : rebase_source : e43b586371fae927d0e997064169e2e56de6b476
2016-08-17 13:04:35 +10:00
Jean-Yves Avenard 745006a3fc Bug 1297880: Have GetSeekable return an empty range if duration is not r=jwwang
yet known. r?jwwang

MozReview-Commit-ID: 4e1k42FlW1z

--HG--
extra : rebase_source : 47c94026157a278192f2388a4d92768d5454c384
2016-08-25 13:36:51 +12:00
Andi-Bogdan Postelnicu e38a35af7d Bug 1282408 - add ignore initialisation check flag for mTrackID in MediaEngineWebRTCMicrophoneSource. r?=jesup
MozReview-Commit-ID: AqiQ8wrtWvQ
2016-08-24 10:55:47 +03:00
Kan-Ru Chen b6d880aca1 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES


--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08:00
Sotaro Ikeda 1ff245b181 Bug 1259571 - Reduce tearing with basic layers on Windows r=dvander
--HG--
rename : gfx/thebes/DeviceManagerD3D11.cpp => gfx/thebes/DeviceManagerDx.cpp
rename : gfx/thebes/DeviceManagerD3D11.h => gfx/thebes/DeviceManagerDx.h
2016-08-23 15:18:55 -07:00
Randell Jesup ec4a1d7fa3 Bug 1294753: Flush WebM clusters if the timecode offset will over/underflow r=rillian 2016-08-18 00:31:13 -04:00
Randell Jesup b21f1c6ba5 Bug 1294753: encode all available audio on each cycle instead of one 'packet' r=rillian
Also fixes some accesses to mEndOfStream outside the monitor
2016-08-18 00:31:11 -04:00
Randell Jesup 78bb875898 Backed out 3 changesets 74668b4ab3ea c612cd6788e0 418acf685ec2 (bug 1255737) for shutdown leaks
on a CLOSED TREE
2016-08-23 17:11:18 -04:00
Randell Jesup d95ef53b00 Bug 1255737: increase audio callback shutdown timeout to 45 seconds to reduce oranges/leaks r=kwierso
on a CLOSED TREE
2016-08-23 16:17:49 -04:00
Randell Jesup 8822a089e9 Bug 1255737: downgrade NS_ASSERTION to NS_WARNING due to linux32 VMs rs=bustage
on a CLOSED TREE
2016-08-23 14:50:47 -04:00
Randell Jesup 6b1a2c2b21 Bug 1255737: don't wait more than 15 seconds for an AudioCallbackDriver to exit r=pehrsons
Avoids running into the stalled-shutdown killer if the audio driver/OS is stupid

MozReview-Commit-ID: 58SUg2Xt37C
2016-08-23 12:47:45 -04:00
Chia-hung Tai 4e56e311ea Bug 1299714 - Add back the missing timeout protection back to |VideoTrackEncoder::Init|. r=jesup,pehrsons
MozReview-Commit-ID: AhgikMTvxAE

--HG--
extra : rebase_source : b580eedeb493397d988954d3dbde15f9a16d4bc3
2016-09-01 11:51:11 +08:00
Ryan VanderMeulen 01c4e8cc1b Merge inbound to m-c. a=merge 2016-08-19 09:52:53 -04:00
Andreas Pehrson dc0f8c6c81 Bug 1295296 - Add a mochitest. r=jesup
MozReview-Commit-ID: OolLgdIQy9

--HG--
extra : rebase_source : ed1ba6c14885f17e1d11fb4cb76fe5184f9a0e2a
extra : source : 4c3c88e0fdc55930c9bc2c43667513932417d6c4
2016-08-18 18:39:19 +02:00
Wes Kocher f67077df98 Merge m-c to autoland, a=merge 2016-08-18 16:33:37 -07:00
Wes Kocher f433f0dd71 Merge fx-team to central, a=merge 2016-08-18 16:16:47 -07:00
Jean-Yves Avenard 8ac9ba75d3 Bug 1296152: [ffmpeg] Don't use all CPUs available when decoding. r=mattwoodrow
MozReview-Commit-ID: C4CTiC9H79A

--HG--
extra : rebase_source : 05c37856dc72c0b08e23c523cfa41e011b3802ea
2016-08-18 15:34:19 +10:00
Wes Kocher 75891668b5 Merge m-c to fx-team, a=merge 2016-08-17 17:26:23 -07:00
Wes Kocher 07f8858bf6 Merge inbound to central, a=merge 2016-08-17 16:38:41 -07:00
Randell Jesup bb59c9e52f Backed out changeset 3fb31d11633e (bug 1295296) 2016-08-17 16:22:41 -04:00
Wes Kocher 6b3d348f17 Backed out 2 changesets (bug 1294358) for xp mda failures a=backout CLOSED TREE
Backed out changeset 886441076b5f (bug 1294358)
Backed out changeset 848141457f25 (bug 1294358)

--HG--
extra : amend_source : 393a51d18d37246cec3617fb3162478cd98b3bb2
2016-08-17 10:06:40 -07:00
Wes Kocher 6f430a404b Backed out changeset 942b01866756 (bug 1295844) for xp mda failures a=backout 2016-08-17 10:06:27 -07:00
Andreas Pehrson 0083eb9342 Bug 1295296 - Ignore video tracks in MediaStreamAudioSourceNode. r=jesup
MozReview-Commit-ID: 1NeFS5wIpxC

--HG--
extra : transplant_source : %CB%0A%A7c%5C%EF%9A%EA%E6D%AE%9C%8F%CC%16%3E%9E%9E2a
2016-08-17 14:26:47 +02:00
Andreas Pehrson 0dd38ea89e Bug 1295296 - Assert that we don't see video tracks in ExternalAudioInputStream. r=jesup
MozReview-Commit-ID: Cw7KMFhY5Ai

--HG--
extra : transplant_source : w_U%C6%0DVL%3F%22%03D%0F%8E%05%86%8A%97%D6%7C%8D
2016-08-17 14:26:15 +02:00
Andreas Pehrson 97c077fd3e Bug 1295296 - Add a mochitest. r=jesup
MozReview-Commit-ID: OolLgdIQy9

--HG--
extra : transplant_source : %87%0E%B2K%BFr%D4%2B%F4%B99r%F7%F3%92%BA%D3%90%A7%FD
2016-08-17 14:25:33 +02:00
JW Wang ecaa7b7a0d Bug 1295901 - Change the semantics/naming of MediaDecoderReader::ReleaseMediaResources(). r=jya
MozReview-Commit-ID: DyOwNcC2JK5

--HG--
extra : rebase_source : 5b14dfe1df7ed9eab1783fba64ff4a481e520339
2016-08-17 15:03:30 +08:00
Wes Kocher 66098b3d43 Merge m-c to autoland, a=merge 2016-08-17 17:25:57 -07:00
Wes Kocher 48b8d407c8 Merge inbound to central, a=merge
a=release to get around the webidl hook for a comment-only change

--HG--
extra : amend_source : f7e57101e1a25d3cf3536a256898ec2a21c54b38
2016-08-16 17:05:30 -07:00
Wes Kocher 29f8ebb92a Backed out changeset 9e24eb751c21 (bug 1291946) for android debug mda1 failures CLOSED TREE 2016-08-16 12:22:20 -07:00
ctai 6127c90007 Bug 1140675 - Enable test_bug879717.html on windows. r=jwwang.
MozReview-Commit-ID: Enl9fCqHhYN

--HG--
extra : rebase_source : 2b0345d1e2b2d8cfc31a10057daeef0708492621
2016-08-15 16:07:04 +08:00
ctai 36ce16e4cd Bug 608634 - Add the bug number for the todo part. r=jwwang
MozReview-Commit-ID: 7r3GMRiuTNf

--HG--
extra : rebase_source : f91d18ffdd91fe7be862bd9d7c753dc63088bba0
2016-08-17 17:37:58 +08:00
ctai 57f4a5fc0f Bug 608634 - Enable test_error_in_video_document.html in all platform. r=jwwang.
Bug 1154802 provided a workaround for this race condition. So enable it in all platform.

MozReview-Commit-ID: BS1iW4O7TsZ

--HG--
extra : rebase_source : ac825a25b195b22106ae70cb412a0b61bd846bfb
2016-08-17 17:34:07 +08:00
ctai 070831d08f Bug 608634 - Fix redundant comments. r=jwwang.
MozReview-Commit-ID: EYW8O9vZipH

--HG--
extra : rebase_source : 301427f859ff50c32bc28e243f1a606e2ad9ef7a
2016-08-17 16:17:14 +08:00
Munro Mengjue Chiang a365444cc2 Bug 1286429 - MediaDevices ondevicechange mochitest; r=jib
MozReview-Commit-ID: 9Mk1jDzRAEQ

--HG--
extra : rebase_source : 657e31211372be12b92369e56ece1c424a63ad50
2016-08-12 10:40:52 +08:00
Dan Minor 3de6cf478f Bug 1281382 - Fix setTargetAtTime using incorrect starting value when earlier event is skipped; r=karlt
This updates mLastComputedValue when removing events during the call to
CleanupEventsOlderThan.

MozReview-Commit-ID: 1Veyv8kLIna

--HG--
extra : rebase_source : 9ee9aeb458b60316f93616e3310ad26f9e85e79c
2016-08-12 14:57:19 -04:00
bechen 931402dd2f Bug 1291629 - Remove RTSP code. r=jwwang
MozReview-Commit-ID: AxaLwO4rTuY

--HG--
extra : rebase_source : f8a5de1be1471238d62b6bbc419b3a45f2590da6
2016-08-10 10:32:25 +08:00
Chris Pearce 3940f4a605 Bug 1258870 - Don't push late video frames to the compositor, drop them. r=jwwang
We can get out of A/V sync if the decode is struggling to keep up. This is
because of the loop in VideoSink::UpdateRenderedVideoFrames(). If this function
runs while there's only one frame in the video queue, we won't drop that one
frame if it's late. If we're struggling to keep up, it's increasingly likely
that we'll end up running this function with only one frame in the video queue.
That results in us entering VideoSink::RenderVideoFrames() with only 1 late
frame, which the compositor dutifully draws. Resulting in a late frame being
drawn, and thus broken A/V sync.

This change makes VideoSink::UpdateRenderedVideoFrames() drop all late
frames, even the last one in the video queue. We now keep A/V sync when the
decode is struggling to keep up. However, if I do this, we end up dropping
(and reporting that we drop) a lot more frames, and thus rendering a lot fewer.
But since we when we drop the frames we report them as dropped, a well written
MSE player can detect that we've failing miserably to keep up, and and lower
their bitrate.




MozReview-Commit-ID: ybkq48mKk2

--HG--
extra : rebase_source : f03c186059a365a45de698b2a30e632daae47fb8
2016-08-15 13:35:52 +12:00
JW Wang f59d74c259 Bug 1295146 - add assertions to debug null-deref. r=jya
MozReview-Commit-ID: 966DpcaT1p8

--HG--
extra : rebase_source : 79a1079161880771bb17bcfbb5786a53b298d060
2016-08-16 09:38:29 +08:00
Munro Mengjue Chiang 730a993044 Bug 1286429 - Fire fake devicechange event in Camera IPC thread for mochitest; r=jib
MozReview-Commit-ID: 9sDLnMGh3xL

--HG--
extra : rebase_source : 026891d00450b9bfd792708ab3d5d2e730f431f9
2016-08-09 16:37:04 +08:00
Munro Mengjue Chiang 4eb2d3e90d Bug 1286429 - implement mediaDevices.ondevicechange for Mac OSX; r=jib,smaug
MozReview-Commit-ID: D1Jr6I4qPyr

--HG--
extra : rebase_source : 0f4a97da80d25923c9b6f6550b94039aefa88de5
2016-08-12 01:04:49 +08:00
ctai 3fa6c14f4c Bug 1295478 - Enable test_empty_resource.html on Windows debug build. r=jwwang.
MozReview-Commit-ID: KUBRpLqKU5m

--HG--
extra : rebase_source : 7ba580904ca23e8fb1a0f08cab37233e7141e831
2016-08-15 17:22:20 +08:00
JW Wang 1558178790 Bug 1294636 - Use macro to simplify the member initialization list of MediaDecoder. r=gerald
MozReview-Commit-ID: LdIXPTKuecf

--HG--
extra : rebase_source : 938b8e4efc8d8f89dc75acf17317888a304d5c27
2016-08-12 15:04:49 +08:00
JW Wang 454fa83d3d Bug 1294615. Part 2 - Refactor MDSM::SetDormant() to remove unnecessary checks for mQueuedSeek.Exists() and mCurrentSeek.Exists(). r=kaku
We've proven that when seek is in action, mQueuedSeek.Exists() is always false and mCurrentSeek.Exists() is always true.

MozReview-Commit-ID: CxNU45NXG88

--HG--
extra : rebase_source : 893dbe33cb2f66b9a0bc7ddb03afb40f06d574d0
2016-08-11 17:33:07 +08:00
JW Wang 7e467b7cda Bug 1294615. Part 1 - Assert mQueuedSeek.Exists() is false in InitiateSeek(). r=kaku
InitiateSeek() is called from several places where we can prove mQueuedSeek.Exists() is false:
1. MaybeFinishDecodeFirstFrame(): mQueuedSeek is moved when calling InitiateSeek().
2. Seek() rejects mQueuedSeek before calling InitiateSeek().
3. StartDecoding(): mQueuedSeek is moved when calling InitiateSeek().
4. VisibilityChanged(): it doesn't call InitiateSeek() when mQueuedSeek.Exists() is true.

MozReview-Commit-ID: BriPw0VID5O

--HG--
extra : rebase_source : 1417b108eab1cf9cf332e55e77077d7947505d27
2016-08-11 16:07:45 +08:00
John Lin d7cf8502c8 Bug 1257777 - Part 6: Implement remote data decoders and enable/disable them with pref. r=snorp
MozReview-Commit-ID: 54ZEckQHsBI

--HG--
extra : rebase_source : e655067a487aafeccb866877157616036044ba4b
2016-08-05 15:24:46 +08:00
John Lin d8af0bb89e Bug 1257777 - Part 5: Seperate PDM and data decoders into different files. r=snorp
MozReview-Commit-ID: KP4hAZXLPAU

--HG--
extra : rebase_source : 64f4c8c086d10ce1268945c74c813177b2401d58
2016-08-05 15:24:06 +08:00
Wes Kocher a58f8b89a0 Merge m-c to inbound, a=merge 2016-08-18 16:32:58 -07:00
Nathan Froyd 029b26c7e4 Bug 1296078 - avoid passing nsCString objects to %s format string codes; r=gerald 2016-08-18 23:44:51 -04:00
James Cheng edbbde54c3 Bug 1296198 - Somewhat of improvement on MediaCodecDataDecoder on Fennec. r=jwwang
MozReview-Commit-ID: 12z9ySoa0xv

--HG--
extra : rebase_source : 97d23268f13607c39007e2f9f24ff4ce0d364373
2016-08-18 14:21:55 +08:00
ctai d8858a2e5e Bug 1291946 - Call mozCapturedStreamXXX in onloadedmetadata callback. r=pehrsons
MozReview-Commit-ID: 6gLa4OYT9v2

--HG--
extra : rebase_source : 11d367a49f7e2151253000f2f7519a7e2dd9a11e
2016-08-15 14:46:30 +08:00
ctai 32a45cd487 Bug 1291946 - Append the latest video frames from updateTracks. r=jesup, r=pehrsons
In some cases, we need to resend missed VideoSegment to new added MediaStreamVideoSink. Append the latest video frames from updateTracks.

MozReview-Commit-ID: 76RFs5fgKpY

--HG--
extra : rebase_source : 1b1e4e60e0653cbf4ef21abf364239514cf171c5
2016-08-10 10:31:14 +08:00
Anthony Jones bccc9225cc Bug 1287397 - Fix wave chunk size overflow. r=cpearce
MozReview-Commit-ID: Dg1OT13urxe

--HG--
extra : source : 7545a33148f1b87ed695ed67ee880f0c36817e7d
2016-08-09 13:34:58 +12:00
Nicholas Nethercote ca40b738e4 Bug 1294620 - Use infallible XPIDL attribute getters more. r=erahm.
This makes a lot of code more compact, and also avoids some redundant nsresult
checks.

The patch also removes a handful of redundant checks on infallible setters.

--HG--
extra : rebase_source : f82426e7584d0d5cddf7c2524356f0f318fbea7d
2016-08-12 15:19:29 +10:00
Wes Kocher d602abb016 Merge inbound to central, a=merge 2016-08-15 14:20:38 -07:00
Igor 175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor a57972337d Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
JW Wang cca3559724 Bug 1294634 - Use a switch statement to convert State to string. r=bechen
MozReview-Commit-ID: 513zK0G0Pvi

--HG--
extra : rebase_source : 4be49c324b63837edd5ed77b2add651f9f4f0d85
2016-08-12 14:54:12 +08:00
JW Wang cef7b4cae0 Bug 1294629 - Simplify the code of ReaderSuspendedChanged(). r=kaku
SetDormant() checks IsShutdown() and |mState == DECODER_STATE_DORMANT|.
So ReaderSuspendedChanged() can just call SetDormant(mIsReaderSuspended) to do the work.

MozReview-Commit-ID: J7Dzsm8IhIS

--HG--
extra : rebase_source : c8a0bc31071bfbe084c2a5f47821c0dc3cfd0860
2016-08-11 17:35:51 +08:00
Jean-Yves Avenard 4769abd741 Bug 1294648: [MSE] Return early if mediasource isn't attached. r=gerald
MozReview-Commit-ID: 9hCi5sPbZpW

--HG--
extra : rebase_source : 23b4cd16d3e104a30c0f1709b9ce0d04a105d219
2016-08-12 20:56:45 +10:00
Kaku Kuo 78dcb08be6 Bug 1294384 - make video-only attribute orthogonal to the seek type; r=jwwang
MozReview-Commit-ID: 2oBjuiN7pLn

--HG--
extra : rebase_source : 235da9a3e079ef4c120b58e3e0256309ecb7a803
2016-08-12 11:45:02 +08:00
Wes Kocher 4aec37ca6e Merge m-c to autoland, a=merge 2016-08-12 16:30:03 -07:00
Wes Kocher e9097643d5 Merge inbound to central, a=merge 2016-08-12 13:44:29 -07:00
Jan de Mooij c33bac8363 Bug 1292892 part 5 - Replace most nsContentUtils::RootingCx calls with dom::RootingCx. r=bz,terrence 2016-08-11 14:39:23 +02:00
Nicholas Nethercote 8f51d02c97 Bug 1293117 (part 5) - Change many NS_METHOD occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_METHOD F() override;      --> NS_IMETHOD F() override;
- NS_METHOD F() override {...} --> NS_IMETHOD F() override {...}
- NS_METHOD F() final;         --> NS_IMETHOD F() final;
- NS_METHOD F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.

--HG--
extra : rebase_source : 3010fade82a170eab7f13d81bf61b02cd693f3cf
2016-08-08 10:54:50 +10:00
Nicholas Nethercote bab6d17ebf Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_IMETHODIMP F() override;      --> NS_IMETHOD F() override;
- NS_IMETHODIMP F() override {...} --> NS_IMETHOD F() override {...}
- NS_IMETHODIMP F() final;         --> NS_IMETHOD F() final;
- NS_IMETHODIMP F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.

--HG--
extra : rebase_source : 386ee4e4ea2ecd8d5001efabc3ac87b4d6c0659f
2016-08-08 10:54:47 +10:00
Wes Kocher 88bc8189f9 Merge m-c to autoland, a=merge 2016-08-15 14:54:25 -07:00
Kaku Kuo 4ffe57b7d1 Bug 1294656 - apply FastSeek to video files without audio track; r=jwwang
MozReview-Commit-ID: 8r4Ghd9RXbq

--HG--
extra : rebase_source : 165b74bde60d816a864e92dde1bc64f4dc8896fe
2016-08-12 17:37:02 +08:00
Kilik Kuo 4a988fcb4c Bug 1293861 - Intermittent dom/media/test/test_playback.html | bug506094.ogv, seek.yuv, bug498380.ogv, bug504613.ogv, bug523816.ogv checking networkState - got 2, expected 1. r=jwwang
MozReview-Commit-ID: 50BZ5ctp3wl

--HG--
extra : rebase_source : 9814bcd0098b20da0071ce6bb5ae9f056d09356f
2016-08-17 16:43:11 +08:00
Dan Minor 37a83aa8e1 Bug 1113634 - Update mLastComputedValue in AudioEventTimeline when skipping events of same time; r=karlt
We need to update mLastComputedValue while processing events that occur at the
same time rather than just skipping over them.

MozReview-Commit-ID: LuxSK6PHFHv

--HG--
extra : rebase_source : be323da2a50ea32838aef322267115d153a14c3d
2016-08-08 16:00:35 -04:00
Wes Kocher fa1a1180c4 Merge autoland to central, a=merge 2016-08-10 16:29:26 -07:00
Byron Campen [:bwc] e139ac74e7 Bug 1275461: Extend a timeout. r=drno
MozReview-Commit-ID: FEQ7aMo9UuD

--HG--
extra : rebase_source : 83133560e07780aebb5fb15c5db80f59488fe711
2016-08-09 10:29:10 -05:00
Carsten "Tomcat" Book 553a2da922 merge mozilla-inbound to mozilla-central a=merge 2016-08-10 15:54:26 +02:00
James Cheng 0593e89ea0 Bug 1293194 - Building with --disable-eme fails with GMPDecoderModule.cpp:15:30: fatal error: mozilla/EMEUtils.h: No such file or directory. r=cpearce
MozReview-Commit-ID: VUGdiaLqkV

--HG--
extra : rebase_source : 3439ba2f7a81ad80f9db514f21c6091cc3e5711a
2016-08-09 12:13:30 +08:00
Nicholas Nethercote e7f10a07fd Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.

--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Kaku Kuo a6ed727230 Bug 1292091 - Part 2 - replace MaybeResolve(JS::UndefinedHandleValue) with MaybeResolveWithUndefined(); r=bz
MozReview-Commit-ID: KNbxVcCVqts

--HG--
extra : transplant_source : %1D%18%E5%C9o%F0%29%E7%E0%93%EEcR%C7B%3BeX%B3%87
2016-08-09 17:15:13 +08:00
Kilik Kuo b7644b831d Bug 1077294 - remove NETWORK_LOADED from the test cases. r=jwwang
MozReview-Commit-ID: 7tvTT7DVSqH

--HG--
extra : transplant_source : %DCC%1D%9E%AE%001%EB%06%A4%E5B%80%80%89%8C%E4%FCv%F6
2016-08-08 15:27:14 +08:00
Carsten "Tomcat" Book d9e0b4c565 merge mozilla-inbound to mozilla-central a=merge 2016-08-09 15:44:51 +02:00
Randell Jesup bf711891aa Bug 1271585: Disable peerconnection_addtrack_removetrack_events, not getusermedia rs=jesup 2016-08-08 22:17:42 -05:00
Matt Woodrow 05bc28c9a1 Bug 1279136 - Specify a format for our D3D9 video device to avoid the driver needing to compute one. r=cpearce 2016-08-09 13:28:51 +12:00
Wes Kocher 78ec753b6f Merge m-c to inbound, a=merge 2016-08-08 16:29:21 -07:00
Jean-Yves Avenard 57bcb09a90 Bug 1128069: [MSE] P6. Call NotifyDataArrived from MediaDecoder. r=gerald
Calling NotifyDataArrived from each sourcebuffer will cause multiple unnecessary NotifyDataArrived to the MediaFormatReader when it could only be done once. Additionally, it ensures that the media duration is updated prior to the reader actioning on the notification.

Extra: mEnded is only ever accessed on the main thread, there's no need to make it atomic.

MozReview-Commit-ID: IKq7IRBbWic

--HG--
extra : rebase_source : 6cf18b1f71f5ee6c8e82c73bdd2857e783f343b8
2016-08-08 13:56:38 +10:00
Jean-Yves Avenard 41f815e7fa Bug 1128069: [MSE] P5. Adjust currentTime to end position in MediaDecoder. r=jwwang
The duration in the MediaDecoder is the canonical. It has as such a more up to date value than the mirror.
Under some circumstances, the MDSM may have reached the end of media playback before the duration mirror had time to update. So perform the currentTime adjustment in the MediaDecoder instead.

MozReview-Commit-ID: 1RFr4mT5LpA

--HG--
extra : rebase_source : 3151d86561b53d5d1922c7c16f042792bfd47283
2016-08-08 13:49:51 +10:00
Jean-Yves Avenard 5b0b40ef42 Bug 1128069: [MSE] P4. Do not adjust duration to what data we may have been seen in the past. r=jwwang
With MediaSource, the duration is always known and exact. It is entirely possible that we have played data at some point, then removed that data and adjusted the duration.

MozReview-Commit-ID: HZe2yXtQfIL

--HG--
extra : rebase_source : be1b57575c28142d6b3091b23894a7e4e1c9b405
2016-08-05 16:03:01 +10:00
JW Wang 2d84b3c90e Bug 1291633 - Don't call MediaDecoder::SeekingStarted when visibility is Suppressed. r=kaku
MozReview-Commit-ID: 15YOmFCoXGp

--HG--
extra : rebase_source : b5269f7a4883ff08dbfdb797df9eb78334315108
2016-08-03 17:18:54 +08:00
JW Wang 6d1ce3ea1a Bug 1292449. Part 3 - Assert IsShutdown() is false in MediaDecoder::Shutdown(). Shutdown() should be only called once. r=kaku
MozReview-Commit-ID: 6iFKkTTb7qD

--HG--
extra : rebase_source : 773cdf796a11a0ca7b6577c348ec411c422a0342
2016-08-01 16:11:20 +08:00
JW Wang 862e36e74c Bug 1292449. Part 2 - Assert IsShutdown() is false in NotifyBytesDownloaded(). r=jya
1. Called from SourceBuffer::AppendDataCompletedWithSuccess() where mMediaSource->GetDecoder() is not null.
2. Called from MediaDecoder::ResourceCallback::NotifyBytesDownloaded() which is disconnected in Shutdown().

MozReview-Commit-ID: 103pxZP02Bb

--HG--
extra : rebase_source : 72e8a9c29d5ca6a4932de3a119497b05bfadbe68
2016-08-01 16:01:16 +08:00
JW Wang 63442be770 Bug 1292449. Part 1 - Assert IsShutdown() is false in NotifyDataArrived(). r=jya
1. Called from SourceBuffer::AppendDataCompletedWithSuccess() where mMediaSource->GetDecoder() is not null so this must happen before Shutdown().
2. Called from SourceBuffer::Ended() where mMediaSource->GetDecoder() is not null.
3. Called from MediaDecoder::ResourceCallback::TimerCallback() which is canceled in Disconnect().

MozReview-Commit-ID: 5dqVuOcrABy

--HG--
extra : rebase_source : a134f552c4fae2317cbf93dc1e861199d4c91346
2016-08-01 15:58:10 +08:00
JW Wang aace2f0c8d Bug 1290809 - Remove MediaDecoder::IsEndedOrShutdown(). r=gerald
MozReview-Commit-ID: 4XUcJyQlmfk

--HG--
extra : rebase_source : fc2a044ca2776744ef0fff32300faf647666e73c
2016-08-01 15:22:32 +08:00
JW Wang 8ce157e06f Bug 1290364 - clear mOwner in Shutdown(). r=cpearce
MozReview-Commit-ID: 2CsYKcSrEOJ

--HG--
extra : rebase_source : 3fd60ea1dbbf57c168fa8cebb9bb5594ee8c19fb
2016-07-29 14:44:22 +08:00
Chris Pearce b4c569d8b8 Bug 1293101 - Refactor CDMCaps.cpp to treat keys marked as output-restricted as usable in all cases. r=gerald
This is a follow up from bug 1289623, as I missed a few cases in that bug.

MozReview-Commit-ID: DM7FtVSZUo3

--HG--
extra : rebase_source : 4fd7ae93b1418ded54f0c21a50a654fc962d4892
2016-08-08 10:41:38 +12:00
Bryce Van Dyk fe6ac1173a Bug 1292396 - Replace Marionette context string literals with symbolic variables. r=automatedtester
MozReview-Commit-ID: 9tRUYmVsaXO

--HG--
extra : rebase_source : 2776e4984543f9f6fec69d1b33c36bd8de073013
2016-08-03 14:21:27 +12:00
Bryce Van Dyk fde8c66d92 Bug 1292394 - Update external media test dependencies. r=automatedtester
Bump deps. Previous deps resulting in failures with current builds.

MozReview-Commit-ID: BUEfDmmE00E

--HG--
extra : rebase_source : a5437a86a875531945c558fab9427c6c31059289
2016-08-01 13:43:29 +12:00
Gregory Szorc a1cbf6ab70 Backed out changeset 7545a33148f1 (bug 1287397) for Valgrind failures 2016-08-08 19:34:41 -07:00
Anthony Jones 4e052f4a73 Bug 1287397 - Fix wave chunk size overflow; r=cpearce
MozReview-Commit-ID: Dg1OT13urxe

--HG--
extra : rebase_source : 60f57edf43f7fb7c83b6db25dffb240993ec5523
2016-08-09 13:34:58 +12:00
Bryce Van Dyk 77cdb2b31b Bug 1211959 - Tests check if video has started using played range. r=automatedtester
Previously the tests would check if playback had started by looking at the first
recorded time, and then looking at the current time. If there were a lag it was
possible for the first recorded time to be at the end of the video (i.e.
playback already finished), in which case the video playing would not register.
This patch instead uses the played ranges from the video element. Now so long as
there is a non-empty played range we trust playback started.

MozReview-Commit-ID: 5C39A42KRdj

--HG--
extra : rebase_source : e4e8a35df3bac4c9e7765272acb6300b44b45d4e
2016-08-05 12:38:54 +12:00
Alastor Wu 422258bfec Bug 1283417 - part2 : notify media element when cue's display states changed. r=bechen
MozReview-Commit-ID: 4bzS62wveGq

--HG--
extra : rebase_source : 0f9f202877b47142ad5833ebd92b4d4a5f7fc017
2016-08-09 16:58:52 +08:00
Alastor Wu d5a9e0c263 Bug 1283417 - part1 : implement function to notify cue's display states changed. r=bechen
MozReview-Commit-ID: AF2S2UOLCt1

--HG--
extra : rebase_source : a49043e2114cba053168b5e3f52f3846c456b2fa
2016-08-09 16:43:07 +08:00
Sebastian Hengst d307cb8dab Backed out changeset 4361c6f3b915 (bug 1289968) for failing encrypted-media-generate-request-disallowed-input.html. r=backout 2016-08-08 15:28:12 +02:00
Henrik Skupin 97aa5e356f Bug 1292465 - Bump firefox-puppeteer to 51.0.0. r=automatedtester
MozReview-Commit-ID: 1xEqCi0LQVQ

--HG--
extra : rebase_source : b26be31fabd4d699fc95f8d3e938bf92699a40a7
2016-08-05 11:41:48 +02:00
Bryce Van Dyk 3055f0dfe7 Bug 1293149 - Mediasource URL check should check for 'blob' instead of 'mediasource'. r=automatedtester
This behaviour changed as part of Bug 1279493, and the tests should be updated
to reflect this.

MozReview-Commit-ID: oITf0hVjKk

--HG--
extra : rebase_source : 26f54e0ac49a2f27f364c75a63851df5a85ce18f
2016-08-08 15:25:06 +12:00
Chris Pearce a41f94398b Bug 1289968 - Ensure ClearKey doesn't assume keyIds can only be 16 bytes. r=gerald
I also added more testing around ClearKey's base64 decoding, since that affected
how keyIds were handled.

MozReview-Commit-ID: 2UH1JNT4NC3

--HG--
extra : rebase_source : 8e2c861e6b030d7e4a1378d3fafed7630324d940
2016-08-01 16:28:10 +12:00
Wes Kocher 83c7e63697 Merge m-c to inbound, a=merge 2016-08-05 14:06:00 -07:00
Nathan Froyd f7fb6722a6 Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester
This patch is really two separate changes.

The first change is that rust crates are large, standalone entities that
may contain multitudes of source files.  It therefore doesn't make sense
to keep them in SOURCES, as we have been doing.  Moving to use cargo
will require a higher-level approach, which suggests that we need a
different, higher-level representation for Rust sources in the build
system.

The representation here is to have the build system refer to things
defined in Cargo.toml files as the entities dealt with in the build
system, and let Cargo deal with the details of actually building things.
This approach means that adding a new crate to an existing library just
requires editing Rust and Cargo.toml files, rather than dealing with
moz.build, which seems more natural to Rust programmers.  By having the
source files for libraries (and binaries in subsequent iterations of
this support) checked in to the tree, we can also take advantage of
Cargo.lock files.

The second is that we switch the core build system over to building via
cargo, rather than invoking rustc directly.

We also clean up a number of leftover things from the Old Way of doing
things.  A number of tests are added to confirm that we'll only permit
crates to be built that have dependencies in-tree.
2016-08-06 00:49:26 -04:00
Nathan Froyd dec8ad67e8 Bug 1231764 - part 5 - add a Cargo.toml for the dom/media/gtest/ code; r=chmanchester
We are going to need a Cargo.toml for all Rust code in the tree, no
matter how trivial.
2016-08-06 00:49:26 -04:00
Wes Kocher ac0a6fd9e6 Backed out 2 changesets (bug 1286041) for asan failures in cubeb_pulse.c
Backed out changeset 72e5792fe990 (bug 1286041)
Backed out changeset 14d4b1e011ad (bug 1286041)

--HG--
extra : rebase_source : 1db28655abbb337e537a67d09e2af243ae94f081
2016-08-05 11:05:33 -07:00
Carsten "Tomcat" Book 0cd188453a Merge mozilla-central to autoland 2016-08-05 12:15:20 +02:00
Randell Jesup fd8a8c3c74 Bug 1290075: Always Init() the VoiceEngine when enumerating audio inputs r=jib 2016-08-04 21:24:05 -04:00
JW Wang cff471d7a8 Bug 1283724 - throttle notifications from stochastic network activity to save computation of buffer ranges. r=jya
MozReview-Commit-ID: BRBv2Flqu3u

--HG--
extra : rebase_source : fe28566c79f2f31a5054e4cda35d96c938985299
2016-08-01 14:39:39 +08:00
Matt Woodrow f323872778 Bug 1292032 - Clean up VideoData static constructor methods. r=jya
--HG--
extra : rebase_source : e025c9a15ad00e970f9027f72c78b5d6effbc301
2016-08-04 15:31:52 +12:00
Michael Layzell 2513a13f51 Bug 1291741 - Relax setTimeout throttling in background tabs when an AudioContext is present, rather than only when audio is playing, r=bkelly 2016-08-04 16:53:58 -04:00
Eugen Sawin 92fabd41a0 Bug 1291543 - [1.1] Accept partial information from VBR headers. r=jya 2016-08-04 22:20:26 +02:00
Alex Chronopoulos 942a71b7a1 Bug 1286041 - Assert audio callback is not called in initialized state. r=jwwang
MozReview-Commit-ID: JX7QVba9O2I

--HG--
extra : rebase_source : 4058fcc3795b24fa3e209ca59a347b6e41564a65
2016-07-12 16:53:58 +02:00
Alexandre Lissy 26819b2e54 Bug 1292464 - Followup fix Gonk for VideoData cleanup from bug 1292032 r=mattwoodrow
MozReview-Commit-ID: 73Hqb7kmTLo
2016-08-05 15:00:35 +02:00
Kaku Kuo c79eb6f91f Bug 1290371 - handle files with audio and video tracks but no samples at all; r=jya
So, we have 4 boolean variables and here is the truth table.
Case 1, 2, 3, 4, 7, 8, 10 and 12 are not possible to happen.

Then, the remaining cases could be clustered into three categories:
(1) Case 5, 9 and 13: no sample is demuxed at all, return 0.
(2) Case 6, 11, 14 and 15: either audio or video is able to be demuxed, return the known value.
(3) Case 15: both audio and video are demuxed, return the minimum of the values.


For simplifying the logic, I will initialize the audioStartTime and videoStartTime
to be INFINITY if we don't have the first-demuxed sample, otherwise, initialize
them to be the real first-demuxed sample's time.

Then, the final calculation will be:
(1) Case 5, 9 and 13: the minimum of two INFINITY values is still INFINITY, return 0.
(2) Case 6, 11, 14 and 15: return the minimum of one real first-demuxed-time and the INFINITY.
(3) Case 15: return the minimum of two real first-demuxed-time values.

Case   HasAudio   HasVideo   HasAudioSample   HasVideoSample    ExpectedResult
---------------------------------------------------------------------------------------------------
1         F          F             F                 F          not possible
2         F          F             F                 T          not possible
3         F          F             T                 F          not possible
4         F          F             T                 T          not possible
---------------------------------------------------------------------------------------------------
5         F          T             F                 F          return 0
6         F          T             F                 T          return video sample
7         F          T             T                 F          not possible
8         F          T             T                 T          not possible
---------------------------------------------------------------------------------------------------
9         T          F             F                 F          return 0
10        T          F             F                 T          not possible
11        T          F             T                 F          return audio sample
12        T          F             T                 T          not possible
---------------------------------------------------------------------------------------------------
13        T          T             F                 F          return 0
14        T          T             F                 T          return videoSample
15        T          T             T                 F          return audioSample
16        T          T             T                 T          return min(auidoSample, videoSample)

MozReview-Commit-ID: ANsYDth7slJ

--HG--
extra : transplant_source : %DAj%1A%EC%19%82%7B%B3%05%FE%21%04a%16%9A%9F%18x1%95
2016-08-03 16:51:29 +08:00
ctai ec538248bb Bug 1291946 - Append the latest video frames from updateTracks. r=pehrsons
In some cases, we need to resend missed VideoSegment to new added MediaStreamVideoSink. Append the latest video frames from updateTracks.

MozReview-Commit-ID: 76RFs5fgKpY

--HG--
extra : amend_source : e35a9fafbf1deb61944d6a9dd9d9fad5580c592e
2016-08-10 10:31:14 +08:00
Nicholas Nethercote 34dcc7b852 Bug 1299384 - Use MOZ_MUST_USE with NS_warn_if_impl(). r=erahm.
This change avoids lots of false positives for Coverity's CHECKED_RETURN
warning, caused by NS_WARN_IF's current use in both statement-style and
expression-style.

In the case where the code within the NS_WARN_IF has side-effects, I made the
following change.

> NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));
> -->
> Unused << NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));

In the case where the code within the NS_WARN_IF lacks side-effects, I made the
following change.

> NS_WARN_IF(!condWithoutSideEffects);
> -->
> NS_WARNING_ASSERTION(condWithoutSideEffects, "msg");

This has two improvements.
- The condition is not evaluated in non-debug builds.
- The sense of the condition is inverted to the familiar "this condition should
  be true" sense used in assertions.

A common variation on the side-effect-free case is the following.

> nsresult rv = Fn();
> NS_WARN_IF_(NS_FAILED(rv));
> -->
> DebugOnly<nsresult rv> = Fn();
> NS_WARNING_ASSERTION(NS_SUCCEEDED(rv), "Fn failed");

--HG--
extra : rebase_source : 58788245021096efa8372a9dc1d597a611d45611
2016-09-02 17:12:24 +10:00
Matt Woodrow 0242a22c94 Bug 1229945 - Null check D3D9 creation function in DXVA2Manager. r=ajones 2016-09-07 15:04:31 +12:00
John Dai afa50be601 Bug 1294100 - Part 3: Modify Codegen to generate including FakeString's binding files and fix build errors. r=bz
--HG--
rename : dom/bindings/BindingUtils.h => dom/bindings/FakeString.h
2016-09-01 18:10:54 +08:00
Kaku Kuo 5ab464fd77 Bug 1295440 - Make HTMLMediaElement::SeekToNextFrame() reject promise with meaningful information; r=jwwang
MozReview-Commit-ID: Dgi3Ek8K3bR

--HG--
extra : rebase_source : 58d63933906f676a7e7a5ed85cf7e25e3e87dd16
2016-08-17 10:02:10 +08:00
Dan Glastonbury 0c1756a66f Bug 1295844 - Add webm testing files to video decode suspend tests. r=gerald
Test files transcoded from gizmo.mp4 using:
ffmpeg -i gizmo.mp4 -vcodec vp9 -acodec opus gizmo.webm
ffmpeg -i gizmo.webm -vcodec copy -an gizmo-noaudio.webm

MozReview-Commit-ID: 4OB8G9NtS7A

--HG--
extra : rebase_source : e43b586371fae927d0e997064169e2e56de6b476
2016-08-17 13:04:35 +10:00
Wes Kocher 45575a7f86 Merge m-c to autoland, a=merge
a=release for the webidl hook for a comment-only change

--HG--
extra : amend_source : e590e515ab273d097f88b35be0e5c999502ebdf4
2016-08-16 22:07:30 -07:00
ctai 03882d4cec Bug 1201363 - Do not copy video segment to StreamTracks in TrackUnionStream. r=jesup
Now everything is ready. We can make NotifyQueuedTrackChanges only triggered by TRACK_EVENT_CREATED and TRACK_EVENT_ENDED without breaking anything. Also we make TrackUnionStream no longer copying data in video case.

MozReview-Commit-ID: IgLx1mpBWB3

--HG--
extra : transplant_source : %21M%C5%07%B9%CB%16%96%D6gN%C0g%0A%E8%7D%A0%AB%98%26
2016-05-31 18:05:11 +08:00
Chia-hung Tai e759836a63 Bug 1201363 - MediaStreamVideoSink for MediaRecorder case. r=jesup
Add MediaStreamVideoRecorderSink into MediaEncorder. In this patch, I still keep use duration to pass to TrackEncoders. Don't want to make this bug too big and out of control. We can file a new bug to change TrackEncoders use TimeStamp only.

MozReview-Commit-ID: KGftzulZynj

--HG--
extra : transplant_source : %E9%22B%90%D6%CF%08%12X%D1%E2%17%90%99%B2%91%24B%EA%1D
2016-06-15 16:48:44 +01:00
ctai 290298aeec Bug 1201363 - MediaStreamVideoSink for ImageCapture case. r=jesup
Make CaptureTask to inherite from MediaStreamVideoSink. The main change is to move the logic of |NotifyQueuedTrackChanges| to |SetCurrentFrames|.
The original image capture is not modified for support multiple video MediaStreamTracks. The design still used the track id in owned media stream. The should be fixed in the following bug if we still want to support ImageCapture in multiple video tracks case.

MozReview-Commit-ID: Od4tHoR8Ef

--HG--
extra : transplant_source : %AA%1BD%20%1D%8F%D0%9A%5B%9C%7Ef%A0%1C%E9%D7%EE%AE%E6%93
2016-05-31 13:53:49 +08:00
ctai 2c69985ffe Bug 1201363 - Call MediaStreamVideoSink::setCurrentFrames in SourceMediaStream::AppendToTrack. r=jesup
In this patch, we first deal with the case of MediaElement. Now we replace |PlayVideo| with |VideoFrameContainer::SetCurrentFrames| in |SourceMediaStream::AppendToTrack|. The MSG use TimeStamp::Now() for the TimeStamp of each video frame in most of case except MediaElement case. Becasue the MediaElement has its own VideoQueue, we need to calucalte the correct Timestamp based on the StartTimeStamp of this MediaStream and the elpased time of the video frame in DecodedStream.

MozReview-Commit-ID: 2bm2AHkFXHu

--HG--
extra : transplant_source : %3D%AA%00%CE%A3SV5%8F%84%96%AC%E2%D9%10%EC%85%07N%DF
2016-07-25 10:01:26 +08:00
ctai 384447b1ba Bug 1201363 - Adding Add/RemoveVideoOutput into VideoStreamTrack. r=jesup
MozReview-Commit-ID: JmKotuB3pBM

--HG--
extra : transplant_source : %DE%90%A1%E0%CC%FD%27%AC%BB%931%9F%EF%B8M%CE%F0%C3%3F%B7
2016-07-19 11:45:27 +08:00
ctai 27d3bbf12d Bug 1201363 - Register MediaStreamVideoSink into SourceMediaStream. r=jesup
MozReview-Commit-ID: 7X546VXVLJT

--HG--
extra : transplant_source : %98%26%05s%9B%96%05%D3%1Aq%7E87%F4%A5%A2%DE%C0Sw
2016-05-30 11:32:23 +08:00
ctai 0444986d79 Bug 1201363 - Let MediaStreamVideoSink bind with particular video track. r=jesup
MozReview-Commit-ID: FcjnmDKuRQI

--HG--
extra : transplant_source : %C3%D3%08%E5%C7%CA%9E%7C%F9L%C0w%C2o%11%16%877%04%21
2016-05-27 14:33:50 +08:00
ctai b7fcb47572 Bug 1201363 - Replace VideoFrameContainer with MediaStreamVideoSink in MSG. r=jesup
Replace the pointer of VideoFrameContainer with the pointer of MediaStreamVideoSink.

MozReview-Commit-ID: 5bqEMpemwuR

--HG--
extra : transplant_source : %008z%D8W%EE%87%8E%E9/%2CT%26%EBvo%AE%099%A6
2016-05-27 14:33:48 +08:00
Sebastian Hengst 8df190bd97 Backed out changeset 71b9d48efac6 (bug 1286041) for failing wpt mediasource-seek-beyond-duration.html on Linux. r=backout on a CLOSED TREE 2016-09-06 19:08:20 +02:00
Sebastian Hengst aaf35da4fc Backed out changeset 232069c62626 (bug 1286041) 2016-09-06 19:07:22 +02:00
Sebastian Hengst c150583370 Backed out changeset bb04b5569ab9 (bug 1286041) 2016-09-06 19:06:51 +02:00