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

169 Коммитов

Автор SHA1 Сообщение Дата
Andreas Pehrson dff48ba75c Bug 1423241 - Remove OnTracksAvailableCallback from MediaRecorder. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12280

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:35 +00:00
Sylvestre Ledru 804b8b8883 Bug 1204606 - Reformat of dom/media r=jya
# skip-blame

Differential Revision: https://phabricator.services.mozilla.com/D12251

--HG--
extra : moz-landing-system : lando
2018-11-19 13:25:37 +00:00
Bumsik Kim c3572e1952 Bug 1458538 - Add pause and resume events for MediaRecorder. r=jya,bzbarsky
This resolves the two problems of MediaRecorder:

1. MediaRecorder does not fire pause/resume events when the corresponding methods are called, as mentioned in D7910.
2. The WebIDL for MediaRecorder does not specify onpause/onresume event handler attributes neither.

DispatchSimpleEvent() is used because there are no event attributes needed.

Differential Revision: https://phabricator.services.mozilla.com/D7971

--HG--
extra : moz-landing-system : lando
2018-11-13 12:50:04 +00:00
Bumsik Kim 90d3be0a4c Bug 1496383 - Fix state error cases of MediaRecorder to match the W3C spec r=jya
Fix a bug that the current MediaRecorder's state error cases does not match the W3C spec.
pause() and resume() should throw an INVAILD_STATE_ERR only when it is inactive state, making them
independant.
Simply changing if statements is enough because the underlying encoder object (TrackEncoder) will
ignore Suspend/Resume calls when it is already suspended/recording so there won't be side-effects by
multiple pause()/resume() calls.

Differential Revision: https://phabricator.services.mozilla.com/D7910

--HG--
extra : moz-landing-system : lando
2018-10-08 09:06:07 +00:00
Jean-Yves Avenard b3aec00d77 Bug 1409664 - P3. Allow audio/webm container type in MediaRecorder. r=bryce
Summary:

Depends on D1614

Tags: #secure-revision

Bug #: 1409664

Differential Revision: https://phabricator.services.mozilla.com/D1616
2018-07-03 11:45:16 -07:00
Jeff Gilbert 5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Andi-Bogdan Postelnicu 60732a90a5 Bug 1453795 - DOM/Media - Initialize member fields in classes/ structures. r=jyavenard
--HG--
extra : rebase_source : 0c785260497fadf98cf3cff8b9fcae8ea699c2c1
2018-06-15 10:25:02 +03:00
Andreas Pehrson 6017499cef Bug 1266345 - Let MediaRecorder ignore ended tracks. r=bryce
MozReview-Commit-ID: 8P1p0uI46BZ

--HG--
extra : rebase_source : 635ac78b2ea46041b77fd80ad5d4a387998cb413
extra : source : 1974769521fc9c1e823e56766e2ac2ba967b28a4
2018-06-08 12:28:55 +02:00
Emilio Cobos Álvarez fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Sebastian Hengst 0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Boris Zbarsky 4292bca4ee Bug 1449631 part 6. Remove nsIDOMEventTarget::DispatchEvent. r=smaug
MozReview-Commit-ID: 8YMgmMwZkAL
2018-04-05 13:42:41 -04:00
Andreas Pehrson 1238d9515a Bug 1444541 - Don't stop recorder on pagehide during frameswap. r=smaug
MozReview-Commit-ID: AZec0yXM1FI

--HG--
extra : rebase_source : d96845f7422f6e57943bf90b1ef0f29df3e08099
2018-03-19 15:52:36 +01:00
Boris Zbarsky 9bdcffc985 Bug 1436902 part 3. Replace usage of NS_IMPL_ISUPPORTS_INHERITED0 with NS_INLINE_DECL_REFCOUNTING_INHERITED when possible. r=mccr8
The change to RootAccessible.cpp fixes an obvious bug introduced in bug 741707.

The visibility changes in gfx/thebes are because NS_DECL_ISUPPORTS has a
trailing "public:" that those classes were relying on to have public
constructors.

MozReview-Commit-ID: IeB8KIJCGhU
2018-02-12 15:44:40 -05:00
John Smith c533c96627 Bug 1411857 - Set a custom time-based keyframe interval on VideoTrackEncoder. r=pehrsons
This allows MediaRecorder to pass non-empty blobs to content since our
blob gathering code waits for a new keyframe before writing to the blob.

--HG--
extra : rebase_source : be52d34df5c6b4d40d4b445c6d3ae0036e1c6904
extra : histedit_source : 43b2cf01b335a37f04032545fc9965bf574657ee
2018-01-31 10:19:39 +01:00
JW Wang 79b5f2dd2e Bug 1425996 - fix build error: unused variable 'rv'. r=gerald
MozReview-Commit-ID: 7MhsSWbxB3z

--HG--
extra : rebase_source : 81207a1e5b663314295f2f95afd4b726ffe8f12d
2017-12-21 12:12:42 +08:00
Jean-Yves Avenard 6258e4b122 Bug 1425631 - Reduce global threads count. r=jya
MozReview-Commit-ID: JWPH6DRg1k7

--HG--
extra : rebase_source : 5a05a3de3123db26ac2facb0e6ffdf6f9a0815f0
2017-12-15 21:45:35 +01:00
Nika Layzell f1ac9bf744 Bug 1419597 - Part 18: Remove IsInnerWindow and IsOuterWindow methods, r=smaug
MozReview-Commit-ID: DAAm6tLubhJ
2017-11-23 13:12:13 -05:00
Andrea Marchesini 4b1b084ce7 Bug 1416724 - part 3 - AbstractThread::Dispatch return value check in dom/media, r=jwwang 2017-11-15 07:58:03 +01:00
shindli 385fb3428c Backed out 4 changesets (bug 1416724) for failing /builds/worker/workspace/build/src/dom/media/hls/HLSDemuxer.cpp:89:5 r=backout on a CLOSED TREE
Backed out changeset 45352aa4319d (bug 1416724)
Backed out changeset 01d1e5263bcd (bug 1416724)
Backed out changeset bc854c315ec8 (bug 1416724)
Backed out changeset 35a50167485d (bug 1416724)
2017-11-15 09:49:04 +02:00
Andrea Marchesini 642cdd108b Bug 1416724 - part 3 - AbstractThread::Dispatch return value check in dom/media, r=jwwang 2017-11-15 07:58:03 +01:00
Andreas Pehrson ed6023658c Bug 1411322 - Call nsIMemoryReporterManager::EndReport after reporting. r=SingingTree
This is required now that the reporter is async.

MozReview-Commit-ID: djvw9v7kuj

--HG--
extra : rebase_source : d105f972eda0d59212b8094150762e44aa8c582d
2017-11-10 11:59:43 +01:00
Andreas Pehrson 306c663532 Bug 1411322 - Simplify MediaRecorderReporter. r=SingingTree
This is primarily to improve code readability of the reporter's lifetime.
Creation of the singleton was hidden away in GetRecorders().
Both creation and destruction is now more explicit in {Add|Remove}MediaRecorder.

MozReview-Commit-ID: CqxgPQ1JptK

--HG--
extra : rebase_source : 5af3052911cd346c7d1221baf653f0b046304ed0
2017-11-10 11:58:33 +01:00
Andreas Pehrson c097414d77 Bug 1413116 - Consolidate MediaRecorder::Session state and avoid "start" and "error" races. r=SingingTree
MozReview-Commit-ID: L5cj4DStnUt

--HG--
extra : rebase_source : 103a088100a9bdd57bd192ec40e37f44328b5f98
2017-10-31 18:34:23 +01:00
Andreas Pehrson 5d087cdcd7 Bug 1413116 - Handle errors from MutableBlobStorage::Append. r=baku,SingingTree
MozReview-Commit-ID: D2cxv0VFzWx

--HG--
extra : rebase_source : 9cb089a486fdd928b03069d214e9047870b2432d
2017-10-31 09:48:54 +01:00
Jonathan Watt 60fa0649f2 Bug 1406819 - Remove various bits of dead code from dom/. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D109
2017-10-11 10:09:13 +01:00
Andrea Marchesini 970f42c82a Bug 1403706 - Remove race conditions in temporary blob - part 2 - MediaRecorder should use MutableBlobStorage, r=pehrsons, r=smaug 2017-10-05 07:41:41 +02:00
Andrea Marchesini 728ee9036d Bug 1404326 - Fixing comments in MediaRecorder.cpp, r=padenot 2017-09-29 16:11:47 +02:00
Bryce Van Dyk 06435b3208 Bug 1400757 - Add telemetry to MediaRecorder and TrackEncoder to track basic usage. r=francois,pehrsons
Add telemetry to collect the following:
- Number of times a MediaRecorder is started during a session
- Duration of media recordings
- How often we're timing out init of audio and video track encoders

MozReview-Commit-ID: 9Pc2oKNCH1M

--HG--
extra : rebase_source : 16414a5ffa95413458d36295e5508df4c16e6fa9
2017-09-19 07:34:02 +12:00
Andreas Pehrson 97db817de8 Bug 1296531 - Don't wait for TracksAvailableCallback if tracks are already available. r=jesup
MozReview-Commit-ID: JQMyhhxaLLq

--HG--
extra : rebase_source : 1c23b170cc9fcf4dce1f7de8c2d4503e37a59ba8
2017-02-24 14:34:25 +01:00
Andreas Pehrson a2ba5f2311 Bug 1296531 - Break out TracksAvailableCallback logic to Session method. r=jesup
MozReview-Commit-ID: 9RupsdXKjwo

--HG--
extra : rebase_source : 3b8263124a5a6ac8942237b1ddaaf7bca7063641
2017-02-24 14:23:35 +01:00
Andreas Pehrson ca0438115d Bug 1296531 - Refactor MediaRecorder. r=jesup,SingingTree
The main purpose of this patch is to make the TrackEncoders run in a TaskQueue
to avoid multi-threaded access to members, and to change to track listeners to
allow for recording all kinds of tracks (the description of bug 1296531).

MozReview-Commit-ID: EtLXaDDBPdy

--HG--
extra : rebase_source : 5761bb2c7d5832f69cc80129e5160f173e8168c7
extra : source : 24b2a67ddf5a621a5cf58af5b9e363dac3071775
2017-05-24 18:51:47 +02:00
Andreas Pehrson 56e3e766b1 Bug 1296531 - Rip out direct stream listeners from MediaRecorder. r=jesup
MozReview-Commit-ID: CUAR85XvdUI

--HG--
extra : rebase_source : 77f3e6ef10ef3bc21a36032ee373f849184f33f6
extra : source : d02e3c80a7db8303f062704150a93dc977e5c9b5
2016-10-13 12:28:56 +02:00
Bryce Van Dyk 885710fcc9 Bug 1395022 - Fix MediaRecorder firing unnecessary start event when erroring. r=pehrsons
MozReview-Commit-ID: 6ULFqlEHaqx

--HG--
extra : rebase_source : 1179446840c81d7ef1bed90ce798bc7ec22e18a2
2017-09-04 08:28:01 +12:00
Bryce Van Dyk 9fec9bfac9 Bug 1388909 - Rework MediaRecorder to tranisition to inactive upon error. r=pehrsons
The MediaRecorder should transition to a 'inactive' state immediately upon
error. This changeset updates the recorder to do so. Previously the recorder
would fire an error event before transitioning, resuling in the state still
being 'recording' for handling of the the thrown error.

MozReview-Commit-ID: KMkaPOnEBYx

--HG--
extra : rebase_source : 4d05d46de775029d307ac2460700ce28c4e8321a
2017-09-01 11:38:52 +12:00
Andrew McCreight 78807d8776 Bug 1391005 - Eliminate NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED. r=peterv
Replace it with NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION, because it
has been the same for a while.

MozReview-Commit-ID: 5agRGFyUry1

--HG--
extra : rebase_source : 5388c56b2f6905c6ef969150f0c5b77bf247624d
2017-08-29 16:02:48 -07:00
Bryce Van Dyk df6a8a21ac Bug 1275856 - Capture MediaRecorder DOMExceptions early in order to capture JS traces. r=jib
In order to expose the JS stack on aync exceptions from the MediaRecorder,
these exceptions must be created at the time of the operation which led to the
exception. E.g. during the start() operation. This changeset creates the
exceptions ahead of time in order to expose the JS stack traces.

MozReview-Commit-ID: HgDJrpjgidD

--HG--
extra : rebase_source : 1d208a848308c819a209f4b5c33e3563e83b9518
2017-08-07 09:49:24 +12:00
Bryce Van Dyk 9878ae061e Bug 1275856 - Fire MediaRecorderErrorEvent in media recorder. r=jib
The MediaRecorder is current not behaving as per the spec in regards to async
errors. The spec states that in such a scenario a MediaRecorderErrorEvent which
wraps a DOMException should be fired. This changeset updates the recorder to do
so.

MozReview-Commit-ID: xt4ipCmbiu

--HG--
extra : rebase_source : 50124e6c878438a84c8a440bf79e50b3b7da3998
2017-08-07 09:48:42 +12:00
Masatoshi Kimura dec070e4cf Bug 1389460 - Remove @deprecated nsIDOMEventTarget.DispatchDOMEvent. r=smaug
MozReview-Commit-ID: E88DZK5sfwx

--HG--
extra : rebase_source : 64e1a47c9366a970f20ec459dde9b379a207e802
2017-08-07 02:28:52 +09:00
Sebastian Hengst b3269bec34 Backed out changeset 685802013f43 (bug 1389460) for OS X bustage at widget/cocoa/nsMenuX.mm:364: no member named 'DispatchDOMEvent' in 'nsIContent'. r=backout 2017-08-11 17:46:42 +02:00
Masatoshi Kimura 58d29db70b Bug 1389460 - Remove @deprecated nsIDOMEventTarget.DispatchDOMEvent. r=smaug
MozReview-Commit-ID: E88DZK5sfwx

--HG--
extra : rebase_source : 63300d87c0496394d3f75cb76bc47c75d640d369
2017-08-07 02:28:52 +09:00
Wes Kocher 47df5726ac Backed out 6 changesets (bug 1275856) for failures in test_interfaces.html and test_all_synthetic_events.html a=backout
Backed out changeset d229d269ac55 (bug 1275856)
Backed out changeset 2fb8d23f1ece (bug 1275856)
Backed out changeset 210e8d6d5f85 (bug 1275856)
Backed out changeset 38739c5a3ae8 (bug 1275856)
Backed out changeset 1c8e6dd99100 (bug 1275856)
Backed out changeset 407dc5f8de5b (bug 1275856)

MozReview-Commit-ID: CeTwTrzfY2P
2017-08-10 16:32:12 -07:00
Bryce Van Dyk 575792962a Bug 1275856 - Capture MediaRecorder DOMExceptions early in order to capture JS traces. r=jib
In order to expose the JS stack on aync exceptions from the MediaRecorder,
these exceptions must be created at the time of the operation which led to the
exception. E.g. during the start() operation. This changeset creates the
exceptions ahead of time in order to expose the JS stack traces.

MozReview-Commit-ID: HgDJrpjgidD

--HG--
extra : rebase_source : e7ad0b2a30ac2e7161d3805a22b3873a7382b43b
2017-08-07 09:49:24 +12:00
Bryce Van Dyk a9924d1aba Bug 1275856 - Fire MediaRecorderErrorEvent in media recorder. r=jib
The MediaRecorder is current not behaving as per the spec in regards to async
errors. The spec states that in such a scenario a MediaRecorderErrorEvent which
wraps a DOMException should be fired. This changeset updates the recorder to do
so.

MozReview-Commit-ID: xt4ipCmbiu

--HG--
extra : rebase_source : 50124e6c878438a84c8a440bf79e50b3b7da3998
2017-08-07 09:48:42 +12:00
Sylvestre Ledru 7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
Bryce Van Dyk 1b35f7626e Bug 1378826 - Remove direct track listeners for video tracks if MediaRecorder is notified of their removal. r=jesup
--HG--
extra : rebase_source : cdd2f7070fab1ad1491d272819e0be524d9583fd
2017-07-11 09:14:28 +12:00
Paul Adenot 404c800005 Bug 1341555 - Consolidate use of the MSG's AbstractMainThread, and stop having AbstractMainThread on MediaStreams. r=pehrsons
MozReview-Commit-ID: 5hGDQcfpH6a

--HG--
extra : rebase_source : 41bb678f37cfcdbc9912a25f45a5ca488084aabe
2017-06-29 11:30:57 -07:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Nicholas Nethercote 58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00