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

4746 Коммитов

Автор SHA1 Сообщение Дата
Jean-Yves Avenard fc715601b9 Bug 1209410: [mp3] P3. Implement canPlayType for new MP3Decoder. r=kentuckyfriedtakahe 2015-10-02 18:44:33 +10:00
Jean-Yves Avenard a9855a3bd6 Bug 1209410: [webm] P2. Never use gstreamer to decode webm. r=kentuckyfriedtakahe 2015-10-02 18:44:32 +10:00
Jean-Yves Avenard f21d3b8aa3 Bug 1209410: [mp3] P1. Use new MP3Demuxer when possible. r=cpearce 2015-10-02 18:44:32 +10:00
Jan-Ivar Bruaroey 02c80b8fd0 Bug 1207784 - skip permission hooks in createOffer when called from privileged code (add-ons). r=mt
--HG--
extra : transplant_source : %D0%169%0B%99%17%B1%8F%D2%B1%A8%B0%E7%B8%ED%5E%60vxE
2015-10-01 15:49:01 -04:00
Karl Tomlinson 31f93552de bug 1210266 unfriend AudioBufferSourceNode from AudioNode r=padenot
--HG--
extra : rebase_source : 8476dc3499835906378c910f879be7a2652fea81
2015-10-01 00:19:10 +13:00
Karl Tomlinson 8e20d26e10 bug 1210266 remove unused AudioNode::Callback() r=padenot
--HG--
extra : rebase_source : dd0e1f311982fb90852f8cb48f3e4517bf5fa8ce
2015-10-01 00:17:32 +13:00
Karl Tomlinson 2733a284c9 bug 1210266 remove unused AudioParam::Node() r=padenot
--HG--
extra : rebase_source : 095ffee90f8055792842f371712117ea1fcf92b9
2015-09-18 12:16:38 +12:00
Karl Tomlinson 4799b667a3 bug 1210266 use parameter index instead of node callback for sending timeline events r=padenot
--HG--
extra : rebase_source : 27a8ac26a83788c057a225fca47c49af1a021401
2015-10-01 15:48:20 +13:00
Karl Tomlinson 8d75533f8d bug 1210280 use nullptr for silent channels in UpMixDownMixChunk r=padenot
so that AccumulateInputChunk can optimize for silent channels.

--HG--
extra : rebase_source : 43228733d8586f16bab00737ffb381fbd8127fd3
2015-09-05 11:01:54 +12:00
Jean-Yves Avenard 3c833c2162 Bug 1194080: [mp3] Implement MP3TrackDemuxer::GetBuffered(). r=esawin
This is done by roughly estimated the duration of the MediaResource buffered range from the average bitrate.
2015-10-02 12:41:06 +10:00
Jean-Yves Avenard 759f764945 Bug 1207924: [mp3] P1. Fix MP3 decoding with early version of LibAV. r=esawin
LibAV 0.8 incorrectly set the pts as dts ; so we must set the dts to ensure not all frames have a time of 0.
2015-10-02 12:41:05 +10:00
Jean-Yves Avenard 877ef122ef Bug 1209850: Only attempt to initialize decoders as they are required. r=alfredo 2015-10-01 23:05:16 +10:00
Carsten "Tomcat" Book 3a44702ffb Backed out 1 changesets (bug 1209850) for causing m2 test failures
Backed out changeset 9c01e0e3da74 (bug 1209850)
2015-10-01 14:05:49 +02:00
Jean-Yves Avenard 822bab3238 Bug 1159171: [MSE] P4. Changing waiting time value. r=edwin.
When ffmpeg is enabled, it will use the FFmpeg's VPX decoder. FFmpeg appears to always buffer 15 frames before returning one (this is the same with h264) causing the waiting event to be fired much earlier than when using libvpx
2015-10-01 19:40:21 +10:00
JW Wang e7914a68b6 Bug 1159171 - Enable ffmpeg on Linux platforms for media mochitests. r=jya 2015-10-01 19:40:20 +10:00
Jean-Yves Avenard bf482d2ca8 Bug 1207442: Disable ffvpx with libav0.8 and earlier. r=edwin 2015-10-01 19:40:20 +10:00
JW Wang 2f38e6f128 Bug 1209887. Part 3 - remove unused code. r=jya. 2015-10-01 17:21:57 +08:00
JW Wang 1e5ddfde5c Bug 1209887. Part 2 - remove usage of decoder monitor. r=jya. 2015-10-01 17:21:56 +08:00
JW Wang 88f2b7fbdf Bug 1209887. Part 1 - add assertions. r=jya. 2015-09-30 06:55:20 +08:00
Jean-Yves Avenard 3785990cb1 Bug 1209850: Only attempt to initialize decoders as they are required. r=alfredo 2015-10-01 19:07:39 +10:00
Jean-Yves Avenard 6807956b60 Bug 1207312: P2. Amend gtest. r=bholley 2015-10-01 19:07:37 +10:00
Jean-Yves Avenard e86d2aa8a5 Bug 1209806: P2. Initialize PDM before attempting to use it. r=gerald 2015-10-01 19:05:48 +10:00
Jean-Yves Avenard e00a89455b Bug 1209806: Remove dependency on libavformat. r=edwin 2015-10-01 19:05:47 +10:00
Paul Adenot 5467473807 Bug 1209904 - Optimize OscillatorNode when its frequency is not changin and it's using ::ComputeCustom. r=karlt 2015-10-01 10:52:28 +02:00
Nigel Babu 906147b670 Backed out changeset 04430cc26dba (bug 1180940) for Mulet Gij(4) bustage again.
--HG--
extra : amend_source : 3a0164d64d841349526acd11223cd88501a996f5
2015-10-01 13:53:14 +05:30
sajitk 43d9468d87 Bug 1180940 - Changed return type of AudioDestinationNode::CreateAudioChannelAgent method to return errors, if any methods that it calls fail. Added code to handle the return value in AudioContext::Init(), and its callers. r=baku 2015-09-30 17:51:00 +02:00
JW Wang f56fdd4173 Bug 1209886 - Clean up InstantiateDecoder() in DecoderTraits.cpp. r=kinetik. 2015-09-30 06:55:20 +08:00
Sotaro Ikeda 739eddd54e Bug 1186813 - Replace nsBaseHashtable::EnumerateRead() calls in dom/media/ with iterators r=cpearce 2015-09-30 06:40:54 -07:00
JW Wang fd23a5e794 Bug 1208933 - Remove AbstractMediaDecoder::NotifyWaitingForResourcesStatusChanged(). r=jya. 2015-09-27 21:02:18 +08:00
JW Wang 0bb44154c7 Bug 1208932 - Remove ReadMetadataFailureReason::WAITING_FOR_RESOURCES. r=jya. 2015-09-27 20:48:09 +08:00
Andreas Pehrson 9914ff85f8 Bug 1103188 - Keep track of stopped tracks in gUM stream listener. r=jib
This is needed to avoid something like:
* [old stream] stop track 1 -> deallocate MediaDevice for track 1
* [new stream] gUM() -> allocate MediaDevice for track 1
* [old stream] stop stream -> deallocate MediaDevice for track 1
* [new stream] gUM() -> start MediaDevice for track 1 (oops, MediaDevice was no more!)

--HG--
extra : commitid : FmkFYbCfel7
extra : rebase_source : e17ad400705198c48e3d561241dd50d0844c472e
2015-09-30 14:08:33 +08:00
Andreas Pehrson 6f60cbc89d Bug 1103188 - Keep track of capture stop only in gUM stream listener. r=jib
--HG--
extra : commitid : AqIOlsR7w1y
extra : rebase_source : 6f5670be3bf711a38eb9f914dc69c5b987dd9b9e
2015-09-30 14:08:26 +08:00
Andreas Pehrson aaef4911a9 Bug 1103188 - Always call MediaManager::NotifyFinished/NotifyRemoved on main thread. r=jib
--HG--
extra : commitid : 8kb5G98FAY9
extra : rebase_source : 97086507d1c546f9423f4d2f790924c21ccfa28a
2015-09-30 14:08:22 +08:00
Andreas Pehrson f5d99891ad Bug 1103188 - Always check tracks on getUserMedia(). r=jib
--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : 9820d09e7152de7c59a0aa81dde715dfa21fed18
2015-09-30 09:32:06 +08:00
Andreas Pehrson f8854279f0 Bug 1103188 - MediaStream::AddTrack/RemoveTrack tests. r=jib,roc
--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : 5f0de2f5babfd762ec81ecaf2cf060f93d616326
2015-09-30 09:32:06 +08:00
Andreas Pehrson eb480b5acd Bug 1103188 - Break out MediaTrackListListener to an interface. r=roc
Other modules than MediaTrackLists may want to receive updates on a
DOMMediaStream's track set. This moves the MediaTrackListListener out of
the MediaTrackList class into DOMMediaStream as a general interface.

The logic for adding MediaTracks to the MediaTrackList when
MediaStreamTracks are added or removed from a DOMMediaStream is moved to
HTMLMediaElement as this fits the model better - HTMLMediaElement is the
owner of the MediaTrackLists.

--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : 66b8ffcfb5343811c181e4169f295b08494f2ee0
2015-09-30 09:32:06 +08:00
Andreas Pehrson 0239788481 Bug 1103188 - Deprecate DOMMediaStream::Stop(). r=jib
--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : cc7351a34694b7b0e822bcd0b7025ded0ab54b9d
2015-09-30 09:32:06 +08:00
Andreas Pehrson ce2776ea0d Bug 1103188 - Remove identical override nsDOMUserMediaStream::Stop(). r=jib
--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : 2e37a21b1789bf4ab893c6fb8b2dd2c75f613855
2015-09-30 09:32:05 +08:00
Andreas Pehrson aa989a17b6 Bug 1103188 - MediaStream::AddTrack/RemoveTrack implementation. r=roc
--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : 7c8a9d50e5dbb672c773faa3675fe674aed9fb67
2015-09-30 09:32:05 +08:00
Andreas Pehrson bf0d10f4e7 Bug 1103188 - MediaStream WebIDL update with addTrack/removeTrack. r=smaug,jib
--HG--
extra : commitid : 3I8mAeBB3oL
extra : rebase_source : 030f83f3a79a7f4cb938cb509983f87a5a557aab
2015-09-30 09:32:05 +08:00
Andreas Pehrson f7821ba184 Bug 1170958 - Destroy track-locked MediaInputPorts when the track ends. r=roc
This is needed to make tests pass until we have bug 1208316 implemented.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : b7cb9cb1678a582fbf85b729b8f43508889f5c78
2015-09-30 09:31:54 +08:00
Andreas Pehrson 867415c0b5 Bug 1170958 - Remove ProcessedMediaStream::ForwardTrackEnabled. r=roc,jesup
TrackUnionStream guarantees that TrackIDs are maintained if no tracks
have claimed them before.

In the gUM case, we have a SourceMediaStream which we wholly own (the
DOMMediaStream's Input stream), piped into a TrackUnionStream which
no-one external is able to add tracks to (the DOMMediaStream's Owned
stream) - addTrack()ed tracks are added to the DOMMediaStream's Playback
stream.

The MediaStreamTracks being enabled/disable refer to a TrackID in the
DOMMediaStream's Owned stream.

Alas, we don't need to forward a track's enabled state, we can just do
it on the source.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 4388211be87ebe8a3839ea031b5c504d642806ab
2015-09-30 09:31:54 +08:00
Andreas Pehrson 0a75ffee8d Bug 1170958 - Add DOMMediaStream::OwnedStreamListener. r=roc
A DOMMediaStream's owned stream is piped from the input stream which is
under the control of the DOMMediaStream's owner/producer (like
captureStream or gUM). When producers like these create new tracks after
the stream has already been created (the initial set should be available
to JS synchronously), it is nice if the DOMMediaStream picks them up
automatically and create the corresponding MediaStreamTracks.

The OwnedStreamListener added here does just that; creates an owned
MediaStreamTrack when a track appeared in the stream that didn't already
have a MediaStreamTrack.

It also moves the logic for ended tracks from the PlaybackStreamListener
to the OwnedStreamListener as we previously would see a track end in the
playbak stream after removeTrack() and that would be interpreted as the
track ending at the source.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : ee7d81282ee3fe0e05b55358dee8fc97a22473fe
2015-09-30 09:31:54 +08:00
Andreas Pehrson 5b79fead9f Bug 1170958 - Improve logging of MediaStreams and playback. r=roc
--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 7463915dc8f14e6f9dde2e934e55b9c68d4148d6
2015-09-30 09:31:54 +08:00
Andreas Pehrson 9ecf8f59c7 Bug 1170958 - Feed a SourceMediaStream-backed dom stream instead of a raw SourceMediaStream in MediaManager. r=jesup
Simplifies the structure of MediaManager somewhat. Possible since
MediaManager owns both the SourceMediaStream and the DOMMediaStream.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 494b8b673084ea050420dfaf8d16e44a3bc49672
2015-09-30 09:31:54 +08:00
Andreas Pehrson 937747498a Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : fba22e96c6c65a74e012509f3da67a4d7df7a244
2015-09-30 09:31:54 +08:00
Andreas Pehrson 53a6c38d0d Bug 1170958 - Allow MediaInputPort to lock to a specific input track. r=roc
Locking to specific tracks lets us dynamically remove and add single
tracks to a ProcessedMediaStream.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 0b1b79077f95bbefc8c71de551c5e3483a7d6ac0
2015-09-30 09:31:53 +08:00
Andreas Pehrson 2802ee3e88 Bug 1170958 - Add input stream and track as args to NotifyQueuedTrackChanges. r=roc
This allows for tracking the input track of an added track (for
ProcessedMediaStream tracks; SourceMediaStream tracks don't have input
tracks) directly in the NotifyQueuedTrackChanges handler, which will be
necessary for locking MediaInputPorts to specific tracks.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 4bed5dffe66b71b7ad23f4c02531d84af25cd316
2015-09-30 09:31:53 +08:00
Martin Thomson afdaddf1d7 Bug 1155923 - Removing moz prefix from RTC interfaces, r=jesup,smaug
--HG--
extra : transplant_source : %0Adu%1E%A6j%9E%C2B%25%ECruo%F7%7Fc%EA%99%18
2015-09-28 11:25:04 -07:00
Jean-Yves Avenard dacd5751f3 Bug 1208953: [mp3] Don't parse data we've already parsed. r=cpearce
NotifyDataArrived may be called again due to reads performed in NotifyDataArrived ; causing stall and serious slowdowns.
2015-09-30 16:07:56 +10:00
Mantaroh Yoshinaga df06088026 Bug 1180589 part 3 - Rename shadowed variable name; r=bholley 2015-09-30 14:32:32 +09:00
JW Wang 93c354616a Bug 1208931 - Remove MediaDecoderReader::IsWaitingMediaResources(). r=jya. 2015-09-27 20:38:43 +08:00
JW Wang 92100b0074 Bug 1208930 - Remove usage of decoder monitor from MediaDecoder. r=jya. 2015-09-27 20:12:14 +08:00
JW Wang 7651430ef0 Bug 1208922. Part 6 - IsWaitingOnCDMResource() is not used by MDSM anymore. Remove it from MediaDecoderReader and make it private in MediaFormatReader. r=cpearce. 2015-09-27 18:59:52 +08:00
JW Wang 6b35bad359 Bug 1208922. Part 5 - MDSM can now query capabilities from CDMProxy without reader setting them in MediaInfo. r=cpearce. 2015-09-27 18:59:50 +08:00
JW Wang 489900ad10 Bug 1208922. Part 4 - remove AbstractMediaDecoder::GetCDMProxy() and devirtualize MediaDecoder::SetCDMProxy(). r=cpearce. 2015-09-27 18:59:08 +08:00
JW Wang 395e17fb4f Bug 1208922. Part 3 - forward the CDMProxy from MediaDecoder to MediaDecoderReader via MDSM. r=cpearce. 2015-09-27 18:48:59 +08:00
JW Wang b502b0fe56 Bug 1208922. Part 2 - add MediaDecoderReader::SetCDMProxy so it won't need to ask MediaDecoder for a CDMProxy. r=cpearce. 2015-09-27 18:40:03 +08:00
JW Wang 401634bd83 Bug 1208922. Part 1 - add MediaDecoder::RequestCDMProxy() which resolves when a CDMProxy is set and capabilities are known. The client code won't need to handle the situation where a CDMProxy is set but capabilities are still unknown. This simplifies the client code a lot. r=cpearce. 2015-09-27 18:39:37 +08:00
JW Wang 5eb5527e50 Bug 1188643. Buffer more audio in audio capture mode to avoid glitches. r=cpearce. 2015-09-30 10:32:49 +08:00
Karl Tomlinson 23b10a8cba bug 1205558 remove DelayNodeEngine::mSource r=padenot
--HG--
extra : rebase_source : 2bc303e258a0d00ff3cf03ac3cb649046c05c0fb
2015-09-29 14:39:28 +13:00
Karl Tomlinson cc26ca0fff bug 1205558 remove unnecessary ScriptProcessorNodeEngine::mSource r=padenot
--HG--
extra : rebase_source : 11eb2a10320e4e8028266730f3208f2b8cbc314f
2015-09-29 14:30:40 +13:00
Karl Tomlinson 56758d35f3 bug 1205558 remove unused AudioNodeStream* aSource parameter r=padenot
--HG--
extra : rebase_source : 23fb5cfaa0fa3bc117183bb122bbdf032957637b
2015-09-22 17:11:52 +12:00
Karl Tomlinson 24b8c43a95 bug 1205558 use destination stream for audio node engine time r=padenot
--HG--
extra : rebase_source : 19fa80f48fac673c13345002cd8e01d1b7a5ed3d
2015-09-22 16:34:45 +12:00
Karl Tomlinson 75183c57ba bug 1205558 introduce SecondsToNearestStreamTime r=padenot
--HG--
extra : rebase_source : 4a0cce9e1c89ee08d7b1d09babeda861380f1ff2
2015-09-18 15:42:00 +12:00
Karl Tomlinson 884c5a6d1f bug 1209286 remove now unnecessary StreamTimeToDOMTime and DOMTimeToStreamTime r=padenot
--HG--
extra : rebase_source : 7da869260707220259ef804f4b3cc6237a3d5843
2015-09-29 10:46:43 +13:00
Karl Tomlinson 22f0305b78 bug 1208318 ensure that currentTime has advanced sufficiently to easily detect failure r=padenot
--HG--
extra : rebase_source : 7ebf94ac10edb5b4ebd8b76e98e8a3821578ce04
2015-09-29 13:39:24 +13:00
Karl Tomlinson 5b32edea6d bug 1208318 modify test to avoid assuming different clocks are synchronized r=padenot
--HG--
extra : rebase_source : 31ecead7358bdb7b511d5efd802f479af46aef42
2015-09-25 13:05:03 +12:00
Chris Pearce cc458e7e9d Bug 1209385 - Add pref to disable crashing hung GMPs. r=jwwang 2015-09-30 06:56:20 +13:00
Chris Pearce a76b46867d Bug 1209385 - Crash GMPs that don't respond to GMPVideoDecoder::Reset(). r=jwwang 2015-09-30 06:56:07 +13:00
Eitan Isaacson 0d0b280146 Bug 1003464 - Support Web Speech API synthesis via speech-dispatcher. r=kdavis 2015-09-29 11:17:40 -04:00
Joel Maher 5d6ef8e355 Bug 1179826 - re-enable test_ipc.html for dom/media. r=padenot 2015-09-29 09:04:06 -04:00
Carsten "Tomcat" Book 57c4378df9 Merge mozilla-central to mozilla-inbound 2015-09-29 12:40:18 +02:00
Carsten "Tomcat" Book b63d7b04fc merge mozilla-inbound to mozilla-central a=merge 2015-09-29 12:00:25 +02:00
Wes Kocher e03ead4753 Merge m-c to b2ginbound, a=merge 2015-09-28 16:32:01 -07:00
Tim Chien c251097169 Bug 1160923 - [B2G] Waiting for explicit mozContentEvent before sending out mozChromeEvents, r=vingtetun, f=ochaumeau 2015-09-28 09:27:49 -07:00
Nigel Babu b8f64f3b1e Backed out changeset 967c555a595c (bug 1208289) for B2G build bustage 2015-09-28 12:22:43 +05:30
Nigel Babu 4013fbd739 Backed out changeset efcfe0c08c24 (bug 1208289) for B2G build bustage 2015-09-28 12:22:34 +05:30
Chris Pearce faefcaba27 Bug 1208289 - Log outstanding frames in GMP DrainComplete() and detect dropped ResetComplete. r=jwwang
* * *
Bug 1208289 - Yet another bustage fix. r=bustage
2015-09-28 17:57:10 +13:00
Chris Pearce 8493a808b6 Bug 1208289 - Add SimpleTimer to make setting timeouts in C++ easy. r=jwwang 2015-09-28 17:57:10 +13:00
Chris Pearce 0f328b5200 Bug 1208348 - Check whether DirectShow can decode MP3 before assuming it will work. r=jya 2015-09-28 17:57:10 +13:00
Chris Pearce 947b4b02c2 Bug 1208348 - Backout 9f73b03732fc 2015-09-28 17:11:24 +13:00
Chris Pearce e30c6e5fa9 Bug 1208289 - Backout. r=backout 2015-09-28 15:37:18 +13:00
Chris Pearce 771aa6c979 Bug 1208289 - Yet another-another bustage fix. r=bustage 2015-09-28 15:16:13 +13:00
Chris Pearce 3b2e225a56 Bug 1208289 - Yet another bustage fix. r=bustage 2015-09-28 14:26:44 +13:00
Chris Pearce 593512f49b Bug 1208289 - Bustage fix. r=bustage 2015-09-28 14:21:21 +13:00
Chris Pearce 8ded475d58 Bug 1208289 - Log outstanding frames in GMP DrainComplete() and detect dropped ResetComplete. r=jwwang 2015-09-28 14:03:21 +13:00
Chris Pearce 4e35212ee5 Bug 1208289 - Add SimpleTimer to make setting timeouts in C++ easy. r=jwwang 2015-09-28 14:03:15 +13:00
Chris Pearce 25a4f614a7 Bug 1208348 - Check whether DirectShow can decode MP3 before assuming it will work. r=jya 2015-09-28 14:03:04 +13:00
Jean-Yves Avenard 57037c7820 Bug 1208917: Fix VP9 decoding with recent version of libav. r=kentuckyfriedtakahe
Recent libav do not require a codec parser to decode VP9.
2015-09-28 10:30:03 +10:00
JW Wang 74504dc15a Bug 1207915 - Apply the fix of bug 1052206 to DecodedStream. r=roc. 2015-09-28 05:46:47 +08:00
Ehsan Akhgari ad3a3c6527 Bug 1208892 - Replace the uses of memset to clean up data in GMPLoader::Load with an inline memset; r=cpearce
This is found by Viva64.  Because the data we're memsetting to 0
may not be used after this point, the compiler can eliminate the
memsets.  We need to roll our own inline memset that cannot be
optimized away.
2015-09-27 17:46:04 -04:00
Karl Tomlinson e8c9471dea bug 1208327 make enum AudioContextOperation strongly typed and forward declare instead of including AudioContext.h r=roc
AudioContext.h is now exported only under mozilla.dom.

--HG--
extra : rebase_source : 7fc0a25a6bb8efe497a0e779dca2df5d7e3397b1
2015-09-25 08:49:03 +12:00
Kaustabh Datta Choudhury 5270e212b7 Bug 1162003 - Enable run-by-dir mode on Fx desktop mac debug platform and re-enable a few tests. r=jmaher 2015-09-28 10:54:22 -04:00
Karl Tomlinson dc7019feef bug 864171 move "extra" time accounting for AudioContext with no nodes to destination stream r=padenot
--HG--
extra : rebase_source : 28cb7a858721e80d68603c4adeaea55eb17f13ba
2015-09-23 19:05:46 +12:00
Karl Tomlinson 504ac09b2d bug 1053011 align "extra" time on AudioContext with processing block size r=padenot
--HG--
extra : rebase_source : efaf55d88a5c25e01d56a701a0f88205d67424f8
2015-09-23 19:52:26 +12:00
Jean-Yves Avenard 3f3757ce78 Bug 1207429: P2. Enable FFmpeg by default if available. r=kentuckyfriedtakahe
By default we only use libav 9 or FFmpeg 1.2 if found on the system.

If media.fragmented-mp4.ffmpeg.enabled is set, will allow use of libav 0.7 and ffmpeg 0.8 or later.
2015-09-27 15:19:28 +10:00
Jean-Yves Avenard e071e87392 Bug 1207429: P1. remove media.fragmented-mp4.exposed pref. r=kentuckyfriedtakahe 2015-09-27 15:19:27 +10:00
Jean-Yves Avenard abc4fb6966 Bug 1207119: [mp3] Properly read channels count. r=esawin
The channel count is stored on bit 6 & 7 of byte at offset 3.
2015-09-27 15:19:27 +10:00
Wes Kocher 40f2f82907 Merge m-c to inbound, a=merge 2015-09-25 18:02:38 -07:00
Carsten "Tomcat" Book 4952084732 Backed out 3 changesets (bug 1155923) for causing test failures in promises-call.html
Backed out changeset 321a932e01a7 (bug 1155923)
Backed out changeset 6ac38acd6ab2 (bug 1155923)
Backed out changeset 2981db92416a (bug 1155923)
2015-09-28 14:02:41 +02:00
Nicholas Nethercote d0c4a9db1b Bug 1208300 (part 4) - Remove gfxRGBA and some related things. r=jwatt.
Hooray!

--HG--
extra : rebase_source : d691b55eef5a8655aa98b81b5398452a5ebe860d
2015-09-24 19:24:16 -07:00
Jean-Yves Avenard 7ae057dc90 Bug 1207946: [MSE] P3. Reset cached demuxing index when new data overwrite the end. r=gerald
This will force an iterative search upon the next demux request.
2015-09-29 12:31:33 +10:00
Jean-Yves Avenard 488a0d19d9 Bug 1207946: [MSE] P2. Fix seek when target isn't found exactly in a buffered range. r=gerald 2015-09-29 12:31:32 +10:00
Jean-Yves Avenard 9cd4267bfc Bug 1207946: [MSE] P1. Ensure we stop on the closest keyframe when seeking. r=gerald
Should the first frame in the trackbuffer have a time superior to the seek target, mNextSampleTime would be incorrectly set to 0.
2015-09-29 12:31:32 +10:00
Jean-Yves Avenard 9396c59cd0 Bug 1089586: Abort pending seeks. r=jwwang
We only perform the last seek requested instead.
2015-09-29 11:37:15 +10:00
Jean-Yves Avenard 9323ac2f6a Bug 1208799: [webm] Use first track found. r=kinetik 2015-09-29 11:37:14 +10:00
Chris Pearce d565fd2492 Bug 1208289 - Log outstanding frames in GMP DrainComplete() and detect dropped ResetComplete. r=jwwang
* * *
Bug 1208289 - Yet another bustage fix. r=bustage
2015-09-29 13:06:14 +13:00
Chris Pearce e85e9eca24 Bug 1208289 - Add SimpleTimer to make setting timeouts in C++ easy. r=jwwang 2015-09-29 13:06:11 +13:00
Randell Jesup 0436e895eb Bug 1178091: tests for large DataChannel transfers and onbufferedamountlow event r=drno 2015-09-28 19:02:58 -04:00
Eugen Sawin 949294537b Bug 1190379 - Disable surface copying on emulators. r=snorp 2015-09-29 00:56:51 +02:00
Eugen Sawin 847a4ccf96 Bug 1190379 - Use AndroidDecoderModule for VP8/9. r=jya 2015-09-29 00:56:51 +02:00
Hayden Huang 997857d190 Bug 1175447 - mono audio support. r=padenot, r=sotaro
This patch is to enable mono audio option for those who has full hearing loss in one ear.
With this feature, they can get the complete audio with using one ear.

--HG--
extra : transplant_source : %EC%27%97%1Ai%0D%E3%BC%D0%12%97-K%0Ek%BD%8A%C8%A9%85
2015-08-06 14:30:22 +08:00
Chris Pearce dc7d7fd07d Bug 1207439 - Don't use GMPVideoDecoderTrialCreator for Primetime. r=edwin 2015-09-25 14:19:46 +12:00
Sotaro Ikeda 34a6dca7cc Bug 1205351 - Replace nsBaseHashtable::Enumerate() calls in dom/media/ with iterators r=cpearce 2015-09-24 18:48:25 -07:00
Nicholas Nethercote 842dd1cf5a Bug 1207741 - Remove gfxIntSize. r=nical.
gfxIntSize is just a typedef of gfx::IntSize, so this is very mechanical. The
only tricky part is deciding for each occurrence whether to replace it with
IntSize, gfx::IntSize or mozilla::gfx::IntSize; in all cases I went with the
shortest one that worked given the existing "using namespace" declarations.

--HG--
extra : rebase_source : 67fd15f87222b16defa70ef795c6d77dfacf1c36
2015-09-23 11:49:05 -07:00
Jeff Gilbert 187dfafc29 Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-24 12:21:05 -07:00
Wes Kocher 03a1803261 Backed out 9 changesets (bug 1170958) for frequent test_getUserMedia_addTrackRemoveTrack.html failures
Backed out changeset 277c1f8098d1 (bug 1170958)
Backed out changeset aa86bb9eea95 (bug 1170958)
Backed out changeset 8af8b85a4b26 (bug 1170958)
Backed out changeset ec1bf225e9cb (bug 1170958)
Backed out changeset 4a04ddca2b6b (bug 1170958)
Backed out changeset e85c9977a311 (bug 1170958)
Backed out changeset 16b40ff04e8f (bug 1170958)
Backed out changeset ad206925c84a (bug 1170958)
Backed out changeset 2106eccec79b (bug 1170958)
2015-09-25 13:08:55 -07:00
Wes Kocher b4a25c9f58 Backed out 7 changesets (bug 1103188) for frequent test_getUserMedia_addTrackRemoveTrack.html failures
Backed out changeset f0f33a8ef14c (bug 1103188)
Backed out changeset dbe0ebdebad5 (bug 1103188)
Backed out changeset bb656022a1a7 (bug 1103188)
Backed out changeset cc6b5f5ba444 (bug 1103188)
Backed out changeset ca97d52bf144 (bug 1103188)
Backed out changeset de8cc967f8eb (bug 1103188)
Backed out changeset 6da8f4905060 (bug 1103188)
2015-09-25 13:08:44 -07:00
Paul Adenot cb424cc5a1 Bug 1200579 - Stop copying AudioParam timelines. r=karlt
--HG--
extra : rebase_source : 3acc85754acb096843c45d5ad12e8e3f7954ecdc
2015-09-25 15:57:55 +02:00
Andreas Pehrson 227494cba0 Bug 1103188 - Always check tracks on getUserMedia(). r=jib
--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:31 +08:00
Andreas Pehrson 35220b1c7c Bug 1103188 - MediaStream::AddTrack/RemoveTrack tests. r=jib,roc
--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:31 +08:00
Andreas Pehrson 9d10fc1441 Bug 1103188 - Break out MediaTrackListListener to an interface. r=roc
Other modules than MediaTrackLists may want to receive updates on a
DOMMediaStream's track set. This moves the MediaTrackListListener out of
the MediaTrackList class into DOMMediaStream as a general interface.

The logic for adding MediaTracks to the MediaTrackList when
MediaStreamTracks are added or removed from a DOMMediaStream is moved to
HTMLMediaElement as this fits the model better - HTMLMediaElement is the
owner of the MediaTrackLists.

--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:31 +08:00
Andreas Pehrson 7c822e759d Bug 1103188 - Deprecate DOMMediaStream::Stop(). r=jib
--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:31 +08:00
Andreas Pehrson 6c449288a0 Bug 1103188 - Remove identical override nsDOMUserMediaStream::Stop(). r=jib
--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:30 +08:00
Andreas Pehrson cc2405535d Bug 1103188 - MediaStream::AddTrack/RemoveTrack implementation. r=roc
--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:30 +08:00
Andreas Pehrson e4aa371fe5 Bug 1103188 - MediaStream WebIDL update with addTrack/removeTrack. r=smaug,jib
--HG--
extra : commitid : FxucwRqUZUo
2015-09-25 23:23:30 +08:00
Andreas Pehrson dd7c08d0b3 Bug 1170958 - Destroy track-locked MediaInputPorts when the track ends. r=roc
This is needed to make tests pass until we have bug 1208316 implemented.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson b4ff8db67c Bug 1170958 - Remove ProcessedMediaStream::ForwardTrackEnabled. r=roc,jesup
TrackUnionStream guarantees that TrackIDs are maintained if no tracks
have claimed them before.

In the gUM case, we have a SourceMediaStream which we wholly own (the
DOMMediaStream's Input stream), piped into a TrackUnionStream which
no-one external is able to add tracks to (the DOMMediaStream's Owned
stream) - addTrack()ed tracks are added to the DOMMediaStream's Playback
stream.

The MediaStreamTracks being enabled/disable refer to a TrackID in the
DOMMediaStream's Owned stream.

Alas, we don't need to forward a track's enabled state, we can just do
it on the source.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson f02743d4ff Bug 1170958 - Add DOMMediaStream::OwnedStreamListener. r=roc
A DOMMediaStream's owned stream is piped from the input stream which is
under the control of the DOMMediaStream's owner/producer (like
captureStream or gUM). When producers like these create new tracks after
the stream has already been created (the initial set should be available
to JS synchronously), it is nice if the DOMMediaStream picks them up
automatically and create the corresponding MediaStreamTracks.

The OwnedStreamListener added here does just that; creates an owned
MediaStreamTrack when a track appeared in the stream that didn't already
have a MediaStreamTrack.

It also moves the logic for ended tracks from the PlaybackStreamListener
to the OwnedStreamListener as we previously would see a track end in the
playbak stream after removeTrack() and that would be interpreted as the
track ending at the source.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson 3c0c283fea Bug 1170958 - Improve logging of MediaStreams and playback. r=roc
--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson 96fa1303ef Bug 1170958 - Feed a SourceMediaStream-backed dom stream instead of a raw SourceMediaStream in MediaManager. r=jesup
Simplifies the structure of MediaManager somewhat. Possible since
MediaManager owns both the SourceMediaStream and the DOMMediaStream.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson eacfc2cf0e Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson cbd58a2839 Bug 1170958 - Allow MediaInputPort to lock to a specific input track. r=roc
Locking to specific tracks lets us dynamically remove and add single
tracks to a ProcessedMediaStream.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson 7aca9eb1fd Bug 1170958 - Add input stream and track as args to NotifyQueuedTrackChanges. r=roc
This allows for tracking the input track of an added track (for
ProcessedMediaStream tracks; SourceMediaStream tracks don't have input
tracks) directly in the NotifyQueuedTrackChanges handler, which will be
necessary for locking MediaInputPorts to specific tracks.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:17 +08:00
Chris Pearce e9dd5ecb69 Bug 1208349 - Ensure we query PDM whether it supports MP4 before assuming it supports MP4. r=jya 2015-09-25 23:17:50 +12:00
Gian-Carlo Pascutto f9d40d7b02 Bug 1205164 - Fix ShmemPool detection of failed allocations. r=jesup 2015-09-25 12:30:46 +02:00
Gian-Carlo Pascutto d1550b7cc5 Bug 1205164 - Make sure ShmemPool high water mark is logged in all allocators. r=jesup 2015-09-25 12:30:46 +02:00
Carsten "Tomcat" Book 1c9015e1a5 Backed out 1 changesets (bug 1208349) for m2 and w2/3 test failures
Backed out changeset 188a6e9a86a0 (bug 1208349)
2015-09-25 11:54:49 +02:00
Chris Pearce af04bc849a Bug 1208349 - Ensure we query PDM whether it supports MP4 before assuming it supports MP4. r=jya 2015-09-25 18:38:22 +12:00
Andreas Pehrson 143e9256c4 Bug 1192170 - Remove media capture indicator when all tracks have ended. r=jib
--HG--
extra : commitid : 7nO1zyYTfLV
extra : rebase_source : 4761874ce4d5bb2d5675d3fa8e235cb491348919
2015-09-25 13:55:29 +08:00
Gerald Squelart 9c5368f80d Bug 1200326 - p5 - Moved fallible code from MP4TrackDemuxer constructor to caller - r=jya
In MP4TrackDemuxer constructor, getting the track info and indices could potentially fail, triggering crashing assertions.
The fallible work is now done before calling the constructor, and if it fails a nullptr is returned, which is correctly handled in MediaFormatReader.
Also reordered some MP4TrackDemuxer members for more natural construction.
2015-09-23 00:47:00 +02:00
Martin Thomson 9c3bef623e Bug 1155923 - Removing moz prefix from RTC interfaces. r=jesup r=smaug
--HG--
extra : transplant_source : 1%F0%A8%03%D3%B9OAJW%06v%21%F1WX%03im%22
2015-09-24 16:31:47 -07:00
Randell Jesup b7ab4c0916 Bug 953265: make getUserMedia fake audio tones configurable in frequency via pref r=jib 2015-09-24 09:23:37 -04:00
Randell Jesup 93f63e0a1a Bug 953265: Update webrtc/getUserMedia default audio capture rate to 32KHz r=padenot 2015-09-24 09:23:37 -04:00
Carsten "Tomcat" Book 4fe48de950 Backed out 1 changesets (bug 1207915) for windows m3 test failures
Backed out changeset 84fd96dc7ddc (bug 1207915)
2015-09-24 11:44:25 +02:00
Nigel Babu c0f6363af9 Backed out changeset 49847eb6c1ce (bug 1180940) for Mulet Gij(4) bustage on CLOSED TREE 2015-09-24 12:37:52 +05:30
Nigel Babu 99377b8efb Backed out changeset dcbabf6ce153 (bug 1188643) for linux crashtest bustage 2015-09-24 12:31:20 +05:30
JW Wang 41104e7fe4 Bug 1207915 - Apply the fix of bug 1052206 to DecodedStream. r=roc. 2015-09-24 14:29:01 +08:00
Jean-Yves Avenard 2fc3af55bd Bug 1159343: Interrupt seek early when possible. r=jwwang 2015-09-24 16:46:14 +10:00
Jean-Yves Avenard 2b4485947b Bug 1207478: P4: Make it impossible for the MDSM frame calculation to overflow. r=jwwang
This should make P3 unnecessary as far as the MDSM is concerned.
2015-09-24 16:42:53 +10:00
Jean-Yves Avenard 653783f212 Bug 1207478: P3. Reduce chance of overflow. r=jwwang 2015-09-24 16:42:52 +10:00
JW Wang bd37364bb2 Bug 1188643. Buffer more audio in audio capture mode to avoid glitches. r=cpearce. 2015-09-24 14:20:38 +08:00
sajitk 33f44061ca Bug 1180940 - Changed return type of AudioDestinationNode::CreateAudioChannelAgent method to return errors, if any methods that it calls fail. Added code to handle the return value in AudioContext::Init(), and its callers. r=baku 2015-09-22 18:16:00 +02:00
Randell Jesup 6027a43516 Bug 1207416: Add Telemetry for time spent in different Load states in WebRTC r=gcp 2015-09-23 14:10:28 -04:00
Karl Tomlinson cbf602ece7 bug 1207003 only create track for external AudioNodeStreams r=padenot
IsFinishedOnGraphThread() was unnecessary due to the !mFinished test.

--HG--
extra : rebase_source : 6dd493c1b87e0f2f16b897f537990f1ac7abba31
2015-09-18 17:07:40 +12:00
Karl Tomlinson 7fe490cca6 bug 1207003 add GraphTime parameter to ProcessBlock() and remove GetCurrentPosition() r=padenot
This is immediately useful for making the track unnecessary, but will also be
required when switching to the destination node stream for tracking time (bug
1205558) because using GetCurrentPosition() on the destination node stream
would give different results depending on the stream processing order (when
called during processing of streams not strictly upstream from the destination
node).

--HG--
extra : rebase_source : 7a3432b2e6a20fa3f42be05776c178dfda64d166
2015-09-18 17:05:25 +12:00
Karl Tomlinson aa9fd09fa4 bug 1207003 remove unused aStream parameter r=padenot
--HG--
extra : rebase_source : b3c453cc2c13ca1a22bdc5946a8aa1c07639cbaa
2015-09-18 14:58:26 +12:00
Karl Tomlinson 5dc1c2c5d6 bug 1207003 fetch stream position once instead of three times r=padenot
--HG--
extra : rebase_source : b76cf41cf5eedae7f1b131703e14303e4f642560
2015-09-18 14:27:03 +12:00
Karl Tomlinson 49d09f7fa2 bug 1207003 coallesce external output chunks when silent r=padenot
AppendAndConsumeChunk() will always append a new chunk, but AppendNullData()
will use an existing null chunk if possible.

--HG--
extra : rebase_source : b00a131433e5548d2d5bb90303cf4d2e9568419b
2015-09-09 20:07:19 +12:00
Karl Tomlinson 1dcbc7744e bug 1207003 remove unnecessary EnsureTrack() call r=padenot
EnsureTrack() will be called in AdvanceOutputSegment(), if not blocked.

--HG--
extra : rebase_source : 1fe290135e2314bc518e8f67b6a98eddc6cf7768
2015-09-09 18:41:50 +12:00
Andre Natal 5789eeb504 Bug 1206323 - Change cmn level on acoustic model param for better accuracy on aries. r=kdavis
--HG--
extra : rebase_source : 6331880e33c477734490efbb11002a0bcdbfae53
2015-09-18 18:45:00 +02:00
Chris Peterson 71920a9550 Bug 1207030 - Enable -Wshadow flag in more directories that have no -Wshadow warnings. r=glandium 2015-09-22 21:39:03 -07:00
Chris Pearce 787b689f00 Bug 1207376 - Check whether H264Converter created its decoder successfully. r=jya 2015-09-23 17:46:04 +12:00
Chris Pearce 1dce7bcb10 Bug 1187760 - Add telemetry to record navigator.requestMediaKeySystemAccess latency. r=edwin,vladan 2015-09-23 16:43:46 +12:00
Karl Tomlinson 644913284f bug 1206362 be careful about double -> int conversion r=padenot
--HG--
extra : rebase_source : 66fd40ddd3794ac225c581bbae56445d92362e12
2015-09-21 15:44:10 +12:00
Jean-Yves Avenard 5d1d418de1 Bug 1206979: P3. Request S16 audio for libav 0.8 and earlier. r=edwin 2015-09-23 12:59:28 +10:00
Jean-Yves Avenard 4dd514a9b5 Bug 1206979: P2. Get around libav 0.8.5 bug. r=edwin
And probably others. When multhreading decoding is enabled ; the frames dimensions were incorrectly set.
2015-09-23 12:59:27 +10:00
Jean-Yves Avenard 71d911ed61 Bug 1206979: P1. Add method to determine which version of libavcodec is available. r=edwin 2015-09-23 12:59:27 +10:00
Jean-Yves Avenard 9a88d127d2 Bug 1206568: P2. Clean up header declarations. r=cpearce
Make it consistent across the use of virtual/override
2015-09-23 12:59:26 +10:00
Jean-Yves Avenard 8283012c2a Bug 1206568: P1. Ensure FFmpeg decoder is only accessed through the decoder's task queue. r=cpearce
Add strong assertion that it is indeed the case.
2015-09-23 12:59:25 +10:00
Phil Ringnalda 449e9119b4 Back out f84aedf7a62d (bug 1191042) for b2g emulator test failures
CLOSED TREE
2015-09-22 19:26:13 -07:00
Jeff Walden 4046fe1490 Bug 1179003 - Convert the infallible objectClassIs proxy hook into a fallible getBuiltinClass hook that indicates class type via outparam. r=efaust, r=bz on DOM bits, r=billm on IPC bits
--HG--
extra : rebase_source : 6ddc3727c411fdfced6338e5e383a10572575f0f
2015-08-28 21:55:40 -07:00
Jeff Gilbert 8d443901df Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-22 16:49:25 -07:00
Olivier Brunel 11e774d18d Bug 1194631 - Make firefox build with --disable-logging. r=jrmuizel 2015-09-22 17:39:12 +02:00
Randell Jesup 6a27768207 Bug 1206900: Add telemetry for device types captured with getUserMedia() r=jib,smaug 2015-09-21 22:20:45 -04:00
Jan-Ivar Bruaroey 1c3f3f8536 Bug 1206982 - getUserMedia s/PermissionDeniedError/SecurityError/. r=jesup
--HG--
extra : transplant_source : %BB%1A%10%27%95%15%E0%A4%F3%F4%93%83%26%B91%CA%C8%9Cn%B1
2015-09-21 20:57:12 -04:00
JW Wang 3b34b7fda2 Bug 1207017. Part 2 - remove duplicated GetStateMachine(). r=kinetik. 2015-09-22 13:57:36 +08:00
JW Wang ea6f339396 Bug 1207017. Part 1 - fix coding styles. r=kinetik. 2015-09-22 13:57:24 +08:00
JW Wang 4395bf4e9d Bug 1206607 - Remove some dead code from MDSM. r=kinetik. 2015-09-22 13:55:55 +08:00
Chris Pearce a808146d0f Bug 1207000 - Create GMPVideoDecoderTrialCreator on all platforms. r=edwin 2015-09-22 15:12:09 +12:00
JW Wang aeb8ca2f81 Bug 1206578 - Group public and private functions respectively for MDSM. r=gsquelart. 2015-09-22 11:03:08 +08:00
JW Wang 9f60378309 Bug 1206574 - Remove AbstractMediaDecoder::IsShutdown(). r=cpearce. 2015-09-22 10:56:17 +08:00
Karl Tomlinson 026a99369a bug 1205540 account for active inputs and skip processing when streams are inactive r=padenot
--HG--
extra : rebase_source : 20eca7c13b9757fc9c79ee414a7b4c2c8da26be2
2015-09-18 00:03:00 +12:00
Karl Tomlinson 82019c145c bug 1205540 initialize mBufferFormat when constructing silent block r=padenot
This makes an AudioBlock valid for code testing mBufferFormat without IsNull(),
without the need for explicit SetNull().

This is useful so that setting AudioNodeStream::mLastChunks each iteration is
not required for inactive nodes.

--HG--
extra : rebase_source : 171b7339bfe91e15b070f03bd5e0b784b58a217a
2015-09-21 11:37:55 +12:00
Karl Tomlinson 2a0fb73346 bug 1205540 mark BufferSource finished only when producing silent output block r=padenot
This allows simpler processing of the finished state to mark the node as an
inactive input of any downstream nodes.  Otherwise the input could not be
considered inactive until after downstream nodes have finished processing,
but ProcessInput() may not be called again on finished streams.

AudioBufferSourceNode now behaves the same as OscillatorNode and similarly
to nodes that release a playing ref.

--HG--
extra : rebase_source : 1268ca8f561fee2a43ba17f5fe3abc804486a50c
2015-09-18 00:00:17 +12:00
Karl Tomlinson b8a08a30f9 bug 1205540 make source stream available during RemoveInput r=padenot
--HG--
extra : rebase_source : 9f228fc8f2e6bc173dc3f7917c34f4b066f38209
2015-09-09 14:19:05 +12:00
Karl Tomlinson 57f288f403 bug 1205540 provide querying whether engines need to continue processing even without input r=padenot
--HG--
extra : rebase_source : 08dfd9685c49b93a9ca113434f62d92de26f58e7
2015-09-09 08:54:03 +12:00
Karl Tomlinson 7e9bfa19a5 bug 1205540 don't send more null chunks than necessary to AnalyserNode r=padenot
--HG--
extra : rebase_source : c1e6755ee91911f64a95a88abf469276be83f000
2015-09-09 08:52:39 +12:00
Jean-Yves Avenard ce6cdc5ce3 Bug 1205470: [MSE] Remove assertion. r=cpearce
Can also remove mInitDone member as that information is redundant with the init promise being present
2015-09-22 08:21:04 +10:00
Christoph Kerschbaumer 2fac10d123 Bug 1048048 - add preload content policy types for scripts (r=baku)
--HG--
extra : source : 450d4a13c90e95a58caa398e4fcc0a71f4800071
2015-09-20 14:56:21 -07:00
Wes Kocher 38fc20426e Backed out changeset 49a711e67d8b (bug 1190379) for various android crashes CLOSED TREE 2015-09-21 09:09:29 -07:00
Wes Kocher cd079d2bf9 Backed out 7 changesets (bug 1048048) for android crashes in various chunks CLOSED TREE
Backed out changeset b5abe23a4ea5 (bug 1048048)
Backed out changeset 4f91b10e8be0 (bug 1048048)
Backed out changeset 450d4a13c90e (bug 1048048)
Backed out changeset 6a727c40eb68 (bug 1048048)
Backed out changeset 88c2333ff745 (bug 1048048)
Backed out changeset 740ab1ecd079 (bug 1048048)
Backed out changeset 02c6d6aef163 (bug 1048048)
2015-09-21 09:08:34 -07:00
Christoph Kerschbaumer c938714dba Bug 1048048 - add preload content policy types for scripts (r=baku) 2015-09-20 14:56:21 -07:00
Eugen Sawin 3907bbb549 Bug 1190379: Use AndroidDecoderModule for VP8/9. r=jya 2015-09-21 16:39:12 +02:00
Paul Adenot 945decca4e Bug 1203836 - Test that MediaElementAudioSourceNode pipes correct data to an AudioContext. r=karlt
--HG--
extra : rebase_source : a7e55c894e665dcd57f69c730ec8aebc2af9152b
2015-09-21 11:00:12 +02:00
Paul Adenot ccfa972c4c Bug 1203836 - Properly handle silent chunks in AudioNodeExternalInputStream. r=karlt
--HG--
extra : rebase_source : 272b220adf13ec2a62d048ccaab2f9d70af58987
2015-09-21 10:14:59 +02:00
JW Wang 5d35a74e15 Bug 1206576 - Dispatch some MDSM functions to hide its internal thread model. r=jya. 2015-09-21 14:01:45 +08:00
JW Wang 9fd579e930 Bug 1204430. Part 2 - mirror MediaDecoder::mMediaSeekable. r=kinetik. 2015-09-21 13:49:01 +08:00
JW Wang c22dac30b8 Bug 1204430. Part 1 - dispatch AbstractMediaDecoder::SetMediaSeekable() to the main thread. r=kinetik. 2015-09-21 13:48:39 +08:00
Andreas Pehrson f0d1337fdc Bug 1177276 - Pref on canvas.captureStream by default. r=smaug,mt
--HG--
extra : commitid : 8EBhXM9AkEM
extra : rebase_source : 6f6171474350a20096db822e3524c6b2bbe20023
2015-09-17 22:09:24 +08:00
Jan-Ivar Bruaroey 4fbccc5b50 Bug 912342 - get Promise out. r=jesup
--HG--
extra : commitid : L54TpPNzEgB
extra : rebase_source : 29eceb81efe9ab96053b37a202714319be13fc80
2015-09-20 10:04:51 -04:00
Jan-Ivar Bruaroey 5c97b1be39 Bug 912342 - Move code SelectSettings to MediaConstraintsHelper. r=jesup
--HG--
extra : commitid : IHOcGmMAzno
extra : rebase_source : 371c265877854d57f094583066b145aae50ed638
2015-09-19 02:00:48 -04:00
Jan-Ivar Bruaroey 17d85435b2 Bug 912342 - Pass in Audio/VideoDevice in place of Audio/VideoSource. r=jesup
--HG--
extra : commitid : KyF5JvNyJbV
extra : rebase_source : e8fc7ff48eb38d5df55cd685e187a2069f66d6de
2015-09-19 00:49:07 -04:00
Jan-Ivar Bruaroey 434ce0be70 Bug 912342 - Change capture resolution. r=jesup
--HG--
extra : commitid : I3MtL3fA2IA
extra : rebase_source : 5ffa9bc955b35b2915afea6c5bff794ca97a4ea2
2015-09-20 18:45:57 -04:00
Jan-Ivar Bruaroey e5af2b70b2 Bug 912342 - Move code MediaOperationTask from .h to .cpp. r=jesup
--HG--
extra : commitid : L4YvvKBc9ft
extra : rebase_source : 3f732a3e21b8a9038ce35f232c012169134248e9
2015-09-16 22:44:14 -04:00
Jan-Ivar Bruaroey f953fc2b69 Bug 1195951 - fix heap type on stack error in MediaUtils' Pledge class. r=jesup
--HG--
extra : commitid : 7vVVqOmBW1W
extra : rebase_source : 186c56708e579f2734a1a9db8acebcb69c9f5af2
2015-09-20 02:26:41 -04:00
Jan-Ivar Bruaroey 19676d62dc Bug 1181896 - make gUM fail w/OverconstrainedError and candidate argument r=jesup 2015-09-18 14:04:41 -04:00
Jan-Ivar Bruaroey 3f14a4d7ce Bug 1181896 - rename .constraintName to .constraint in MediaStreamError r=jesup,bz 2015-09-18 14:03:30 -04:00
Maire Reavy 584ac822eb bug 1161276 - part 3 - tests for bitrate property in MediaRecorder r=roc
Android 2.3 and B2G disabled
2015-09-18 14:30:02 -04:00
Maire Reavy 1939f24ed7 Bug 1161276: part 2 - pass bitrates to track encoders for MediaRecorder r=roc 2015-06-08 11:47:28 +08:00
Steven Lee 5e7ac88cc7 bug 1161276 - part 1 add bits-per-second interface to MediaRecorder r=roc,smaug 2015-05-25 23:49:03 +08:00
Nathan Froyd 4bf8c9ae61 Bug 1205825 - part 2 - call Get*CachedData*Internal variants from MediaCacheStream::GetCachedRanges; r=roc
Each of GetNextCachedData and GetCachedDataEndInternal grab the monitor
on entrance, but GetCachedRanges has already grabbed the monitor for us.
We can call the *Internal variants instead, which assert that the
monitor is held.
2015-09-18 00:15:56 -04:00
Nathan Froyd eb62b6c5a5 Bug 1205825 - part 1 - don't reacquire the media cache's monitor in MediaCacheStream::FlushPartialBlockInternal; r=roc
FlushPartialBlockInternal is only ever called by methods that are
already holding the MediaCache's monitor.  So we don't need to reacquire
it every time we call this method.

fixup p1
2015-09-17 23:57:51 -04:00
Carsten "Tomcat" Book 1ae732f5ba Backed out 5 changesets (bug 1205540) for Assertion Failurs in m2-e10s tests on a CLOSED TREE
Backed out changeset e89d8182d588 (bug 1205540)
Backed out changeset abace4cdec06 (bug 1205540)
Backed out changeset b3f6e1db7233 (bug 1205540)
Backed out changeset 0d122cb34921 (bug 1205540)
Backed out changeset 4de5f87180fb (bug 1205540)
2015-09-18 16:36:33 +02:00
Gian-Carlo Pascutto d49de0d545 Bug 1202424 - Free shared memory when IPC system shuts down, not after. r=mrbkap 2015-09-11 09:33:36 +02:00
Karl Tomlinson abcc44d6d5 bug 1205540 account for active inputs and skip processing when streams are inactive r=padenot
--HG--
extra : rebase_source : ad55142a54728e7ed2dab8edefbe87547e09d85a
2015-09-18 00:03:00 +12:00
Karl Tomlinson 985811fe37 bug 1205540 mark BufferSource finished only when producing silent output block r=padenot
This allows simpler processing of the finished state to mark the node as an
inactive input of any downstream nodes.  Otherwise the input could not be
considered inactive until after downstream nodes have finished processing,
but ProcessInput() may not be called again on finished streams.

AudioBufferSourceNode now behaves the same as OscillatorNode and similarly
to nodes that release a playing ref.

--HG--
extra : rebase_source : 0b3c7123f916fce36f852785c1e0b2a7c7013600
2015-09-18 00:00:17 +12:00
Karl Tomlinson d7b9ada3a0 bug 1205540 make source stream available during RemoveInput r=padenot
--HG--
extra : rebase_source : f9b4e488e52eb3717808c0efbaf5c0815627c8f0
2015-09-09 14:19:05 +12:00
Karl Tomlinson ee25bfb081 bug 1205540 provide querying whether engines need to continue processing even without input r=padenot
--HG--
extra : rebase_source : 76545deae4cdc929f1b3ce4d10065f99f21a2ec3
2015-09-09 08:54:03 +12:00
Karl Tomlinson e182c00028 bug 1205540 don't send more null chunks than necessary to AnalyserNode r=padenot
--HG--
extra : rebase_source : f758d172fbbdba3288c71f690411175a41a822cc
2015-09-09 08:52:39 +12:00
Andreas Pehrson c5a6c8081a Bug 1152298 - Implement AutoDriver for CanvasCaptureMediaStream. r=mt
--HG--
extra : transplant_source : %FF%5BC%94%8AD%97%E6zor%24%3A%05C%60%AB%94-%EB
2015-09-17 11:46:05 +08:00
Andreas Pehrson 461b9f6576 Bug 1161913 - Part 3 - Relax requestFrame ordering guarantee in tests. r=mt
We used to fully guarantee the order of requestFrame() and draw calls.
For instance:
```
ctx.draw(red);
stream.requestFrame();
ctx.draw(green);
```
would guarantee that a red frame ended up in the stream, and not the
green unless another frame was requested.

Now with frames being requested and pushed out on next refresh, we can
only guarantee that everything up to the requestFrame() call is included
in the next frame. Everything after the requestFrame() and before the
next refresh (stable state in most cases) will now also be inevitably
included.

--HG--
extra : transplant_source : %DF%A1%9C%A8%2B%3AzTS%EA%CE%0A%023%E2%EBWC%FD%3C
2015-09-17 11:37:05 +08:00
Andreas Pehrson 3f1d386795 Bug 1161913 - Part 2. Request canvas to push out its next drawn frame instead of pulling it. r=mt
--HG--
extra : transplant_source : %FF%3D%E7%BE%A1%EA%BE%5E%00w%07%084%D8%27D%CFp%EB%D6
2015-09-17 12:36:57 +08:00
Chris Pearce d38bfbdf2b Bug 1205582 - Add pref to disable GMP trial create. r=edwin 2015-09-18 18:35:14 +12:00
Gian-Carlo Pascutto c3a8478c8b Bug 1200477 - Allow building with WebRTC disabled. r=glandium,mrbkap 2015-09-18 08:29:14 +02:00
Jean-Yves Avenard e5aadf98af Bug 1205911: P2. Ensure demuxer is reset before performing a seek. r=edwin
Should there be any demuxing request pending resolution, it would have caused our internal seek to ultimately fail.
2015-09-18 16:03:58 +10:00
Jean-Yves Avenard c15474a997 Bug 1205911: P1. Cancel pending demux request when searching for next keyframe. r=edwin 2015-09-18 16:03:58 +10:00
Wes Kocher 5d45d1a728 Backed out 3 changesets (bug 1161276) for test_mediarecorder_bitrate.html failures CLOSED TREE
Backed out changeset 9187f4d2518f (bug 1161276)
Backed out changeset 4e8f28b17300 (bug 1161276)
Backed out changeset cf05881e89ed (bug 1161276)
2015-09-17 13:06:41 -07:00
Richard Barnes 52d9a0fc5e Bug 1205156 - Add telemetry to measure how often getUserMedia is used over non-secure origins r=jib 2015-09-17 08:44:50 -04:00
Maire Reavy b6a3c8f458 bug 1161276 - part 3 - tests for bitrate property in MediaRecorder r=roc 2015-09-17 08:21:26 -04:00
Maire Reavy a4af8ac183 Bug 1161276: part 2 - pass bitrates to track encoders for MediaRecorder r=roc 2015-06-08 11:47:28 +08:00
Steven Lee 3bc885acb1 bug 1161276 - part 1 add bits-per-second interface to MediaRecorder r=roc,smaug 2015-05-25 23:49:03 +08:00
Jan-Ivar Bruaroey 5c82d76952 Bug 1205339 - null out sIPCServingParent on teardown, to not assert on tab crash recovery. r=jesup
--HG--
extra : transplant_source : %90E8%8DQeX%C7m%084%A3%DF7%7D%D2%7B9%8E%15
2015-09-16 13:47:07 -04:00
Kilik Kuo 90420c357e Bug 1204882 - Move MediaDecoder::FrameStatistics out of MediaDecoder for easier use in other classes. r=jwwang
--HG--
extra : transplant_source : 3%E1%C1%3B%B5%8B%82%20%DF%AE%1A%21%E0f%FF%7C%3C%0EF%10
2015-09-15 22:57:20 +08:00
Michael Froman 41d164744a Bug 1095793 - use mid if provided to place candidate in msection. r=bwc
--HG--
extra : rebase_source : e85bbde1c0cbd3733f82a11c98245079ea1cbf5c
2015-09-10 13:20:09 -05:00
JW Wang bd9849968c Bug 1204434 - Remove check of MediaDecoder::IsMediaSeekable from OggReader::ReadMetadata. r=cpearce. 2015-09-17 15:26:08 +08:00
Nicholas Nethercote f429eae6a5 Bug 1203427 (part 5) - Add logging of timer firings. r=froydnj. 2015-09-10 00:50:51 -07:00
Robert O'Callahan f8eee03d38 Bug 1189506. Remove invalid assertion. r=karlt
That's nothing stopping someone passing an AudioContext time of (e.g.)
zero to AudioBufferSourceNode::Stop and OscillatorNode::Start/Stop, which
can get turned into a negative time here. Those nodes can handle negative
start/stop times just fine.

--HG--
extra : commitid : I6TtkZTlLRg
extra : rebase_source : 64e73f9ff30572f789cf4887acad97116aba33f3
2015-09-16 16:31:12 +12:00
Robert O'Callahan da228403af Bug 1189506. Make PlayAudio use GraphTimeToStreamTime. r=karlt
--HG--
extra : commitid : 2tdDaVI6RGX
extra : rebase_source : ca0e4253be97bf15ca194f26dc39d76ade806fc8
2015-09-08 17:19:03 +12:00
Robert O'Callahan de2107e951 Bug 1189506. Make PlayVideo use GraphTimeToStreamTime/StreamTimeToGraphTime and remove StreamTimeToGraphTimeWithBlocking. r=karlt
--HG--
extra : commitid : AZ6bA7qp74U
extra : rebase_source : 0e34439af77309478725ae8679cb4a8298e0b180
2015-09-08 17:18:01 +12:00
Robert O'Callahan 3b5a766000 Bug 1189506. Relax assertions a bit. karlt
--HG--
extra : commitid : FznTYdvkbH5
extra : rebase_source : 6fb905cb7177389e0e9b45710c0f61c1ccc5433c
2015-09-08 17:14:43 +12:00
Robert O'Callahan fbcc5de786 Bug 1189506. Use GraphTimeToStreamTime in PrepareUpdatesToMainThreadState. r=karlt
--HG--
extra : commitid : APael1C16Ie
extra : rebase_source : 0b0f2a603129c5efe1952275fef2f3021c9a0cca
2015-09-08 17:12:01 +12:00
Robert O'Callahan 85592c5fc0 Bug 1189506. Use mProcessedTime/mStateComputedTime in ProduceDataForStreamsBlockByBlock. karlt
--HG--
extra : commitid : 9tpkCW2vhWj
extra : rebase_source : 17d886e7b7a51834dec6ea53e41a7f7ef08ec58b
2015-09-16 16:24:10 +12:00
Robert O'Callahan 7395a6b7fd Bug 1189506. Use mStateComputedTime in some places instead of passing aTo. r=karlt
--HG--
extra : commitid : LR21taIGcGM
extra : rebase_source : c228ba660e8ced61a17e9ec52fb47fff0d07b4c5
2015-09-08 16:58:19 +12:00
Robert O'Callahan 2ca14cc805 Bug 1189506. Use mProcessedTime in some places instead of passing aFrom. r=karlt
--HG--
extra : commitid : 332ie8PhPom
extra : rebase_source : 7ff2eaff9a3a7b12208a06e99233aea523143fb9
2015-09-16 16:23:14 +12:00
Robert O'Callahan c4f0cbe5be Bug 1189506. Call GraphTimeToStreamTime in ExtractPendingInput since we know no blocking time has been determined yet. r=karlt
--HG--
extra : commitid : JfzX4n7MyFp
extra : rebase_source : ab9fdf7d503fcce2d4277279a6d654436953edb5
2015-09-08 16:50:55 +12:00
Robert O'Callahan cdada24c1f Bug 1189506. Call GraphTimeToStreamTime in AudioNodeExternalInputStream. r=karlt
--HG--
extra : commitid : EDYOTGF2Ade
extra : rebase_source : 9eeebfe7cc23cdeffb6688935ac07fd5f2118d1b
2015-09-08 16:46:10 +12:00
Robert O'Callahan 1289d5e83f Bug 1189506. Call GraphTimeToStreamTime in DecodedStreamGraphListener::NotifyOutput, since there's no blocking pending there. r=karlt
--HG--
extra : commitid : 4DLFErvxqnP
extra : rebase_source : 00d7c561a1563b431c1098ea340603e252469c3d
2015-09-08 16:41:45 +12:00
Robert O'Callahan 592e13f05f Bug 1189506. Call StreamTimeToGraphTime in MediaStreamGraphImpl::UpdateCurrentTimeForStreams, since we know blocking has been taken account of already there. r=karlt
--HG--
extra : commitid : YABaL6h9O0
extra : rebase_source : 3032e3a04a14f2d203ea29c501d8ebc08f531365
2015-09-08 16:38:40 +12:00