Commit Graph

1924 Commits

Author SHA1 Message Date
Ehsan Akhgari
0ac246e288 Bug 853718 - Pause the AudioContext when it is being torn down; r=bzbarsky 2013-03-21 23:07:44 -04:00
Ehsan Akhgari
e9e1b63618 Bug 815492 - Pause Web Audio playback when entering the bfcache, and resume it when coming out of the bfcache; r=bzbarsky 2013-03-21 22:59:33 -04:00
Ehsan Akhgari
9214399971 Bug 853721 - Part 1: Refactor the code to convert GainNode's AudioParamTimeline to ticks into WebAudioUtils; r=roc 2013-03-22 00:01:28 -04:00
Edwin Flores
7da79436e5 Bug 846465 - Fix OMX plugin crash on HTC One X r=doublec 2013-03-22 15:24:47 +13:00
Paul Adenot
f3581fffe3 Bug 853360 - Implement the coneGain part of the AudioPannerNode. r=roc
--HG--
extra : rebase_source : c3a27ef2da8a080b9b310af14cf85f68f13df9a6
2013-03-21 19:25:15 +01:00
Paul Adenot
9e83a59dad Bug 849918 - Initial support for PannerNode's 3D positional audio (equalpower panning model). r=ehsan,roc
--HG--
extra : rebase_source : d729da50f97b94ea0434a93ad481ac35954bfa9a
2013-03-21 17:45:53 +01:00
Kyle Huey
d719ea3e8e Backout things philor tells me to (Bug 853360, Bug 849918). 2013-03-21 18:20:42 -07:00
Paul Adenot
4dd453510a Bug 853360 - Implement the coneGain part of the AudioPannerNode. r=roc 2013-03-21 19:25:15 +01:00
Paul Adenot
89510dacb2 Bug 849918 - Initial support for PannerNode's 3D positional audio (equalpower panning model). r=ehsan,roc 2013-03-21 17:45:53 +01:00
Paul Adenot
a27b25c611 Bug 853076 - Initialized the chunk to be empty before getting audio frames. r=ehsan
--HG--
extra : rebase_source : 06845291a1d86aac4adbde1163196f5de61289e9
2013-03-21 10:56:40 +01:00
Ryan VanderMeulen
2d6efebe06 Backed out changeset 46519785800d (bug 847809) for B2G bustage. 2013-03-21 10:41:07 -04:00
Shelly Lin
980d7af474 Bug 847809 - Add audio/amr to the supported decode type of OMX, but disable it if this AMR is loaded from Web pages. r=roc 2013-03-18 11:33:32 +08:00
Ehsan Akhgari
7613175e14 Bug 852817 - Don't do anything special when the JS binding to AudioDestinationNode gets finalized; r=roc 2013-03-20 21:35:44 -04:00
Matthew Gregan
b511c8003f Bug 852831 - Unbreak media volume control on Android. r=mchen 2013-03-21 15:36:29 +13:00
Matthew Gregan
b4726f7844 Backout bug 852831 (07e459058893) on a CLOSED TREE. 2013-03-21 16:42:23 +13:00
Matthew Gregan
aa8fcee0b5 Bug 852831 - Unbreak media volume control on Android. r=mchen 2013-03-21 15:36:29 +13:00
Ehsan Akhgari
8394a6f09e Bug 852838 - Make sure that trying to allocate an AudioBuffer with a very large number of channels does not cause an OOM crash; r=roc 2013-03-20 21:49:13 -04:00
Ehsan Akhgari
f96749709d Bug 853246 - Optimize Panner and Listener methods when processing them would not have a significant effect; r=roc 2013-03-20 20:12:07 -04:00
Sotaro Ikeda
aa37821bb8 Bug 844248 - Add a custom media stream for camera preview. r=roc 2013-03-20 10:07:46 -04:00
Robert O'Callahan
3490a03af3 Bug 850587. Part 2: Make NotifyHasCurrentData fire when a stream would be able to produce data if it was not blocked. r=jesup
Also removes NotifyHasCurrentData's boolean parameter; we just fire this
once and treat a stream that has once had current data as always
having current data (since we block a stream that would advance
beyond its available data).
2013-03-21 00:19:39 +13:00
Robert O'Callahan
db2f3184b1 Bug 850587. Part 1: Refactor NotifyAutoplayDataReady to CheckAutoplayDataReady and allow autoplay to start on HAVE_CURRENT_DATA if the source is a stream. r=cpearce 2013-03-21 00:11:48 +13:00
Matthew Gregan
56f37c387c Bug 852401 - Remove sydneyaudio. r=doublec
--HG--
rename : media/libsydneyaudio/src/gonk/AudioSystem.h => dom/system/gonk/android_audio/AudioSystem.h
rename : media/libsydneyaudio/src/gonk/AudioTrack.h => dom/system/gonk/android_audio/AudioTrack.h
rename : media/libsydneyaudio/src/gonk/EffectApi.h => dom/system/gonk/android_audio/EffectApi.h
rename : media/libsydneyaudio/src/gonk/IAudioFlinger.h => dom/system/gonk/android_audio/IAudioFlinger.h
rename : media/libsydneyaudio/src/gonk/IAudioFlingerClient.h => dom/system/gonk/android_audio/IAudioFlingerClient.h
rename : media/libsydneyaudio/src/gonk/IAudioRecord.h => dom/system/gonk/android_audio/IAudioRecord.h
rename : media/libsydneyaudio/src/gonk/IAudioTrack.h => dom/system/gonk/android_audio/IAudioTrack.h
rename : media/libsydneyaudio/src/gonk/IEffect.h => dom/system/gonk/android_audio/IEffect.h
rename : media/libsydneyaudio/src/gonk/IEffectClient.h => dom/system/gonk/android_audio/IEffectClient.h
2013-03-19 17:12:36 +13:00
Mike Shal
ea1d9b8ba7 Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps 2013-03-19 11:47:00 -07:00
Andrea Marchesini
df61512cc4 Bug 847370 - HTMLMediaElement - crossOrigin vs crossorigin, r=bz 2013-03-19 16:18:29 +01:00
Ehsan Akhgari
5fe38c48d5 Bug 852410 - Mark Web Audio streams as blocking on their input, not on their output; r=roc 2013-03-19 00:43:44 -04:00
Andrea Marchesini
c15b6499e8 Bug 841493 - Rename nsHTMLVideoElement to HTMLVideoElement, r=Ms2ger
--HG--
rename : content/html/content/public/nsHTMLVideoElement.h => content/html/content/public/HTMLVideoElement.h
rename : content/html/content/src/nsHTMLVideoElement.cpp => content/html/content/src/HTMLVideoElement.cpp
2013-03-19 13:27:35 +01:00
Andrea Marchesini
2cb5f26777 Bug 841493 - Move HTMLMediaElement to WebIDL, r=Ms2ger 2013-03-19 13:25:19 +01:00
Andrea Marchesini
6b08dd17f5 Bug 841493 - Rename nsHTMLMediaElement to HTMLMediaElement, r=Ms2ger
--HG--
rename : content/html/content/public/nsHTMLMediaElement.h => content/html/content/public/HTMLMediaElement.h
rename : content/html/content/src/nsHTMLMediaElement.cpp => content/html/content/src/HTMLMediaElement.cpp
2013-03-19 13:23:54 +01:00
Michael Wu
ea84685f19 Bug 848581 - Enable cubeb by default on Gonk. r=kinetik f=mchen 2013-03-19 16:43:37 +13:00
Ehsan Akhgari
54ec6a6ea6 #include prlog.h inside StreamBuffer.cpp, no bug
--HG--
extra : rebase_source : 6c36b987691eb29e12f06a87e23030ea1b852f71
2013-03-18 23:29:51 -04:00
Ehsan Akhgari
55022258aa Bug 852011 - Reserve 5 elements in MediaStream::mBlocked in order to avoid excessive cost when dealing with removals from it; r=roc
--HG--
extra : rebase_source : 480c95b4110dcd8355d08eacbbbe91f963d73239
2013-03-17 23:27:14 -04:00
Alessandro Decina
df6968c460 Bug 851906 - Restore compatibility with older GStreamer versions. r=doublec 2013-03-17 07:33:00 -07:00
Ed Morley
893fc957b3 Bug 754860 - Disable test_bug726904.html on OS X for too many intermittent failures 2013-03-18 12:07:24 +00:00
Ehsan Akhgari
c9d7df0c53 Bug 851986 - Avoid calling a virtual function when getting the source for an AudioNodeStream; r=roc 2013-03-17 21:26:45 -04:00
Ehsan Akhgari
60ab45fb40 Bug 851966 - Only store the produced AudioChunks for AudioNodeStreams that will result in playback; r=roc 2013-03-17 20:37:47 -04:00
Ehsan Akhgari
a875e98108 Bug 851949 - Avoid setting AudioParam values needlessly; r=roc 2013-03-17 15:57:15 -04:00
Ms2ger
aed8044ac2 Merge m-c to m-i. 2013-03-17 13:22:37 +01:00
Ms2ger
ecaff4e0d2 Bug 845374 - Part r: Stop including nsTArray.h in nsReadableUtils.h; r=khuey 2013-03-17 08:55:16 +01:00
Ms2ger
24bcddcf77 Bug 845374 - Part l: Stop including nsIDocument.h in nsContentUtils.h and fix two nits; r=khuey 2013-03-17 08:55:15 +01:00
Ehsan Akhgari
19c480342c Bug 851603 - Enable Web Audio in Nightly; r=roc
--HG--
extra : rebase_source : b79d7f2cb0e6257eae2f65bd8637f718324b43f4
2013-03-16 01:35:22 -04:00
Ehsan Akhgari
102d476f55 Bug 851338 - Implement AudioContext.currentTime; r=roc 2013-03-14 21:01:02 -04:00
Ehsan Akhgari
4b29362da4 Backed out changeset 6a23d4536079 (bug 851338) because of Android test failures 2013-03-15 01:26:22 -04:00
Ehsan Akhgari
0422ceeb14 Bug 851338 - Implement AudioContext.currentTime; r=roc
Landed on a CLOSED TREE, because I'm mad at X11!
2013-03-14 21:01:02 -04:00
Ehsan Akhgari
971d74a7cb Backed out changeset a96fb85d42bf (bug 851338) because of Linux build failures
Landed on a CLOSED TREE
2013-03-14 23:53:27 -04:00
Ehsan Akhgari
bada1afd49 Bug 851338 - Implement AudioContext.currentTime; r=roc
--HG--
extra : rebase_source : 064da119e26ca15e361c003a4fabe7d3fe77e256
2013-03-14 21:01:02 -04:00
Ehsan Akhgari
672e27d6bc Bug 850970 - Set the initial value of gain nodes on the audio stream to make sure that they don't mute playback; r=roc
--HG--
extra : rebase_source : caf58ca903665f8b3014451926cec9772969663f
2013-03-13 23:44:49 -04:00
Chris Double
9cce464d74 Bug 848639 - Prevent DecodeHeader for Ogg Skeleton tracks from failing on valid indexes - r=cpearce
--HG--
extra : rebase_source : cb913d45d6b9ab396b563391f3ccd096500dcef1
2013-03-14 13:57:18 +13:00
Ehsan Akhgari
e48730f81b Bug 849713 - Part 5: Implement the looping logic in AudioBufferSourceNodeEngine; r=roc
The logic in this function is based around a while loop.  In every
iteration of the loop, we determine whether we need to output silence
(if we're at a position before the playback has started or after it has
stopped) or if we need to produce sound.  In each case, we call a helper
function which eagerly tries to produce as much silence or sound as
possible, while maintaining the constraints that are explained in the
comments in the code.
2013-03-10 21:02:22 -04:00
Ehsan Akhgari
245251292d Bug 849713 - Part 4: Refactor the logic for borrowing the output buffer from the input buffer; r=roc 2013-03-10 18:38:57 -04:00
Ehsan Akhgari
a4cc299dc2 Bug 849713 - Part 3: Set the loop parameters on AudioBufferSourceNodeEngine if looping is turned on when start() gets called; r=roc 2013-03-10 14:11:12 -04:00
Ehsan Akhgari
a03597ec60 Bug 849713 - Part 2: Accept the loop parameters on AudioBufferSourceNodeEngine; r=roc 2013-03-10 13:59:41 -04:00
Ehsan Akhgari
b01654e838 Bug 849713 - Part 1: Add DOM bindings for AudioBufferSourceNode loop attributes; r=roc 2013-03-10 12:56:14 -04:00
Alessandro Decina
e91a9e993c Bug 761018 - GStreamer video buffer handling optimization; r=cdouble 2013-03-13 16:11:15 -04:00
Alessandro Decina
48db716a1d Bug 760140 - rework canPlayType in the GStreamer backend; r=cdouble 2013-03-13 16:10:47 -04:00
Alessandro Decina
10a7de0262 Bug 833628 - GStreamer backend has shutdown hang in content/media mochitests; r=cdouble
Fix stream length detection so that we don't report size=-1 to gst. Fixes issues
with qtdemux not liking unknown upstream byte size.
2013-03-13 16:09:20 -04:00
Jeff Walden
45c6642e41 Bug 847480 - Convert DeprecatedAbs overloads taking floating point (except for nscoord uses, when nscoord is optionally a floating point type) to Abs. r=Ms2ger 2013-03-05 15:43:44 -08:00
Jeff Walden
000d820503 Bug 847480 - Blindly convert all existing mozilla::Abs users to mozilla::DeprecatedAbs. Individualized conversions to the reformed mozilla::Abs will continue until mozilla::DeprecatedAbs is unused, at which point it will be removed. r=Ms2ger 2013-03-05 15:43:30 -08:00
Randell Jesup
3e9f97631e Bug 848401: switch from ReentrantMonitors and PR_Lock/Condvar to Monitor. Fix {picture:true} for desktop r=khuey,dao 2013-03-13 11:42:18 -04:00
Ehsan Akhgari
06c15fd0ed Bug 849916 - Part 4: Don't rely on things still being around when we run PannerNode's dtor, use a weak pointer instead; r=roc
--HG--
extra : rebase_source : 8432bea9035761fcb52e77dfc474de8878fc4372
2013-03-12 19:28:30 -04:00
Ehsan Akhgari
ffee05887e Bug 849916 - Part 3: Create an engine for PannerNodes and make sure that we deliver the panner and listener parameters to it; r=padenot 2013-03-12 14:34:55 -04:00
Ehsan Akhgari
7a26abd817 Bug 849916 - Part 2: Add helper functions for sending different argument types to the AudioNodeStream; r=padenot 2013-03-12 11:28:14 -04:00
Ehsan Akhgari
023850e72d Bug 849916 - Part 1: Make it possible to send ThreeDPoint objects as commands to the MSG thread; r=padenot 2013-03-12 11:16:42 -04:00
Ryan VanderMeulen
f6ea8893e6 Backed out changesets 4ee69256f8f2, 2becc603eeb8, and afad1c17015e (bug 849916) for bustage on a CLOSED TREE. 2013-03-12 16:16:30 -04:00
Ehsan Akhgari
fc535e7e15 Bug 849916 - Part 3: Create an engine for PannerNodes and make sure that we deliver the panner and listener parameters to it; r=padenot 2013-03-12 14:34:55 -04:00
Ehsan Akhgari
4cbb915b76 Bug 849916 - Part 2: Add helper functions for sending different argument types to the AudioNodeStream; r=padenot 2013-03-12 11:28:14 -04:00
Ehsan Akhgari
d7560401d9 Bug 849916 - Part 1: Make it possible to send ThreeDPoint objects as commands to the MSG thread; r=padenot 2013-03-12 11:16:42 -04:00
Marco Chen
cafe8b24f1 Bug 839415 - [Audio] Add support of SLAndroidConfigurationItf into backend of Cubeb + OpenSLES. r=kinetik 2013-03-12 11:46:32 +08:00
Ehsan Akhgari
78ca80f126 Bug 849914 - Implement the latest spec changes to PannerNode and AudioListener; r=roc 2013-03-11 19:09:27 -04:00
Masatoshi Kimura
7693df618d Bug 848339 - Remove the vestigial boolean outparam from nsWrapperCache::WrapObject. r=bz 2013-03-12 08:03:47 +09:00
Chris Pearce
ed9f8a34a7 Bug 850021 - Change WMFSourceReaderCallback to use its own log so that we don't spam MediaDecoder NSPR log with uninteresting messages. r=padenot 2013-03-12 12:01:10 +13:00
Ehsan Akhgari
bbfd0958e3 Backed out 4 changesets (bug 849713) since builds fail because of warnings as errors
Backed out changeset e811d4258d45 (bug 849713)
Backed out changeset 26aa58e87d5d (bug 849713)
Backed out changeset 9a6552161eff (bug 849713)
Backed out changeset 3551877d9b92 (bug 849713)

Landing on a CLOSED TREE
2013-03-11 16:14:42 -04:00
Ehsan Akhgari
35dae1b81f Backed out changeset 151b845b0fa9 (bug 849713 part 5) because it has not been reviewed yet! 2013-03-11 15:31:14 -04:00
Ehsan Akhgari
a974ee8086 Bug 849713 - Part 5: Implement the looping logic in AudioBufferSourceNodeEngine; r=roc
The logic in this function is mostly around the mLoop variable.  mLoop being
NotLooping means that the playback of this node is never going to loop, in
which case the logic doesn't change compared to the ProduceAudioBlock function
before this patch.

If the loop mode is turned on when start() is called, mLoop will initially be
WillLoop.  In that case, we play back until mLoopEnd, and then we will wrap
around to mLoopStart, set mLoop to be IsLooping, and start playback again.
From that point on, mLoop will always be IsLooping, and we will loop between
mLoopStart and mLoopEnd.  Where possible, we'll just use BorrowFromInputBuffer
to avoid copying the buffer, and if we hit the edges right around the time that
we loop, we copy some frames from the end of the input buffer and some from the
beginning in the memcpy loops at the end of the ProduceAudioBlock function.
2013-03-10 21:02:22 -04:00
Ehsan Akhgari
a5fea34024 Bug 849713 - Part 4: Refactor the logic for borrowing the output buffer from the input buffer; r=roc 2013-03-10 18:38:57 -04:00
Ehsan Akhgari
1300d21db5 Bug 849713 - Part 3: Set the loop parameters on AudioBufferSourceNodeEngine if looping is turned on when start() gets called; r=roc 2013-03-10 14:11:12 -04:00
Ehsan Akhgari
b646a29552 Bug 849713 - Part 2: Accept the loop parameters on AudioBufferSourceNodeEngine; r=roc 2013-03-10 13:59:41 -04:00
Ehsan Akhgari
5e3e5535d4 Bug 849713 - Part 1: Add DOM bindings for AudioBufferSourceNode loop attributes; r=roc 2013-03-10 12:56:14 -04:00
Paul Adenot
cc5b3eaabf Bug 846612 - r=kinetik 2013-03-04 15:48:58 +01:00
Matthew Gregan
81d35989b4 Bug 849519 - Raise INDEX_SIZE_ERR if media element volume is set to NaN. r=doublec 2013-03-11 11:11:23 +13:00
Ehsan Akhgari
aacd3da00e Bug 849652 - Copy enough number of bytes in AudioBufferSourceNode::ProduceAudioBlock's memcpy loop; r=roc 2013-03-10 17:37:40 -04:00
Ms2ger
4465cc3a75 Bug 821383 - Don't bother with JSAPI magic in nsHTMLMediaElement::{G,S}etMozSrcObject; r=bz+roc 2013-03-10 08:58:18 +01:00
Sotaro Ikeda
edb14d52b9 Bug 803471 - Part 5b - Change OmxDecode to use GonkNativeWindowClient. r=cdouble 2013-03-08 14:43:33 -05:00
Sotaro Ikeda
f598af80f7 Bug 803471 - Part 2 - Use OmxClient in OmxDecoder. r=cdouble 2013-03-08 14:43:32 -05:00
Ehsan Akhgari
3418e3c685 Bug 849106 - Adjust the fuzz tolerance value for small-shot.ogg on mobile 2013-03-08 13:07:21 -05:00
Ehsan Akhgari
c6ddf88782 Bug 849230 - Limit the range of sample rates accepted by AudioContext.createBuffer according to the spec; r=padenot 2013-03-08 12:29:00 -05:00
Paul Adenot
1811d5ab85 Bug 846687 - Set the transport as non-seekable if the server sends Accept-Ranges, but no Content-Length. r=cpearce 2013-03-01 19:55:01 +01:00
Ehsan Akhgari
fc32827507 Bug 848651 - Part 2: Log an error to the Web Console if we run out of memory while trying to resample an AudioBuffer for playback; r=padenot 2013-03-08 11:49:56 -05:00
Ehsan Akhgari
a06ea67f9d Bug 848651 - Part 1: Implement resampling of audio buffers to be able to play back buffers with a different sample rate than the AudioContext; r=padenot 2013-03-07 18:14:46 -05:00
John Schoenick
ad8488c2eb Bug 849067 - Unbreak gstreamer builds again. r=cpearce 2013-03-07 17:44:00 -08:00
Randell Jesup
82afed2e43 Bug 839650: Add debugs to MediaStreamGraph to ease investigation of issues in the future r=roc 2013-03-07 03:53:45 -05:00
Ed Morley
f16c99acd7 Backed out changeset be1ee54becf4 (bug 839650) for build failures 2013-03-07 09:10:47 +00:00
Randell Jesup
1d6e4a068a Bug 839650: Add debugs to MediaStreamGraph to ease investigation of issues in the future r=roc 2013-03-07 03:53:45 -05:00
Ehsan Akhgari
f2b7547cab Bug 846329 - Fix decodeAudioData to decode all channels and not only the first one; r=padenot 2013-03-04 21:27:13 -05:00
Thomas Zimmermann
1823db9f02 Bug 834172 - Remove GStreamer flags from webaudio Makefile. r=cpearce
With the move of all codec-specific code to DecoderTraits, there is no
need to pass compiler flags for GStreamer when building the webaudio
library. This patch updates the Makefile template accordingly.
2013-03-05 09:56:35 -05:00
Thomas Zimmermann
84a4d3af62 Bug 834172 - Don't export codec functions from DecoderTraits. r=cpearce
All codec-specific code is hidden within DecoderTraits and available
from generic interfaces. This patch removes the codec-specific
functions from DecoderTraits' public interface.
2013-03-05 09:56:35 -05:00
Thomas Zimmermann
3867cce83c Bug 834172 - Implement CreateReader in DecoderTraits. r=cpearce
MediaDecoderReaders are now created from within DecoderTraits. The
codec-specific code has been removed from class MediaDecodeTask.
2013-03-05 09:56:35 -05:00
Thomas Zimmermann
13fe177e94 Bug 834172 - Implement IsSupportedTypeInVideo in DecoderTraits. r=cpearce
This change moves the policy of supported media types in the element
nsHTMLMediaElement to the DecoderTraits class. The codec-specific code
has been removed from the media element.
2013-03-05 09:56:35 -05:00
Thomas Zimmermann
9bd1221c54 Bug 834172 - Implement CreateDecoder in DecoderTraits. r=cpearce
The class DecoderTraits knows about all supported decoders. Adding
an interface to create decoder instances simplifies all users of this
functionality. nsHtmlMediaElement has been updated to use the new
function.
2013-03-05 09:56:34 -05:00
Ehsan Akhgari
14a0e48617 Bug 836076 - Part 6: Hook up GainNode to the MediaStreams back-end to enable controlling the volume of the audio being played back; r=roc 2013-01-29 18:37:51 -05:00
Ehsan Akhgari
61bbd92228 Bug 836076 - Part 5: Provide an API for converting event times to tick values; r=roc 2013-03-01 17:06:03 -05:00
Ehsan Akhgari
030416b20c Bug 836076 - Part 4: Move AudioEventTimeline::Event outside of AudioEventTimeline to be able to specialize its template members; r=roc 2013-03-01 17:01:43 -05:00
Ehsan Akhgari
6fe682381f Bug 845960 - Fix a crash resulted from a missing nullcheck for the optional failure callback of decodeAudioData; r=bzbarsky 2013-03-04 23:04:51 -05:00
Randell Jesup
97f75463f6 Bug 842715: Refactor gUM prefs use to be on mainthread, and prepare for constraints r=derf 2013-03-04 16:02:17 -05:00
Steve Workman
ae7c6b7475 Bug 838315 - Avoid race condition for switching during a seek r=cpearce 2013-03-01 11:52:39 -08:00
Jeff Walden
72eca3f9c1 Bug 835542 - Implement mozilla::Abs. r=Ms2ger
--HG--
extra : rebase_source : a3e62ff76365d27cc4cb10e4fee942ddb8b10b79
2013-02-15 19:55:36 -08:00
Mike Hommey
8bc91c7115 Bug 842327 - Move libomxplugin* at the root of the apk. r=doublec,r=khuey 2013-03-04 19:34:03 +01:00
Alessandro Decina
a38c52b5f6 Bug 808319 - Fix some GCC warnings in GStreamerReader.cpp r=rillian,alessandro.d 2013-03-03 23:56:00 -08:00
Ryan VanderMeulen
527466b973 Backed out 5 changesets (bug 834172) for Android build bustage. 2013-03-04 11:17:36 -05:00
Thomas Zimmermann
6afb280c5a Bug 834172 - Remove GStreamer flags from webaudio Makefile. r=cpearce
With the move of all codec-specific code to DecoderTraits, there is no
need to pass compiler flags for GStreamer when building the webaudio
library. This patch updates the Makefile template accordingly.
2013-03-04 10:24:45 -05:00
Thomas Zimmermann
aa983418f9 Bug 834172 - Don't export codec functions from DecoderTraits. r=cpearce
All codec-specific code is hidden within DecoderTraits and available
from generic interfaces. This patch removes the codec-specific
functions from DecoderTraits' public interface.
2013-03-04 10:24:45 -05:00
Thomas Zimmermann
979b84ab7c Bug 834172 - Implement CreateReader in DecoderTraits. r=cpearce
MediaDecoderReaders are now created from within DecoderTraits. The
codec-specific code has been removed from class MediaDecodeTask.
2013-03-04 10:24:45 -05:00
Thomas Zimmermann
a8e6dcf6bc Bug 834172 - Implement IsSupportedTypeInVideo in DecoderTraits. r=cpearce
This change moves the policy of supported media types in the element
nsHTMLMediaElement to the DecoderTraits class. The codec-specific code
has been removed from the media element.
2013-03-04 10:24:44 -05:00
Thomas Zimmermann
a800a171d2 Bug 834172 - Implement CreateDecoder in DecoderTraits. r=cpearce
The class DecoderTraits knows about all supported decoders. Adding
an interface to create decoder instances simplifies all users of this
functionality. nsHtmlMediaElement has been updated to use the new
function.
2013-03-04 10:24:44 -05:00
Ed Morley
59e1595457 Backed out changeset 9a0c5073da59 (bug 846687) for test_seek.html failures 2013-03-04 11:25:08 +00:00
Paul Adenot
e37c627599 Bug 846687 - Set the transport as non-seekable if the server sends Accept-Ranges, but no Content-Duration. r=cpearce 2013-03-01 19:55:01 +01:00
Benjamin Peterson
e008828e53 Bug 847088 followup - Reference type with correct namespace. 2013-03-03 13:27:36 -05:00
Andrea Marchesini
4237649a33 Bug 847088 - Fix gstreamer backend, which was broken by TimeRange changes. r=benjamin
--HG--
extra : amend_source : c1780a6d76ba11d0123d0637b4a8c0b95ac57f90
2013-03-03 12:01:05 -05:00
Andrea Marchesini
8eaecd7c18 Bug 841014 - Rename nsTimeRanges.h to TimeRanges.h. r=Ms2ger
--HG--
rename : content/html/content/src/nsTimeRanges.cpp => content/html/content/src/TimeRanges.cpp
rename : content/html/content/src/nsTimeRanges.h => content/html/content/src/TimeRanges.h
2013-03-02 14:14:44 -05:00
Ms2ger
b3e66fbcf9 Bug 846769 - Allow up to five assertions in test_seek.html. 2013-03-02 10:23:39 +01:00
Paul Adenot
b735d97a22 Bug 846769 - The assertion also happens on Linux, pushing on a CLOSED TREE. r=RyanVM 2013-03-01 17:58:12 +01:00
Paul Adenot
6f002d2d5d Bug 846769 - Another assertion can happen, and is not windows-only, on a CLOSED TREE r=RyanVM 2013-03-01 17:08:54 +01:00
Paul Adenot
15276e6154 Bug 634747 - Expect some assertions on windows on test_seek.html while we investigate. r=edmorley 2013-03-01 15:18:58 +01:00
Paul Adenot
47dba05422 Bug 845633 - Make an assertion less spammy when audio hardware is not present. r=kinetik 2013-02-28 18:11:04 +01:00
Paul Adenot
70e0b8d965 Bug 846320 - Offset mBasePosition by mStartTime when seeking. r=kinetik 2013-02-28 16:05:50 +01:00
Paul Adenot
28716a06a4 Bug 846320 - Remove SimpleTest.expectAssertions in test_seek.html. r=dbaron 2013-02-28 16:07:58 +01:00
L. David Baron
3c1156d59c Bug 404077: Adjust annotations of expected assertions. 2013-02-28 17:59:07 -08:00
L. David Baron
05d656bf0a Bug 404077: Adjust annotations of expected assertions. 2013-02-28 12:44:57 -08:00
Paul Adenot
c27c17eb19 Bug 845676 - Remove most of the assertion annotations in the content/media mochitests. r=dbaron 2013-02-28 18:33:28 +01:00
Paul Adenot
dfdbcabaaa Bug 845676 - Initialize mPausedForPlaybackRateNull in MediaDecoder constructor to prevent an assertion. r=kinetik 2013-02-27 20:38:11 +01:00
Ehsan Akhgari
5b6e81b5cf Bug 838065 - Re-enable the decodeAudioData tests; r=roc 2013-02-27 16:59:46 -05:00
Randell Jesup
a6d2f2247d Bug 846103: Make MediaStream::RemoveListener() callable on Destroy()ed streams r=roc 2013-02-28 14:53:38 -05:00
Ms2ger
c6832bb745 Merge m-i to b-s. 2013-02-28 14:46:10 +01:00
Gregory Szorc
27c42e83c6 Merge mozilla-central into build-system
The 3 merged files had no conflicts and were manually verified to ensure
no incompatible changes crept in.
2013-02-27 21:02:02 -08:00
Gregory Szorc
803629b9c6 Merge mozilla-central into build-system
There were merges in configure.in and some Makefile.in. None had any
conflicts. I spot verified the Makefile.in changes and confirmed that
the changes did not touch any DIRS* variables.
2013-02-27 10:03:52 -08:00
Ed Morley
48a74b755b Backed out changeset dba7a059ed22 (bug 843214) 2013-02-27 12:49:26 +00:00
Ms2ger
2801c25ab8 Merge m-c to b-s. 2013-02-26 19:09:25 +01:00
Gregory Szorc
fee2be3026 Bug 784841 - Part 18g: Convert /content; r=glandium 2013-02-25 12:47:19 -08:00
Robert O'Callahan
de4bc36a35 Bug 843214. Make SourceMediaStream::AddTrack/AppendToTrack/HaveEnoughBuffered/DispatchWhenNotEnoughBuffered/EndTrack smoothly handle cases where track does not exist. r=jesup
--HG--
extra : rebase_source : adcfa0e92b5e498c597e16e013fdcba2dae4b8e5
2013-02-25 22:25:07 +13:00
L. David Baron
ff34707a75 Bug 404077: Adjust annotations of expected assertions. 2013-02-27 10:37:19 -08:00
Robert O'Callahan
d2391664ce Bug 843214. Make SourceMediaStream::AddTrack/AppendToTrack/HaveEnoughBuffered/DispatchWhenNotEnoughBuffered/EndTrack smoothly handle cases where track does not exist. r=jesup 2013-02-25 22:25:07 +13:00
L. David Baron
9fd9672955 Bug 404077: Adjust annotations of expected assertions. CLOSED TREE 2013-02-27 18:12:17 -08:00
L. David Baron
e2654f58c5 Bug 404077: Adjust annotations of expected assertions. CLOSED TREE 2013-02-27 17:58:48 -08:00
L. David Baron
47da81cd7a Bug 404077: Adjust annotations of expected assertions. 2013-02-27 15:50:10 -08:00
L. David Baron
05d5d9dfa9 Bug 404077: Use navigator.platform.startsWith rather than navigator.platform.indexOf, at Jesse's suggestion. 2013-02-26 22:23:08 -08:00
Chris Pearce
3baaf53adc Bug 841239 - Have HTMLMediaElement.canPlayType respond affirmatively to codecs=mp3 and audio/x-m4a. r=padenot 2013-02-27 09:27:43 +13:00
Bobby Holley
2589449122 Bug 834732 - Audit callers of GetNativeContext and use AutoPushJSContext where appropriate. r=mrbkap 2013-02-26 11:04:13 -08:00
Jacek Caban
b59eb40039 Bug 844905 - Change MediaResource::GetContentType return type to nsCString. r=cpearce 2013-02-26 12:02:20 +01:00
Ehsan Akhgari
dbd98a978d Bug 836072 - Validate the arguments to AudioParam.exponentialRampToValueAtTime() correctly; r=roc
--HG--
extra : rebase_source : 4da10bc054e2d978b3639a537bd46b2614586647
2013-01-29 18:30:22 -05:00
Paul Adenot
e3f9f4377e Bug 844951 - Setting playbackRate and mozPreservesPitch before the decoder creation should work. r=kinetik 2013-02-26 09:52:23 +01:00
Paul Adenot
4f2efc2090 Bug 844563 - Crash [@ mozilla::MediaDecoder::SetPreservesPitch], add tests. r=kinetik 2013-02-26 09:52:11 +01:00
L. David Baron
4f4296979b Bug 404077: Annotate known assertions in mochitests. 2013-02-25 18:39:21 -08:00
Ryan VanderMeulen
6c7d5c0ade Backed out changeset 78c3801aed19 (bug 825329) for intermittent orange. 2013-02-22 11:45:32 -05:00
Paul Adenot
ea63943c0e Bug 825329 - Properly implement AudioStream::GetPlaybackRate. r=kinetik 2012-12-28 23:01:38 +01:00
Daniel Holbert
66a3c9644d Bug 843929 - Part 3: Add '(void) mFps' to silence Wunused-private-field warnings, until the code that uses it is turned on. r=jesup 2013-02-22 06:59:45 -05:00
Daniel Holbert
c43defdf94 Bug 843929 - Part 2: Add '(void) mEchoCancel' to silence Wunused-private-field warnings, until the code that uses it is turned on. r=jesup 2013-02-22 06:59:29 -05:00
Daniel Holbert
54b8a8553c Bug 843929 - Part 1: Remove no-longer-used private variables mTrackID & mLastEndTime from MediaEngineWebRTCVideoSource. r=jesup 2013-02-22 06:59:11 -05:00
Randell Jesup
eb711b7f7d Bug 842715: add prefs for default getUserMedia resolution r=derf 2013-02-20 10:18:54 -05:00
Chris Pearce
4550c08567 Bug 830171 - Use SourceReader in async mode to better allow shutdown on MediaResource close. r=padenot 2013-02-15 21:35:48 +13:00
Chris Pearce
507303f649 Bug 839031 - Block non-whitelisted WMF decoder objects. r=padenot 2013-02-15 14:11:17 +13:00
Chris Pearce
fba0401879 Bug 839031 - Report Content-Type on WMFByteStream to faciliate WMF selecting the right decoder. r=padenot 2013-02-15 14:11:05 +13:00
Chris Pearce
5607881905 Bug 839031 - Store the Content-Type/MIME-Type on MediaResource. r=padenot 2013-02-15 14:10:58 +13:00
Chris Pearce
3be42714d5 Bug 839031 - Implement WMFByteStream::Read(). r=padenot 2013-02-15 14:10:21 +13:00
Chris Pearce
23588c2a1a Bug 839055 - Refuse to play a video file with WMF which has corrupt or unplayable video or audio streams. r=padenot 2013-02-15 12:54:27 +13:00
Peter Van der Beken
7e3e8c9052 Fix for bug 839529 (Remove various CC participants that don't do anything). r=smaug.
--HG--
extra : rebase_source : 8a272905c79396e7ae08aaaf83566ac450c45be0
2013-02-07 10:19:08 +00:00
Sotaro Ikeda
a4a7b25f49 Bug 840154 - Do not release MediaBuffer during OMXCodec is seeking. r=cdouble 2013-02-15 21:27:18 -05:00
Robert O'Callahan
9146383988 Bug 837034. Part 2: Convert DOMMediaStream to use WebIDL. r=peterv,jesup
--HG--
rename : content/media/nsDOMMediaStream.cpp => content/media/DOMMediaStream.cpp
rename : content/media/nsDOMMediaStream.h => content/media/DOMMediaStream.h
extra : rebase_source : 483fca748444db20ed0d35cb586485f277e1808c
2013-02-15 21:04:11 +13:00
Robert O'Callahan
009ce30b8d Bug 837034. Part 1: Rename nsDOM(Local)MediaStream to DOM(Local)MediaStream and put them in the mozilla namespace. r=jesup
--HG--
rename : content/media/nsDOMMediaStream.cpp => content/media/DOMMediaStream.cpp
rename : content/media/nsDOMMediaStream.h => content/media/DOMMediaStream.h
extra : rebase_source : 6fd3f71779b4ecb9d3b053b6cd844c2ff0c25f80
2013-02-15 21:01:58 +13:00
Ryan VanderMeulen
a98395cd45 Merge the last PGO-green inbound changeset to m-c. 2013-02-14 17:16:49 -05:00
Randell Jesup
1abf09a6e0 Bug 829907: release video capture device on MainThread (mac only) r=bsmedberg 2013-02-14 14:59:27 -05:00
Paul Adenot
368a5db685 Bug 828901 - Get the seek time as mBasePosition instead of the stream position in video-only stream when changing the playbackRate and seeking at the same time. r=kinetik 2013-01-10 12:26:18 +01:00
Matthew Gregan
23725cd473 Bug 841020 - Restore missing SetVolume when initializing AudioStream. r=cpearce 2013-02-14 10:57:46 +13:00
Andrew McCreight
090a8455ed Bug 839753 - Fix up CC implementation for AudioDestinationNode. r=smaug 2013-02-12 08:42:59 -08:00
Ivaylo Dimitrov
a2663aeb28 Bug 836243 - Relax gstreamer version requirement. r=alessandro.d 2013-02-13 10:37:49 -08:00
Oleg Romashin
26622d32d8 Bug 834323 - Consider to remove hardcoded samplerate from gstreamer pipeline. r=alessandro, f=rillian 2013-02-13 10:35:35 -05:00
Boris Zbarsky
81c0b2b097 Bug 618479 part 1. Clean up the nsTArray binary-insert code a little bit. r=jlebar,kinetik 2013-02-13 10:11:53 -05:00
Honza Bambas
725e26027d Bug 839175 - missing using namespace dom in MediaBufferDecoder.cpp, r=roc 2013-02-11 22:56:57 +01:00
Matthew Gregan
00bb295624 Bug 837430 - Don't hold the decoder monitor while initializing AudioStreams. r=cpearce 2013-02-08 13:46:33 +13:00
Chris Pearce
c66ffbb4a7 Bug 837842 - Make WMFByteStream::GetCapabilities() on report partially download if MediaResource is not fully cached. r=padenot 2013-02-11 11:31:43 +13:00
Randell Jesup
61ea66ea37 Bug 830247: rollup of changes to media/webrtc/trunk, and backouts of some temp patches r=ted,derf
--HG--
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/BaseFilter.cpp => media/webrtc/trunk/webrtc/modules/video_capture/windows/BaseFilter.cpp
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/BaseFilter.h => media/webrtc/trunk/webrtc/modules/video_capture/windows/BaseFilter.h
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/BaseInputPin.cpp => media/webrtc/trunk/webrtc/modules/video_capture/windows/BaseInputPin.cpp
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/BaseInputPin.h => media/webrtc/trunk/webrtc/modules/video_capture/windows/BaseInputPin.h
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/BasePin.cpp => media/webrtc/trunk/webrtc/modules/video_capture/windows/BasePin.cpp
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/BasePin.h => media/webrtc/trunk/webrtc/modules/video_capture/windows/BasePin.h
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/DShowTools.h => media/webrtc/trunk/webrtc/modules/video_capture/windows/DShowTools.h
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/MediaType.cpp => media/webrtc/trunk/webrtc/modules/video_capture/windows/MediaType.cpp
rename : media/webrtc/trunk/webrtc/modules/video_capture/main/source/Windows/MediaType.h => media/webrtc/trunk/webrtc/modules/video_capture/windows/MediaType.h
2013-02-09 23:16:10 -05:00
Phil Ringnalda
361f43b776 Back out 6a5dcf166f09 (bug 836072) for build bustage
CLOSED TREE
2013-02-07 21:35:08 -08:00
Ehsan Akhgari
32c41e5463 Bug 836072 - Validate the arguments to AudioParam.exponentialRampToValueAtTime() correctly; r=roc 2013-01-29 18:30:22 -05:00
Philip Chee
3832972428 Bug 838537 - Fix the build for VS2008. r=padenot 2013-02-06 20:59:12 +08:00
Ehsan Akhgari
94e4ec56db Bug 836599 - Part 6: Make MediaStreamGraphImpl::AppendMessage not assume that it's the only graph; r=roc 2013-02-04 12:29:14 -05:00
Ehsan Akhgari
cf993195fa Bug 836599 - Part 5: Make MediaStreamGraphImpl::RunInStableState not assume that it's the only graph; r=roc 2013-02-04 12:27:54 -05:00
Ehsan Akhgari
076bf1509f Bug 836599 - Part 4: Make MediaStreamGraphStableStateRunnable know about its owner graph; r=roc 2013-02-01 15:20:32 -05:00
Ehsan Akhgari
695f0ba22e Bug 836599 - Part 3: Make MediaStreamGraphThreadRunnable know about its owner graph; r=roc 2013-02-01 15:13:32 -05:00
Ehsan Akhgari
0ec5861e6a Bug 836599 - Part 2: Make MediaInputPort aware of its owner graph; r=roc
We need to make sure that MediaStream doesn't assume that it belongs
to the global graph so that we can have multiple graphs coexisting.
2013-02-01 14:49:58 -05:00
Ehsan Akhgari
0722f5e1a7 Bug 836599 - Part 1: Make MediaStream aware of its owner graph; r=roc
We need to make sure that MediaStream doesn't assume that it belongs
to the global graph so that we can have multiple graphs coexisting.
2013-02-01 14:43:36 -05:00
John Schoenick
fb66de7b8c Bug 837427 - Include gstreamer cflags in content/media/webaudio; r=ehsan 2013-02-05 13:34:19 -05:00
Ehsan Akhgari
6d64573151 Bug 836076 - Part 3: Make AudioParams call back into their owning node when they're modified; r=roc
We need this in order to update the MediaStreamGraph thread when an
AudioParam changes.  This enables each AudioParam to be registered with
a callback from its owner node, so that the owner node can have custom
processing code for each AudioParam's mutation.
2013-01-28 18:59:29 -05:00
Ehsan Akhgari
0dd0c24483 Bug 836076 - Part 2: Make it possible to send AudioEventTimeline objects as commands to the MSG thread; r=roc 2013-01-28 17:42:27 -05:00
Ehsan Akhgari
5c1dc30b64 Bug 836076 - Part 1: Move AudioEventTimeline.h to content/media; r=roc
--HG--
rename : content/media/webaudio/AudioEventTimeline.h => content/media/AudioEventTimeline.h
2013-01-28 17:21:43 -05:00
Ehsan Akhgari
4e8b7b6319 Bug 804387. Part 11: Fix testcase to expect correct sample rate. r=roc
--HG--
extra : rebase_source : aabab48ccaa6cbfacc2d22a425574d6e5b4109ee
2013-01-25 16:44:28 -05:00
Ehsan Akhgari
438db37746 Bug 804387. Part 10: Add a mechanism for ensuring that we don't attempt to allocate an input port if the input node is not hooked up to MSG yet. r=roc
--HG--
extra : rebase_source : dc3a202cbb94c266f6df4b0c1b5247522fc76658
2013-01-25 16:39:51 -05:00
Robert O'Callahan
6d8b72a707 Bug 804387. Part 9: Update WebAudio implementation to integrate with AudioNodeStream. r=ehsan
This is a mega-patch that was too hard to disentangle. Here's what it does:
-- Create infrastructure around AudioNode::UpdateOutputEnded to detect
when a node can no longer produce any output. When that becomes true,
disconnect it from the AudioNode graph.
-- Have AudioNode implement JSBindingFinalized to use as input in
UpdateOutputEnded.
-- Give every AudioNode a MediaStream, and give every connection
a MediaInputPort.
-- Actually play the audio that reaches the AudioContext's destination node.
-- Force AudioContext to use the audio sample rate defined by MediaStreamGraph.
-- Fix AudioBufferSourceNode's start and stop methods to possibly throw and
take default 'when' parameters.
-- Create an AudioNodeStream for AudioBufferSourceNode and give it a
AudioBufferSourceNodeEngine that does what's needed. Set parameters for
this engine in the start() and stop() methods.
-- Create AudioBuffer::GetThreadSharedChannelsForRate, which is responsible
for stealing the contents of any JS array buffers, and bundling them up
into a thread-shared read-only buffer object which can be used as
part of an AudioChunk. This method will also be responsible for
resampling and caching as necessary.

--HG--
rename : content/media/MediaStreamGraph.cpp => content/media/MediaStreamGraphImpl.h
extra : rebase_source : 9fa0ec0efa304acd6513e427103d6339c78efa53
2013-02-05 12:07:25 +13:00
Robert O'Callahan
5d60f92b6f Bug 804387. Part 8: Create AudioNodeEngine and AudioNodeStream. r=jesup
Modifies MediaStreamGraph to always advance its time by a multiple of
WEBAUDIO_BLOCK_SIZE.

--HG--
extra : rebase_source : 99524b09edd4ac0e1bc6607f2ba14925bc2f11c2
2013-01-14 11:46:57 +13:00
Robert O'Callahan
82088f3e65 Bug 804387. Part 7.5: Make Web Audio tests context-rate-independent (disabling some decodeAudioData tests). r=ehsan
--HG--
extra : rebase_source : c625c50a08da1871e79851c2a824b0e3ea170eba
2013-02-05 10:57:36 +13:00
Robert O'Callahan
93a3ca0e54 Bug 804387. Part 7.2: Let BiquadFilterNode use the actual context sample rate. r=ehsan
--HG--
rename : content/media/MediaStreamGraph.cpp => content/media/MediaStreamGraphImpl.h
extra : rebase_source : 3d50af2ff2dff9fa047d59d0f3c815dec5cc686c
2013-02-05 10:55:50 +13:00
Robert O'Callahan
a2cc2eaf26 Bug 804387. Part 7: Use a static_cast instead of dynamic check when processing ProcessedMediaStream message. r=jesup
--HG--
extra : rebase_source : 3eb9264b706e19ac19ebf2377a33871be4cbe981
2013-02-04 23:04:26 +13:00
Robert O'Callahan
56958e3201 Bug 804387. Part 6: ChangeExplicitBlockerCountImpl takes a GraphTime, not a StreamTime. r=jesup
--HG--
rename : content/media/MediaStreamGraph.cpp => content/media/MediaStreamGraphImpl.h
extra : rebase_source : c51cb893c9b6121e00a38f105f2efd2e8d70094d
2013-02-04 23:04:26 +13:00