Commit Graph

6075 Commits

Author SHA1 Message Date
Carsten "Tomcat" Book
961e62610b Backed out 11 changesets (bug 1248861) for gtest test failures
Backed out changeset be02aaa8b2e8 (bug 1248861)
Backed out changeset 48718147d79e (bug 1248861)
Backed out changeset 904a19b9cdd0 (bug 1248861)
Backed out changeset b326f17035c1 (bug 1248861)
Backed out changeset ddff88a6db07 (bug 1248861)
Backed out changeset 0565edbead7f (bug 1248861)
Backed out changeset d71b93bc6cc7 (bug 1248861)
Backed out changeset 6e917e5d29c0 (bug 1248861)
Backed out changeset c17c2fde0e89 (bug 1248861)
Backed out changeset 56f769e95df2 (bug 1248861)
Backed out changeset cb8a49f92cba (bug 1248861)
2016-04-08 11:14:31 +02:00
Jean-Yves Avenard
24f0f28af4 Bug 1248861: P11. Fix current downmixer. r=rillian
Current downmixer was using vorbis channel order (which isn't surprising as it was extracted from the Ogg reader).
Make it use SMPTE order as that's now what all MediaDataDecoder output.

MozReview-Commit-ID: 5Kf7UnC52wL

--HG--
extra : rebase_source : b8499b8abbe2aa7a37acea19d3d33edc3d41e8a3
2016-04-06 14:52:49 +10:00
Jean-Yves Avenard
380ff74c54 Bug 1248861: P10. Ensure opus decoder channel layout is always in SMPTE order. r=rillian
MozReview-Commit-ID: BDZ25pXJQWa

--HG--
extra : rebase_source : 91ec05a13367fc4b06d7d23f4ca33f2591c5ae56
2016-04-05 23:35:31 +10:00
Jean-Yves Avenard
d96fc7fdbf Bug 1248861: P9. Use ChannelLayout::MappingTable. r=gerald
MozReview-Commit-ID: 63584qWSKrs

--HG--
extra : rebase_source : c041b4d62e349337a4d150da49837d76eca52f6c
2016-04-07 15:26:20 +10:00
Jean-Yves Avenard
afff9b1bd7 Bug 1248861: P8. Added ChannelLayout::MappingTable method. r=gerald
MozReview-Commit-ID: 5kRa08TpGTX

--HG--
extra : rebase_source : 619bd5d7155754f7d34f081f1b781272e870f75a
2016-04-07 15:11:59 +10:00
Jean-Yves Avenard
2c21c908c2 Bug 1248861: P7. Ensure vorbis decoder channel layout is always in SMPTE order. r=rillian
MozReview-Commit-ID: GAqnJbQuqQU

--HG--
extra : rebase_source : fdc8c4fb22c82d99049374af562ca5e045653377
2016-04-05 23:14:34 +10:00
Jean-Yves Avenard
c886e0ca13 Bug 1248861: P6. Ensure AT decoder channel layout is always in SMPTE order. r=rillian
MozReview-Commit-ID: 9XfzxdiQ3Zu

--HG--
extra : rebase_source : 054d2df73e754053d5e35ec798fc019c372f5850
2016-04-05 08:24:16 +10:00
Jean-Yves Avenard
2ff282d7a8 Bug 1248861: P5. Add AudioConverter class and relatives. r=cpearce
To be used in combination with AudioDataBuffer class that will be able to perform format conversion.
Can currently only perform channel re-ordering.

Future use will add downmixing, upmixing and resampling capabilities.

MozReview-Commit-ID: 2FBu9aRVtgj

--HG--
extra : rebase_source : c271d94e597b529bdad57aa8f18f0dd7b2cf71ec
2016-04-04 18:22:05 +10:00
Jean-Yves Avenard
ee88185e58 Bug 1248861: P4. Add AudioConfig and introduce channel layout definition. r=cpearce
Long term goal would be to merge AudioConfig with the existing AudioInfo class which doesn't provide sufficient data to properly determine how to play multichannel audio.

MozReview-Commit-ID: 3UDpZWPBUvS

--HG--
extra : rebase_source : 324c0f0c19d7faf1e1efecf6b1805dd7b5edd4a6
2016-04-06 10:20:42 +10:00
Jean-Yves Avenard
4f8567898f Bug 1248861: P3. Use AlignedAudioBuffer object with AudioData. r=cpearce
MozReview-Commit-ID: 7HiF4eHlRwB

--HG--
extra : rebase_source : e36fd4aa984d3e878f87b2f246669d8598fa9476
2016-04-03 23:09:45 +10:00
Jean-Yves Avenard
b4a39f0f07 Bug 1248861: P2. Use AlignedByteBuffer with MediaRawData. r=cpearce
MozReview-Commit-ID: BGzpFEAisvE

--HG--
extra : rebase_source : 8d533f04754fcee112b05a1f35b02b04c6404a7b
2016-04-03 21:05:23 +10:00
Jean-Yves Avenard
66e8803cdb Bug 1248861: P1. Add AlignedBuffer template class. r=cpearce
Along with AlignedByteBuffer and AlignedFloatBuffer

MozReview-Commit-ID: LmGc2JDBETi

--HG--
extra : rebase_source : d94b19c264e603f046c46f5d5335f9f2c3508c7f
2016-04-03 19:25:21 +10:00
Kaku Kuo
fef7021219 Bug 1261312 - Make sure that audio/video decode task is filed again. r=jwwang
The idea is that we can call Ensure{Audio/Video}DecodeTaskQueued() directly
since the conditions in the DispatchDecodeTasksIfNeeded() have already been
checked.

MozReview-Commit-ID: 9xataQiuSIx

--HG--
extra : transplant_source : %E4t%20%1FV%12%FE%08%9Cx%D7%0A%C3C%B0M%14%80%E4%85
2016-04-07 15:18:17 +08:00
Kilik Kuo
89ac1fb7b9 Bug 1256186 - Part 3: Remove the temporary solution which ignores MediaKeySystemStatus::Cdm_not_supported. r=jwwang
MozReview-Commit-ID: Jny48PqVFYR
2016-04-06 00:09:32 +08:00
Kilik Kuo
517dc21177 Bug 1256186 - Part 1: Show 'Enable EME' notification box only when MediaKeys requested for supported keysystem. r=jwwang
MozReview-Commit-ID: CxJbgzNKGJQ
2016-04-01 18:34:13 +08:00
Nils Ohlmeier [:drno]
4d0aaaafea Bug 1244926: added TCP socket filter to only allow outgoing STUN. r=jesup
MozReview-Commit-ID: 8PpL6Z0za71

--HG--
rename : media/mtransport/stun_udp_socket_filter.cpp => media/mtransport/stun_socket_filter.cpp
rename : media/mtransport/stun_udp_socket_filter.h => media/mtransport/stun_socket_filter.h
rename : netwerk/base/nsIUDPSocketFilter.idl => netwerk/base/nsISocketFilter.idl
extra : rebase_source : 2acf092e587a19a2019f463fa0a015373d3881d3
2016-02-11 01:18:46 -08:00
William Chen
303bd1fd42 Bug 1259590 - Remove B2G ACL code. r=khuey 2016-04-07 09:50:01 -07:00
Andreas Pehrson
faaa43e374 Bug 1208371 - Don't push frames as they come in to MediaEngine. r=jesup
That this caused problems is probably related to video not being supported for
direct track listeners. Frames could pile up under load and delay the MSG
since there were so many frames queued for processing.

With a direct listener the MediaPipeline processing would occur on the
MediaEngine's thread.

MozReview-Commit-ID: DjKblA7dMz9

--HG--
extra : rebase_source : 60bbc5f1add65f3cf5c2cfeadb915c79d33acc0a
extra : source : 6e6636eea735795dfcae9779ea8f71e8df9516ce
2016-03-08 12:13:22 +01:00
Andreas Pehrson
b40a807720 Bug 1208371 - Move GetCurrentTime undef to DOMMediaStream.cpp. r=jesup
Not sure why this surfaced now. Include ordering must have changed.

MozReview-Commit-ID: 43eGMdVoycw

--HG--
extra : rebase_source : 5013c1bb93060ea593bca96fe84f3418ea1aefa3
2016-01-22 17:23:10 +08:00
Andreas Pehrson
ee5913bb8b Bug 1208371 - Move MediaStreamTrack's label to MediaStreamTrackSource. r=jib
MozReview-Commit-ID: Aj7Cht4zxc6

--HG--
extra : rebase_source : c454a9f2b81a6a1eb574c1abee0fab64abbe5b72
2016-01-22 16:27:37 +08:00
Andreas Pehrson
e899edc733 Bug 1208371 - Ensure a media element's ImageContainer is protected when playing a stream. r=mt,jesup
HTMLMediaElement needs special protection when playing a stream since its
ImageContainer can outlive the video track of a stream.

Consider for instance when a (cross-origin) video track is removed from a
DOMMediaStream by a user and the remaining video track (non-CORS) does not yet
contain any actual video frames. The HTMLMediaElement will display a frame from
the removed track but the DOMMediaStream's principal has been updated to not
include the principal from the removed track.

With this patch we handle this by letting VideoFrameContainer notify
HTMLMediaElement when it has flushed out all video frames belonging to a
certain PrincipalHandle. I.e., when a new PrincipalHandle has been applied to the
underlying ImageContainer.

MozReview-Commit-ID: LvIZPl6Rdgj

--HG--
extra : rebase_source : cfbad5e5e7f43af4da4bfc213494b7b8e22cde17
2016-02-04 09:27:09 +08:00
Andreas Pehrson
6862394047 Bug 1208371 - Ensure DOMMediaStream principals reflect what could reside in their playback streams. r=mt,jesup
Calculating a principal when adding a track is easy - just combine the new
track principal into the stream's principal.

When removing a track it's a bit trickier. The DOMMediaStream has to wait until
the MediaStreamGraph has removed the track from the underlying playback stream.

We do this by letting the MediaStreamGraph return a Pledge (single threaded
Promise) when blocking a track in a stream (the way we end removed tracks).
The pledge gets passed to the MediaStreamGraph and when the block has been
applied it is passed back to the main thread where it is finally resolved
and the DOMMediaStream may recompute its principal once all outstanding
track removals have been applied.

MozReview-Commit-ID: 3QP0YcDyfGf

--HG--
extra : rebase_source : 6642849ec1c7d774467395dee82b0a37fdd33a99
2016-03-16 16:00:34 +01:00
Andreas Pehrson
b631e13d54 Bug 1208371 - Hook up MediaPipeline with PrincipalHandle. r=mt,bwc
MozReview-Commit-ID: DLyLZu7kC3p

--HG--
extra : rebase_source : 839de544b55fb98e610fec04d45551249d1af57b
2016-03-03 17:30:39 +01:00
Andreas Pehrson
e1b8d01dd1 Bug 1208371 - Hook up DecodedStream with PrincipalHandle. r=mt,jwwang
MozReview-Commit-ID: 1LmiFyfjhsr

--HG--
extra : rebase_source : e1ceca65cd1f5ff64ab6fff8fafc1ddd08f44b87
2016-02-02 13:14:13 +08:00
Andreas Pehrson
ddd2ef4974 Bug 1208371 - Add a PrincipalHandleListener to MediaStreamTrack. r=mt,jesup
MozReview-Commit-ID: JvhXrlKPZAC

--HG--
extra : rebase_source : 617c64c0898fc78216621744b816ed319e66c95b
2016-03-15 10:52:25 +01:00
Andreas Pehrson
15e9109891 Bug 1208371 - Add NotifyPrincipalHandleChanged to MediaStreamTrackListener. r=mt,jesup
MozReview-Commit-ID: Hq0XtqIiMAO

--HG--
extra : rebase_source : 3483bff525ba50bc45f409463e7eb49056adbdf4
2016-01-26 16:45:25 +08:00
Andreas Pehrson
be74876e25 Bug 1208371 - Add PrincipalHandle to MediaChunks. r=mt,jesup
PrincipalHandle is a thread safe pointer to a holder of (the main-thread-only
nsIPrincipal) that can be passed around the MSG.

A MediaStreamTrack whose source has just updated its principal, sets the new
principal aside (as its "pending principal"), and combines the new principal
into its current principal.

Then the source starts passing the new principal to the MediaStreamGraph as
a PrincipalHandle.

Changes to a track's PrincipalHandle on the MSG will be surfaced through the
MediaStreamTrackListener API. These changes are dispatched to main thread
and compared to a MediaStreamTrack's pending principal. In case of a match
the track knows the correct principal is flowing and can move the pending
principal to be the current principal and update any main thread principal
observers.

MozReview-Commit-ID: D0JXGWhQFFU

--HG--
extra : rebase_source : 296e269bb46fc5a85a9c3f90dfc0dc40e53572bc
2016-04-06 14:56:44 +02:00
Andreas Pehrson
849f97a6f3 Bug 1208371 - Move FindTrack from SourceMediaStream to MediaStream. r=roc
MozReview-Commit-ID: 2BzGdGdbpy0

--HG--
extra : rebase_source : f011fe75b86e0db80443f0042866678d438d6d63
2016-01-21 19:25:25 +08:00
Andreas Pehrson
312d19a45e Bug 1208371 - Improve reliability of test_mediarecorder_record_timeslice.html. r=jwwang
MozReview-Commit-ID: HFstfYnRyJP

--HG--
extra : rebase_source : 80ed79a6f1e1a1e6eafb3426ef16e1739b353245
2016-01-06 11:56:27 +08:00
Andreas Pehrson
f33e7b4b07 Bug 1208371 - Wait for "loadedmetadata" before setting up nodes in test_mediaElementAudioSourceNodeCrossOrigin.html. r=padenot
MozReview-Commit-ID: HruqsknDHi7

--HG--
extra : rebase_source : bf83b46e1f5f46f777490163a6a6ee34190b38bb
2016-01-05 11:17:16 +08:00
Andreas Pehrson
79cdda9e6f Bug 1208371 - Guard LoadManagerSingleton with a WeakPtr. r=pkerr
LoadManagerSingleton has a separate shutdown path (xpcom-shutdown) from
its users (Audio/VideoConduit - garbage collected). These have appeared
racy, so in some cases the singleton was destructed before the users had
deregistered (e.g., when conduits destructed by SnowWhiteKiller).

A WeakPtr can solve this.

MozReview-Commit-ID: AVrpd3QqOGx

--HG--
extra : rebase_source : c5d50f7619940b772c7d1f3dee3ac0b6568ccfd9
2016-01-05 10:16:32 +08:00
Andreas Pehrson
903e51a6f9 Bug 1208371 - Add disconnect method to test helper AudioStreamAnalyser to improve performance on slow devices. r=padenot
MozReview-Commit-ID: 4MYF004uK8R

--HG--
extra : rebase_source : 81e0c72d2f93ccea9b809f82d33fb57c77fae4d6
2016-01-05 10:16:32 +08:00
Andreas Pehrson
624e5fccac Bug 1208371 - Remove debug canvas from mediaStreamConstructors test to help android perf. r=padenot
MozReview-Commit-ID: 62lDtTvZ5g2

--HG--
extra : rebase_source : a425ee6ec4c4ef1d5cf592d9b2e21982e032c845
2016-01-05 10:16:32 +08:00
Andreas Pehrson
c1914c0d6d Bug 1208371 - Enable test_peerConnection_trackDisabling.html on android 4.3 debug. r=jib
Disabling the audio analyser debug canvas gave us enough perf to enable
the test reliably here.

MozReview-Commit-ID: AGEfsD4pyME

--HG--
extra : rebase_source : 2d379717028d748eb8f6e72bffbc8b20e3ec10b8
2016-01-05 10:16:32 +08:00
Andreas Pehrson
673d56f32b Bug 1208371 - Remove debug canvas from peerConnection_trackDisabling test to help android perf. r=padenot
MozReview-Commit-ID: 7EWJ5GaO6fK

--HG--
extra : rebase_source : e91581c660ddc59818f2c1b2bec09ffd9ed8a078
2016-01-05 10:16:31 +08:00
Andreas Pehrson
2744851e14 Bug 1208371 - Remove debug canvas from addTrackRemoveTrack test to help android perf. r=padenot
MozReview-Commit-ID: Ejyvk1Vc66k

--HG--
extra : rebase_source : 30f0a74747246d68dabbc08791c2835f6581e772
2016-01-05 10:16:31 +08:00
Andreas Pehrson
a1425ed881 Bug 1208371 - Remove unnecessary fakeTracks:true from test_streams_individual_pause.html. r=jib
MozReview-Commit-ID: BAnCqWqVEOA

--HG--
extra : rebase_source : edd553f20d36f6641335bc2cfa331fcd637dccb0
2016-01-05 10:16:31 +08:00
Andreas Pehrson
ef44cb89cc Bug 1208371 - Add a track getter to gUM for fake tracks. r=jib
MozReview-Commit-ID: 8kc4ehGFBX7

--HG--
extra : rebase_source : 3903fcc108a9f76e26013a6e2888591ccdd66488
2016-04-06 14:47:43 +02:00
Andreas Pehrson
2b29e6e205 Bug 1208371 - Do not require DOMLocalMediaStream for gUM (audioCapture). r=jib
MozReview-Commit-ID: K5rMQSZ11HF

--HG--
extra : rebase_source : 98191bbe2b912afa7ab2a14c481ece7b607558fd
2016-01-05 10:16:31 +08:00
Andreas Pehrson
37bfed3d74 Bug 1208371 - Make GraphDriver callback log calls verbose. r=padenot
MozReview-Commit-ID: 33ZZXInHhhx

--HG--
extra : rebase_source : 282bf08a647e13b49c22cfe86a44b10c8bb99a4d
2016-01-05 10:16:31 +08:00
Andreas Pehrson
98e14c64c2 Bug 1208371 - Switch MediaStreamTrack to enable/disable tracks on owned stream. r=jesup
MozReview-Commit-ID: DY7Du6vRBqT

--HG--
extra : rebase_source : 62dc3ee489096fa8c70ae920526ecb641f73917b
2016-01-05 10:16:30 +08:00
Andreas Pehrson
f1662d16c9 Bug 1208371 - Switch MediaPipeline to use direct listeners on tracks. r=jesup,bwc
MozReview-Commit-ID: BSSfkTwXoVN

--HG--
extra : rebase_source : 8f001d4513062bb426f0a18670a3692ecf737a52
2016-03-18 14:21:51 +01:00
Andreas Pehrson
77ac51c2c4 Bug 1208371 - Add DirectTrackLister to MediaStreamGraph and MediaStreamTrack. r=roc,jesup
MozReview-Commit-ID: HRWa6A35FSC

--HG--
extra : rebase_source : 85f2507cc91c62105eda6568b5a40edd604d5af8
2016-03-03 17:28:37 +01:00
Andreas Pehrson
7faae46433 Bug 1208371 - Test disabling track across peerconnection not affecting clones. r=jib
MozReview-Commit-ID: 2uD85M92eJU

--HG--
extra : rebase_source : fdb44eecea0c6d6c0c630007916a6db61c38f520
2016-01-05 10:16:30 +08:00
Andreas Pehrson
65dc16a300 Bug 1208371 - Simplify track disabling test code. r=jib
MozReview-Commit-ID: 1xMIosdYTW4

--HG--
extra : rebase_source : 21593a6c08128e90e2983b08a6a6470af97121de
2016-01-05 10:16:30 +08:00
Andreas Pehrson
f17fbe75df Bug 1208371 - Check principal per track instead of per stream in MediaRecorder. r=roc
MozReview-Commit-ID: ItwZ4tzhsIC

--HG--
extra : rebase_source : 2a1f22e5fa225b7a13d7f46e30f5aaa86c1724e1
2016-02-01 22:47:17 +08:00
Andreas Pehrson
96f7ea87c0 Bug 1208371 - Inline MediaRecorder::Session::SetupStreams. r=roc
MozReview-Commit-ID: ACKQxiJnlRg

--HG--
extra : rebase_source : 552025a59d849406f501bdf4bf0628c42ef9cd9c
2016-01-05 10:16:29 +08:00
Andreas Pehrson
1869a91632 Bug 1208371 - Remove test_mediarecorder_record_nosrc.html. r=roc
It does not leak anymore, and the exception from bug 919051 is not
in the spec.

MozReview-Commit-ID: Kw6OpaJllyR

--HG--
extra : rebase_source : 6d7294a53c9e02af2085cb86d67530cf4cf20ab0
2016-01-05 10:16:29 +08:00
Andreas Pehrson
cf7486e258 Bug 1208371 - Add convenience method for checking track forwarding to MediaStreamTrack. r=roc
MozReview-Commit-ID: 2rhLzZi72Yh

--HG--
extra : rebase_source : 0283f89a181c2030fd071c77fa2301b3a6027803
2016-01-05 10:16:29 +08:00
Andreas Pehrson
0b6623e60e Bug 1208371 - Remove PeerIdentity from DOMMediaStream. r=mt
MozReview-Commit-ID: 5e4TxCiWwGF

--HG--
extra : rebase_source : 7ee47cf4e606cb2d90b0bbb8237d8155bc96d2ee
2016-01-05 10:16:29 +08:00