Commit Graph

1858 Commits

Author SHA1 Message Date
Robert O'Callahan
ca6fcfb8f3 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
416cda2e64 Merge the last PGO-green inbound changeset to m-c. 2013-02-14 17:16:49 -05:00
Randell Jesup
3da3d3f210 Bug 829907: release video capture device on MainThread (mac only) r=bsmedberg 2013-02-14 14:59:27 -05:00
Paul Adenot
70170b475b 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
c9185ce652 Bug 841020 - Restore missing SetVolume when initializing AudioStream. r=cpearce 2013-02-14 10:57:46 +13:00
Andrew McCreight
8fb2f37eed Bug 839753 - Fix up CC implementation for AudioDestinationNode. r=smaug 2013-02-12 08:42:59 -08:00
Ivaylo Dimitrov
27f054a170 Bug 836243 - Relax gstreamer version requirement. r=alessandro.d 2013-02-13 10:37:49 -08:00
Oleg Romashin
0c161d0242 Bug 834323 - Consider to remove hardcoded samplerate from gstreamer pipeline. r=alessandro, f=rillian 2013-02-13 10:35:35 -05:00
Boris Zbarsky
880e764352 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
0d7005df64 Bug 839175 - missing using namespace dom in MediaBufferDecoder.cpp, r=roc 2013-02-11 22:56:57 +01:00
Matthew Gregan
af70a2cd1e Bug 837430 - Don't hold the decoder monitor while initializing AudioStreams. r=cpearce 2013-02-08 13:46:33 +13:00
Chris Pearce
24490a70f5 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
349a3e90c7 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
01a3e2e409 Back out 6a5dcf166f09 (bug 836072) for build bustage
CLOSED TREE
2013-02-07 21:35:08 -08:00
Ehsan Akhgari
0bde2b2244 Bug 836072 - Validate the arguments to AudioParam.exponentialRampToValueAtTime() correctly; r=roc 2013-01-29 18:30:22 -05:00
Philip Chee
032d4a3e20 Bug 838537 - Fix the build for VS2008. r=padenot 2013-02-06 20:59:12 +08:00
Ehsan Akhgari
b5d92eaf5e 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
661babfc7c 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
11dc6d17d3 Bug 836599 - Part 4: Make MediaStreamGraphStableStateRunnable know about its owner graph; r=roc 2013-02-01 15:20:32 -05:00
Ehsan Akhgari
9de9f6ffbe Bug 836599 - Part 3: Make MediaStreamGraphThreadRunnable know about its owner graph; r=roc 2013-02-01 15:13:32 -05:00
Ehsan Akhgari
2d219bdba7 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
8a790ac960 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
bb3a613b83 Bug 837427 - Include gstreamer cflags in content/media/webaudio; r=ehsan 2013-02-05 13:34:19 -05:00
Ehsan Akhgari
f39e83f1de 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
332078a8e8 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
b25088eff4 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
1bf3a44ce2 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
c9672d8e62 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
088271f880 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
f76919f8a0 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
945784894e 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
7654ac0348 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
edc4fc64a2 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
e24fa5a4c9 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
Robert O'Callahan
32ddb352da Bug 804387. Part 5: Add MediaStream::GraphTimeToStreamTimeOptimistic and MediaStream::StreamTimeToGraphTime. r=jesup
--HG--
rename : content/media/MediaStreamGraph.cpp => content/media/MediaStreamGraphImpl.h
extra : rebase_source : 0e08f9bb0c544b44ab4953a0f00cae233cd488c7
2013-02-04 23:04:26 +13:00
Robert O'Callahan
a83ff07d2b Bug 804387. Part 4: Move MediaStreamGraphImpl to its own header file. r=jesup
--HG--
rename : content/media/MediaStreamGraph.cpp => content/media/MediaStreamGraphImpl.h
extra : rebase_source : 3413667aa3a11c634f703db4031e3c2b0b1e018e
2013-02-04 23:04:25 +13:00
Robert O'Callahan
2785a28dd0 Bug 804387. Part 3: When a global underrun happens, don't insert blocked time, just cut that time out of the entire MediaStreamGraph timeline instead. r=jesup
--HG--
extra : rebase_source : 94f166e66f5401130b27867dd2b5ca039c704f14
2013-02-04 23:04:25 +13:00
Robert O'Callahan
07374ef1bf Bug 804387. Part 2: Fix misleading parameter name; these are NOT exactly microseconds. r=jesup
--HG--
extra : rebase_source : da23d4a4e5a9804b3c3ca19183ae048bf6012152
2013-02-04 23:04:25 +13:00
Robert O'Callahan
1a0f7249d1 Bug 804387. Part 1.5: Clean up main-thread MediaStream event listeners. r=jesup
There is no need for these to be independent objects in general and we
don't need to addref/release them. We can just require the caller to
remove them before they die.
We can also save some refcount churn by having
DispatchToMainThreadAfterStreamStateUpdate take already_AddRefed.

--HG--
extra : rebase_source : 751114a1befd73b405dff3ee986496efb6f76201
2013-02-04 23:04:24 +13:00
Robert O'Callahan
96c21b198b Bug 804387. Part 1: Make AllocateInputPort addref the returned port. r=jesup
--HG--
extra : rebase_source : a0e4d7889598577a540f132f4190225ecf12fdfb
2012-11-23 11:25:05 +13:00
Ehsan Akhgari
631b308649 Backed out 14 changesets (bug 804387) because of Android M2 crashes
Backed out changeset 80e8530f06ea (bug 804387)
Backed out changeset 3de2271ad47f (bug 804387)
Backed out changeset 00f86870931c (bug 804837)
Backed out changeset 0e3f20927c50 (bug 804387)
Backed out changeset e6ef90038007 (bug 804387)
Backed out changeset 0ad6f67a95f9 (bug 804387)
Backed out changeset d0772aba503c (bug 804387)
Backed out changeset 5477b87ff03e (bug 804387)
Backed out changeset 1d7ec5adc49f (bug 804387)
Backed out changeset 11f4d740cd6c (bug 804387)
Backed out changeset e6254d8997ab (bug 804387)
Backed out changeset 372322f3264d (bug 804387)
Backed out changeset 53d5ed687612 (bug 804387)
Backed out changeset 000b88ac40a7 (bug 804387)
2013-02-05 01:29:28 -05:00
Ehsan Akhgari
748ef8700c Backed out 3 changesets (bug 836076) becasue bug 804387 is getting backed out
Backed out changeset d567b1bb34ad (bug 836076)
Backed out changeset 51f7c9e31f9a (bug 836076)
Backed out changeset 901c735274bc (bug 836076)

--HG--
rename : content/media/AudioEventTimeline.h => content/media/webaudio/AudioEventTimeline.h
2013-02-05 01:28:38 -05:00
Ehsan Akhgari
ded3e498cd 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
3b924bf73e 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
2b60abd278 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
52b9fcea54 Bug 804387. Part 11: Fix testcase to expect correct sample rate. r=roc 2013-01-25 16:44:28 -05:00
Ehsan Akhgari
979dd3370b 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 2013-01-25 16:39:51 -05:00
Robert O'Callahan
45c5e4a1ad Bug 804837. 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.
2013-02-05 12:07:25 +13:00
Robert O'Callahan
f4306b8a20 Bug 804387. Part 8: Create AudioNodeEngine and AudioNodeStream. r=jesup
Modifies MediaStreamGraph to always advance its time by a multiple of
WEBAUDIO_BLOCK_SIZE.
2013-01-14 11:46:57 +13:00
Robert O'Callahan
6cc145cc76 Bug 804387. Part 7.5: Make Web Audio tests context-rate-independent (disabling some decodeAudioData tests). r=ehsan 2013-02-05 10:57:36 +13:00
Robert O'Callahan
110a477f0e Bug 804387. Part 7.2: Let BiquadFilterNode use the actual context sample rate. r=ehsan 2013-02-05 10:55:50 +13:00
Robert O'Callahan
6a9acef289 Bug 804387. Part 7: Use a static_cast instead of dynamic check when processing ProcessedMediaStream message. r=jesup 2013-02-04 23:04:26 +13:00
Robert O'Callahan
e68da80237 Bug 804387. Part 6: ChangeExplicitBlockerCountImpl takes a GraphTime, not a StreamTime. r=jesup 2013-02-04 23:04:26 +13:00
Robert O'Callahan
05be93cc6b Bug 804387. Part 5: Add MediaStream::GraphTimeToStreamTimeOptimistic and MediaStream::StreamTimeToGraphTime. r=jesup 2013-02-04 23:04:26 +13:00
Robert O'Callahan
be9e936592 Bug 804387. Part 4: Move MediaStreamGraphImpl to its own header file. r=jesup
--HG--
rename : content/media/MediaStreamGraph.cpp => content/media/MediaStreamGraphImpl.h
2013-02-04 23:04:25 +13:00
Robert O'Callahan
5350b6e757 Bug 804387. Part 3: When a global underrun happens, don't insert blocked time, just cut that time out of the entire MediaStreamGraph timeline instead. r=jesup 2013-02-04 23:04:25 +13:00
Robert O'Callahan
900a1da80e Bug 804387. Part 2: Fix misleading parameter name; these are NOT exactly microseconds. r=jesup 2013-02-04 23:04:25 +13:00
Robert O'Callahan
e924eeca9a Bug 804387. Part 1.5: Clean up main-thread MediaStream event listeners. r=jesup
There is no need for these to be independent objects in general and we
don't need to addref/release them. We can just require the caller to
remove them before they die.
We can also save some refcount churn by having
DispatchToMainThreadAfterStreamStateUpdate take already_AddRefed.
2013-02-04 23:04:24 +13:00
Robert O'Callahan
11a2cb4a33 Bug 804387. Part 1: Make AllocateInputPort addref the returned port. r=jesup 2012-11-23 11:25:05 +13:00
Chris Pearce
a0a8f9ba33 Bug 836927 - Bustage fix. r=bustage 2013-02-05 10:57:29 +13:00
Chris Pearce
67fcb5bebb Bug 836927 - Make WMFByteStream bug compatible with WMF's IMFByteStream implementation. r=padenot 2013-02-05 10:34:23 +13:00
Chris Pearce
7ca4ca34ee Bug 830172 - Use a shared nsIThreadPool instead of one MFWorkQueue per WMFByteStream instance. r=padenot 2013-02-05 10:33:52 +13:00
Ehsan Akhgari
15a672004e Export MediaBufferDecoder.h, no bug 2013-02-04 13:16:57 -05:00
Paul Adenot
3c65fa8d38 Bug 804875 - Change the test, because mozFrameDelay can be 0, on a CLOSED TREE. 2013-02-04 17:37:53 +01:00
Paul Adenot
844ae24f16 Bug 804875 - Fix bustage on a CLOSED TREE. r=me 2013-02-04 15:21:44 +01:00
Matthew Gregan
807e9f0e6e Bug 835075 - Modify the mochitest. r=padenot 2013-02-04 14:08:47 +01:00
Paul Adenot
17f7e6edef Bug 804875 - Reset all the members of the VideoFrameComtainer in the Reset method. r=kinetik 2013-01-31 15:41:05 +01:00
Paul Adenot
34b0e94778 Bug 804875 - Test to check that media elements are reset appropriatly on source change. r=kinetik 2012-12-28 22:54:23 +01:00
Paul Adenot
7712541f3b Bug 804875 - Reset media element when loading a new src. r=kinetik 2012-12-27 16:21:30 +01:00
Ehsan Akhgari
b3f344575f Bug 792263 follow-up: Use class instead of struct to satisfy pesky compiler warnings (or rather, errors)
--HG--
extra : rebase_source : 900df4204ac807bb9d8e35d2837971905ecde151
2013-02-01 18:11:25 -05:00
Ehsan Akhgari
1090ae9f96 Bug 792263 - Implement decodeAudioData; r=bzbarsky,cpearce,padenot 2013-02-01 17:13:23 -05:00
L. David Baron
955347f154 Fix WARNINGS_AS_ERRORS bustage ("comparison between signed and unsigned integer expressions") from Bug 830707, Part 1 (changeset 93a4d0995cba) on a CLOSED TREE. 2013-01-31 22:24:53 -08:00
Robert O'Callahan
0cc85c72c1 Bug 830707. Part 3: Don't constrain AudioSegment to a fixed number of channels. r=jesup
--HG--
extra : rebase_source : feacede00821b6673ce04c886a9c3727a4989404
2013-01-21 09:44:44 +13:00
Robert O'Callahan
204c8b8db4 Bug 830707. Part 2: Mix channels to output channel count when playing audio. r=jesup
--HG--
extra : rebase_source : a13d8ec691689e3aa57cd42c9d437f91197d4253
2013-02-01 17:27:02 +13:00
Robert O'Callahan
994752cd0e Bug 830707. Part 1.5: Add MAX_AUDIO_SAMPLE_SIZE and tweak AddAudioSampleOffset. r=jesup
--HG--
extra : rebase_source : 75fed94d7020d375c5044f707cbfd6c29faf90af
2013-02-01 17:26:57 +13:00
Robert O'Callahan
8b062c8ad0 Bug 830707. Part 1: Add code for upmixing and downmixing following Web Audio's spec. r=jesup
--HG--
extra : rebase_source : 8cdcbc313fcd371b47ad194f2f0da1102e5e6240
2013-01-16 02:09:38 +13:00
Steve Workman
0b2877e907 Bug 813562 - Test case for garbled DASH MPD and WebM media r=cpearce 2013-01-31 18:41:26 -08:00
Steve Workman
7096303212 Bug 792935 - Test to detect DASH stream switching r=cpearce 2013-01-31 14:47:22 -08:00
Steve Workman
2d9494c6bf Back out f08e636ecdc4 (bug 792935) for mochitest failures 2013-01-31 10:54:26 -08:00
Steve Workman
fc4bfc6b91 Bug 792935 - Test to detect DASH stream switching r=cpearce 2013-01-31 09:45:45 -08:00
Randell Jesup
cf23ac0992 Bug 818670: Enable AEC in PeerConnection, AGC/NoiseSuppression in gUM (w/bustage fix) r=derf 2013-01-29 11:55:09 -05:00
Chris Jones
a46b8b76a0 Bug 834150: Just Say No to the fallback SW decoder. r=doublec a=blocking-b2g 2013-01-30 15:06:28 -08:00
Steve Workman
152c955e38 Bug 836143 - MediaDecoder should call its own OnDecodeThread for clearer error detection r=cpearce 2013-01-30 12:14:43 -08:00
Steve Workman
8e43fc5af5 Bug 836146 - Put LOG referencing mInitByteRange and mCuesByteRange in MOZ_DASH block r=kinetik 2013-01-30 11:35:02 -08:00
Jeff Walden
582b2e961d Bug 835648 - Move typed enum support to a new header. r=Ms2ger 2013-01-28 16:33:17 -08:00
Ed Morley
0428c8dbe2 Backout 40f09f7bc670 & fc262e3c635f (bug 818670) for frequent fedora64 mochitest-3 leaks on a CLOSED TREE 2013-01-30 10:32:11 +00:00
Robert O'Callahan
9f2a4c9275 Bug 806754. Part 2: Fix bogus assertions. r=cpearce
SendStreamAudio gets called by SendStreamData which can be called
on the state machine thread since bug 794426 was fixed.
At the same time PlayFromAudioQueuec can no longer guarantee that
mAudioCaptured is false. It could be true and we're waiting for
the audio thread to shut down. We can just remove that assertion;
the logic in SendStreamData guarantees that we don't try to pass
audio to MediaStreams until the audio thread has actually stopped.

--HG--
extra : rebase_source : 431b4af63710ef13a57f7560aeec553b8aae6139
2013-01-30 17:20:03 +13:00
Robert O'Callahan
43cf1c22e6 Bug 806754. Make MediaDecoders detect when a MediaStream has been destroyed because its DOM wrapper has been collected, and remove the no-longer-relevant MediaStream from the output list. r=cpearce
--HG--
extra : rebase_source : a7316907f453330c0c23eb7a11afb3c2cd5a1e9c
2013-01-30 17:19:03 +13:00
Ryan VanderMeulen
18cfd86d7e Backed out changeset 3eb633a97c1f (bug 835648) for suspected Windows orange on a CLOSED TREE. 2013-01-29 19:01:45 -05:00
Randell Jesup
dbcf164ddf bug 804875: backout due to regressions of various uses of .src/mozSrcObject (bugs 836011/835705) rs=kinetik 2013-01-29 18:07:29 -05:00
Jeff Walden
129a025dee Bug 835648 - Move typed enum support to a new header. r=Ms2ger
--HG--
extra : rebase_source : 8c912fba889c1c5435e3619714071502fbfb30a3
2013-01-28 16:33:17 -08:00
Randell Jesup
0e1d434873 Bug 818670: Enable AEC in PeerConnection, AGC/NoiseSuppression in gUM (w/bustage fix) r=derf 2013-01-29 11:55:09 -05:00
Ed Morley
382ec96750 Backout df75a87cce60 & 19e164f7d88d (bug 818670) for build bustage on a CLOSED TREE 2013-01-29 17:28:30 +00:00
Randell Jesup
86ad09285d Bug 818670: Enable AEC in PeerConnection, AGC/NoiseSuppression in gUM r=derf 2013-01-29 11:55:09 -05:00
Robert O'Callahan
f00979ce1a Bug 832788. Part 3: AudioListener DopplerFactor/SpeedOfSound should take float per WebIDL. r=ehsan
--HG--
extra : rebase_source : d435b1678b09075cecf75e8da64364ec62964d00
2013-01-29 14:40:59 +13:00
Robert O'Callahan
0c85c828e0 Bug 832788. Part 2: AudioEventTimeline::IsValid needs to accept double. r=ehsan
--HG--
extra : rebase_source : 74c278d121419448b264ec3be4b8717bd99e15d1
2013-01-29 14:40:26 +13:00
Steve Workman
ee7bb7cf5d Bug 792935 - Add DASH to gPlayedTests and gPlayTests r=cpearce 2013-01-28 18:34:28 -08:00
Steve Workman
5b6a96852d Bug 792935 - Add DASH to test_info_leak, test_progress and test_standalone r=cpearce 2013-01-28 18:34:28 -08:00
Steve Workman
9b165aa46e Bug 792935 - Remove code to cancel DASH subsegment downloads during a seek r=cpearce 2013-01-28 18:34:28 -08:00
Steve Workman
dca1ab16b3 Bug 792935 - Aggregate results from IsDataCachedToEndOfResource from DASH sub-decoders r=cpearce 2013-01-28 18:34:28 -08:00
Steve Workman
f2ebfcf163 Bug 792935 - Aggregate results from GetBuffered from sub-decoders r=cpearce 2013-01-28 18:34:27 -08:00
Ehsan Akhgari
ed449ffe07 Bug 834929 - Part 3: Squeeze two members of Event into a union to reduce its size; r=roc 2013-01-28 15:40:12 -05:00
Ehsan Akhgari
8a4ca2d6ca Bug 834929 - Part 2: Remove FloatArrayWrapper and just copy the curve array when needed; r=roc 2013-01-25 16:46:44 -05:00
Ehsan Akhgari
05c142ab9f Bug 834929 - Part 1: Store the default/min/max values on the AudioParam itself; r=roc 2013-01-25 14:26:31 -05:00
Peter Van der Beken
b9d2ae906f Fix for bug 816088 (webIDL bindings try to extract nsISupports from the global object in static properties in workers). r=bz.
--HG--
extra : rebase_source : 5668d9e01bff0fe7831d98018428856e5940a620
2012-12-03 17:07:49 +01:00
Ed Morley
bc0702d0d7 Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures 2013-01-28 11:08:21 +00:00
Peter Van der Beken
b46afdef94 Fix for bug 816088 (webIDL bindings try to extract nsISupports from the global object in static properties in workers). r=bz.
--HG--
extra : rebase_source : 68e5630591f6209e2af9c5cd2321fed8edd3de24
2012-12-03 17:07:49 +01:00
Ehsan Akhgari
19fa75a45d Bug 834869 - AudioBuffer's Unlink method should drop js objects; r=mccr8
--HG--
extra : rebase_source : 3ee8bc593cdffff135a7094eacee7c5d34c70848
2013-01-25 16:21:22 -05:00
Alexandros Chronopoulos
517f9c59b4 Bug 790458 - Support multichannel Opus on mobile. r=rillian
Previously we stereo playback of multichannel Opus files only
for the floating-point audio pipeline.

This commit adds a fixed-point version of the downmix matricies
for use with the integer sample type used on most mobile platforms.
2013-01-23 16:44:00 -08:00
Andrew Halberstadt
a466d10a02 Bug 834382 - Disable failing b2g emulator crashtests, r=jgriffin 2013-01-24 15:07:07 -05:00
Paul Adenot
ceb74b1d4d Bug 819377 - Don't offset the clock by the start time of the video in AdvanceFrame, and set the media as playing earlier. r=kinetik 2013-01-24 20:28:48 +01:00
Paul Adenot
72f6e6ed5f Bug 814308 - MediaDecoder::SetDuration doesn't handle aDuration=inf correctly. r=kinetik 2013-01-24 20:28:48 +01:00
Paul Adenot
3ba152d8e6 Bug 804875 - Tests. r=kinetik 2013-01-24 20:28:48 +01:00
Paul Adenot
e375707db6 Bug 804875 - Reset media element when loading a new src. r=kinetik 2013-01-24 20:28:48 +01:00
Robert O'Callahan
fc44cd635c Bug 804837. Part 0: Rework the connection and input/output port logic for Web Audio nodes; r=ehsan
Here's what this patch does:
-- Makes AudioNodes mostly not use nsWrapperCache. AudioDestinationNode
still does.
-- Rename MaxNumberOfInputs/Outputs to NumberOfInputs/Outputs, and have them
default to 1 in AudioNode.
-- Allow any number of nodes to be connected to any given input/output port.
2013-01-23 19:50:18 -05:00
Steve Workman
25cd3bf993 Bug 792935 - Forward suspend and resume to sub-decoders r=cpearce 2013-01-23 11:24:56 -08:00
Steve Workman
8ca1ea4121 Bug 792935 - Restore correct playState after state machine initialization r=cpearce 2013-01-23 11:24:42 -08:00
Steve Workman
5bc80448f7 Bug 792935 - Do not close MPD resource before shutdown r=cpearce 2013-01-23 11:24:42 -08:00
Steve Workman
d112ad3a77 Bug 792935 - Add decoder cloning support to DASH for mozLoadFrom r=cpearce 2013-01-23 11:24:41 -08:00
Steve Workman
e30ae6ad32 Bug 792935 - Miscellaneous fixes for DASH Mochitests r=cpearce 2013-01-23 11:24:41 -08:00
Steve Workman
c65cca2192 Bug 792935 - Add DASH to various Media Mochitests r=cpearce 2013-01-23 11:24:41 -08:00
Steve Workman
94fc543ce7 Bug 792935 - Add DASH to gSmallTests and gSeekTests to manifest.js (Media Mochitests) r=cpearce 2013-01-23 11:24:41 -08:00
Steve Workman
66af55cbbb Bug 792935 - Add tests for canPlayType for DASH (Media Mochitests) r=cpearce 2013-01-23 11:24:41 -08:00
Matthew Gregan
da53b0d96e Bug 833578 - Start AudioSegment playing after first write rather than waiting for AudioStream's buffer to fill. r=roc 2013-01-23 18:53:10 +13:00
Ehsan Akhgari
16e89b722a Bug 833631 - Unprefix mozAudioContext; r=roc
--HG--
extra : rebase_source : 3c477a97ea842a806f6fad6f5c3a81d6e50b27c3
2013-01-22 20:12:21 -05:00
Sotaro Ikeda
a6e02efecf Bug 826756 - Update video image size. r=cdouble 2013-01-23 18:08:16 -05:00
Chris Pearce
c9887127f0 Bug 823646 - Handle dynamic format changes and video frame display apperature attributes in WMFReader. r=padenot 2013-01-21 14:38:47 +13:00
Steve Fink
57a2c2471b Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence 2012-12-31 12:40:21 -08:00
Steve Fink
380ecf9335 Backed out changeset fce4e0f8a553 (bug 828753) for breaking windows warnings-as-errors (stop adding JSObject forward decls, please!) 2013-01-18 13:20:21 -08:00
Steve Fink
01f8a5b4d8 Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence
--HG--
extra : rebase_source : c8806b27677594925ad0e6b54c47af5cf17e1153
2012-12-31 12:40:21 -08:00
Paul Adenot
6a0db176ba Bug 829042 - Remove dead PlaybacKRateChanged member. r=cpearce 2013-01-18 16:57:17 +01:00
Paul Adenot
1f8e6e004c Bug 793274 - Make sure to have enough frames pushed to the AudioStream before starting it. r=kinetik 2012-11-26 15:13:08 +01:00
Paul Adenot
e08c07e9d8 Bug 822933 - Properly check if a WebM file has cues. r=kinetik 2012-12-23 16:51:17 +01:00
Ehsan Akhgari
fa8dda9057 Remove a trailing comma from the ColorFormat enum in order to prevent compiler warnings, no bug 2013-01-18 09:13:26 -05:00
Paul Adenot
2aa6371d20 Bug 821737 - r=kinetik 2013-01-18 14:21:47 +01:00
Chris Double
24fa37e107 Bug 831640 - Remove unused AddRef/Release methods on MediaDecoderReader - r=ehsan 2013-01-17 17:46:00 +13:00
Randell Jesup
db14a79f0f Bug 831427: Gate RemoveListener(stream) to avoid calling if Destroy() pending r=roc 2013-01-17 02:38:21 -05:00
Trevor Saunders
9f0ad48b28 bug 822289 - remove NS_IMPL_CYCLE_COLLECTION_CLASS and friends r=mccr8 2013-01-12 07:40:33 -05:00
Ed Morley
f91b0cbc29 Backout b3a8618f901c (bug 829042), 34a9ef8f929d (bug 822933), 4c1215cefbab (bug 826349), 70bb7f775178 (bug 825325), e9c8447fb197 (bug 828713), eb6ebf01eafe (bug 828901), f1f3ef647920 (bug 825329), f9d7b5722d4f (bug 825329), 5add564d4546 (bug 819377), 55e93d1fa972 (bug 804875), f14639a3461e (bug 804875), 23456fc21052 (bug 814308) for Windows pgo-only mochitest-1 media test timeouts on a CLOSED TREE 2013-01-16 15:16:23 +00:00
Ed Morley
34382ead59 Backout 1abf4c88f8f1 (bug 793274) on suspicion of causing win pgo-only mochitest-1 media test timeouts 2013-01-16 10:44:06 +00:00
Matthew Gregan
9c5603816b Bug 826104 - Fix audio thread shutdown crash. r=roc 2013-01-14 18:25:02 +13:00
Paul Adenot
bf345ec0dc Bug 829042 - Remove dead PlaybackRateChanged member. r=cpearce 2013-01-15 19:57:04 +01:00
Paul Adenot
b3491e3459 Bug 793274 - Make sure to have enough frames pushed to the AudioStream before starting it. r=kinetik 2012-11-26 15:13:08 +01:00
Paul Adenot
452ff3b1a5 Bug 822933 - Properly check if a WebM file has cues. r=kinetik 2012-12-23 16:51:17 +01:00
Paul Adenot
0e6d22d211 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-15 19:57:03 +01:00
Paul Adenot
866ba5a7d9 Bug 825329 - Update tests. r=kinetik 2013-01-15 19:57:03 +01:00
Paul Adenot
22a6f7cfee Bug 825329 - Fixed the getter for the playbackRate in AudioStream. r=kinetik 2013-01-15 19:57:03 +01:00
Paul Adenot
030b75ad9a Bug 819377 - Don't offset the clock by the start time of the video in AdvanceFrame, and set the media as playing earlier. r=kinetik 2013-01-15 19:57:03 +01:00
Paul Adenot
9ecc2008bc Bug 804875 - Tests. r=kinetik 2013-01-15 19:57:03 +01:00
Paul Adenot
d5687c284b Bug 804875 - Reset media element when loading a new src. r=kinetik 2013-01-15 19:57:03 +01:00
Paul Adenot
0cb7cd4040 Bug 814308 - MediaDecoder::SetDuration doesn't handle aDuration=inf correctly. r=kinetik 2013-01-15 19:57:00 +01:00
Mats Palmgren
94ede408a1 Bug 786533 - On Windows, one of the system header files (windef.h) defines 'min' and 'max' as macros which breaks any use of std::min/std::max. Define NOMINMAX before including system header files where needed to avoid defining those macros. r=ehsan 2013-01-15 13:22:03 +01:00
Mats Palmgren
6c53161814 Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
Ehsan Akhgari
3c00b9a104 Bug 827541 follow-up: Make sure that the test case actually instantiates an AudioContext object the first time, as opposed to just access the constructor function through a property access 2013-01-15 01:15:25 -05:00
Andrew McCreight
e8316cb0be Bug 827541 - Traverse/Unlink nsGlobalWindow::mAudioContexts. r=ehsan 2013-01-14 15:22:00 -08:00
Dan Mosedale
03dd7713f3 Bug 829314, enable webrtc_trace logging for getUserMedia's VideoEngine, r=jesup 2013-01-11 15:30:20 -08:00
Chris Peterson
34d009dfe8 Bug 829685 - Remove #include "prtypes.h" from some files that no longer use PR types. r=ehsan 2013-01-10 08:19:36 -08:00
Robert O'Callahan
851a0582da Bug 827537. Refactor AudioChunk to support having separate buffers for each channel. r=jesup
--HG--
extra : rebase_source : 0aa26e1c3181d9fe5158520d4b33248bae0fa5d0
2012-11-22 18:04:27 +13:00
Nathan Froyd
5023298814 Bug 829223 - fix FileBlockCache to consistently use 64-bit offsets; r=roc 2013-01-10 15:21:50 -05:00
Randell Jesup
b9d1a6ca0b Bug 828828: Use monitor around all accesses to stream array r=derf 2013-01-10 11:52:53 -05:00
Ed Morley
d2cb70aa5c Bug 751539 - Disable test_played.html for too many intermittent failures 2013-01-10 14:59:26 +00:00
Marco Chen
bcc528b62f Bug 823445 - Avoiding deadlocks and main-thread blockage on input streams, by not taking the lock in FileMediaResource::Close. r=roc, a=blocking-basecamp 2013-01-08 17:52:24 +08:00
Robert O'Callahan
08b4d3211a bug 824294. Check for null (destroyed) element just before we call PlaybackEnded on it. r=doublec 2013-01-05 17:00:42 +13:00
Chris Double
07758d927e Bug 825485 - AAC files don't play on B2G - r=cjones 2013-01-07 12:55:50 +00:00
Randell Jesup
3f4f93b9f6 Bug 826576: Stop LocalMediaStreams before Destroy r=roc 2013-01-06 21:31:34 -05:00
Randell Jesup
307173aba3 Bug 827007: Implement Stop for UserMediaStreams; add NotifyRemoved for MediaStream listeners r=roc 2013-01-06 21:31:30 -05:00
Robert O'Callahan
d254dc4188 Bug 822956. Part 2: Don't wrap getUserMedia's SourceMediaStream in a DOM object wrapper. Create an nsDOMUserMediaStream wrapper specifically to clean up the SourceMediaStream and the MediaInputPort. r=jesup 2013-01-04 12:16:32 -05:00
Randell Jesup
24ac0fe4a6 Bug 822956: convert to TrackUnionStreams for getUserMedia (and add hint support) r=roc 2012-12-19 02:07:37 -05:00
Michal Novotny
12d630095e Bug 725993 - Remove usage of STORE_ON_DISK_AS_FILE flag in media cache, r=roc 2013-01-04 00:27:04 +01:00
Jacek Caban
32674e9106 Bug 823921 - Fixed content/media/wmf compilation on mingw r=khuey 2013-01-02 18:26:08 +01:00
Masatoshi Kimura
b5e27745c8 Bug 824247 - Part 3: Disable FAIL_ON_WARNINGS on not-yet-warning-free directories on MSVC. r=ted 2013-01-03 00:56:38 +09:00
Robert O'Callahan
6cd2aebe3a Bug 814718. Explicitly store the blocking state that we last delivered to MediaStreamListeners. r=jesup 2013-01-02 14:49:18 +01:00
Randell Jesup
11f9186e84 Bug 816664: wallpaper patch for negative delta times for video frames r=roc,derf 2012-11-30 03:08:17 -05:00
Randell Jesup
67ba2367db Bug 804760: Drop cached image when we stop capturing + debugs r=anant 2012-12-29 21:55:24 -05:00
Ms2ger
020367e2ed Backout bug 814718, bug 717178 for exceptions in test_text.html on Windows. 2013-01-01 13:34:34 +01:00
Robert O'Callahan
a4f7d11c72 Bug 814718. Explicitly store the blocking state that we last delivered to MediaStreamListeners. r=jesup 2013-01-01 16:45:43 +13:00
Randell Jesup
410542abca Bug 811757: Allow the user to explicitly share devices between tabs r=anant 2012-12-31 18:12:12 -05:00
Josh Matthews
df590b9c83 Backed out changeset 7d6255d1c547 (bug 816664) 2012-12-28 19:03:48 -05:00
Randell Jesup
a96f37681d Bug 816664: wallpaper patch for negative delta times for video frames r=derf 2012-12-28 15:34:01 -05:00
Jacek Caban
a8d8dffa03 Bug 823924 - Don't hardcode system directory when loading WMF libraries r=paul 2012-12-27 15:03:55 +01:00
Jacek Caban
608c3c6165 Bug 823921 - Replaced _com_ptr_t usage by RefPtr r=paul 2012-12-27 15:02:37 +01:00
Jacek Caban
7b78ecdea8 Bug 823921 - Fixed GCC warnings r=paul 2012-12-26 11:27:28 +01:00
Chris Jones
a3794cb9e4 Bug 824230: Handle UNKNOWN_ERROR in OmxDecoder. r=doublec 2012-12-24 15:43:10 -08:00
Nicholas Nethercote
df43bc1128 Bug 824397 - Use NS_ENSURE_{TRUE,FALSE,SUCCESS}_VOID(foo) instead of NS_ENSURE_{TRUE,FALSE,SUCCESS}(foo, ). r=derf. 2012-12-23 20:45:57 -08:00
Iordache Catalin
37fae14b4e Bug 821396 - Fix warnings in DASHDecoder.cpp and DASHRepDecoder.cpp. r=cpearce 2012-12-23 11:19:15 -05:00
Benoit Jacob
15e76af32f Bug 802827 - report Stagefright feature in AppNotes - r=joedrew 2012-12-21 17:32:15 -05:00
Randell Jesup
8f7cb1702e Bug 822956: backout 3dead2094684 due to breaking normal PeerConnection cases rs=me 2012-12-20 14:23:55 -05:00
Matthew Gregan
a3df31fa18 Bug 822952 - Dispatch events from UpdateReadyState only when the state has changed. r=roc 2012-12-19 17:48:32 +13:00
Randell Jesup
182f2a4a27 Bug 822956: convert to TrackUnionStreams for getUserMedia (and add hint support) r=roc 2012-12-19 02:48:12 -05:00
Ralph Giles
6dd8bd1cc2 Bug 816994 - Skip Opus packets with invalid lengths. r=derf
Reject Opus packets less than 2.5 ms or more than 120 ms
in length, which are invalid by the spec. Also explicitly
check for error after opus_packet_get_nb_frames() since
this could indicate the subsequent call to
opus_packet_get_samples_per_frame() call will segfault
because the packet buffer length is invalid.

Based on a patch by Tim Terriberry.
2012-12-11 11:25:10 -08:00
Chris Pearce
64e2930074 Bug 799315 - Use Windows Media Foundation to play back MP4, MP3 and M4A on Windows 7 and later (preff'd off). r=padenot 2012-12-18 21:49:58 +13:00
Chris Pearce
cedcf61f3a Bug 815748 - Add MP3 and M4A audio files to media test framework, use gizmo.mp4 instead of short.mp4 for sniffer test, since short.mp4 contained mpeg4 video rather than h.264. r=padenot 2012-12-18 21:38:37 +13:00
Chris Double
596de89d1c Bug 821160 - Part1: Media plugin backend changes for Froyo support - r=cpeterson 2012-12-18 14:44:10 +13:00
Steve Workman
9332fbdb86 Bug 816741 - Add a callback function in WebMReader for nestegg logging r=kinetik 2012-12-17 14:26:55 -08:00
Ed Morley
e677501238 Remove spurious newline to fix bustage (no bug) 2012-12-17 13:36:11 +00:00
Ed Morley
101d6f1002 Bug 814533 - Disable test_playback_rate.html on Linux for too many intermittent failures 2012-12-17 13:21:18 +00:00
Robert O'Callahan
e5e466078c Bug 794426. Don't call StopAudioThread from the main thread when we start capturing audio to a MediaStream. Instead, let the state machine thread call StopAudioThread. r=cpearce 2012-12-04 23:59:36 +13:00
Jeff Walden
7146c23e80 Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger 2012-12-14 18:58:45 -05:00
Chris Pearce
073a7f982a Bug 821495 - Add cast to silence unnecessary data loss compile warning in AudioSampleFormat.h. r=kinetik 2012-12-14 12:11:50 +13:00
Steve Workman
858b827793 Bug 820596 - Defend against nullptr calls to mDecoderStateMachine and mReentrantMonitor r=cpearce 2012-12-13 11:42:45 -08:00
Steve Workman
f126d025a2 Bug 820588 - Aggregate and forward statistics in DASH decoder classes r=cpearce 2012-12-13 11:42:45 -08:00
Steve Workman
944aa9c5e2 Bug 816726 - Add seeking capabilities to DASH-WebM code r=cpearce 2012-12-13 11:42:45 -08:00
Steve Workman
306debd37e Bug 816726 - Return timestamp in nestegg_get_cue_point to support DASH-WebM Seeking r=kinetik 2012-12-13 11:42:44 -08:00
Joel Maher
8b30c770c3 Bug 820649 - disable 4 crashtests on Android so we can run C1 again. r=gbrown 2012-12-13 06:31:55 -05:00
Chris Double
80a5fd4b30 Bug 820661 - Implement support for libstagefright video decoding on HTC EVO Design Gingerbread Android phone - r=cpeterson
--HG--
extra : rebase_source : 366ebc9e9a3867edab439069094f21b8c8204174
2012-12-13 11:56:01 +13:00
Edwin Flores
71779c6bff Bug 803394 - Provide a callback to media plugins to request video buffers owned by gecko r=doublec
--HG--
extra : rebase_source : e3cb97f3307b603bcdfcdbaeffd05a6e2af14097
2012-12-13 11:53:58 +13:00
Chris Jones
d3257c3260 Bug 819609: Don't try to send too-large videos to hardware video decoders. r=doublec a=blocking-basecamp 2012-12-10 23:48:58 -08:00
Chris Double
c3e8a05966 Bug 817478 - Part1: omx plugin changes for sony device support - r=cpeterson
--HG--
extra : rebase_source : fa7730805d5b47803226e43c6aab3d6dd074aadf
2012-12-11 09:52:46 +13:00
Chris Pearce
cd2ea6ffe7 Bug 815107 - Ensure AudioClock::mOldOutRate has sensible value, prevents audio clock position poisoning on one code path, and initialize AudioClock::mOldBasePosition to 0. r=padenot 2012-12-11 09:43:04 +13:00
Saurabh Anand
c9e3659e16 Bug 818817 - Fix some compiler warnings, r=Ms2ger 2012-12-09 22:53:19 +05:30
Paul Adenot
8890b245de Bug 816949 - Remove IsSeekableInBufferedRange() methods as they are not needed anymore. r=cpearce 2012-12-07 14:30:03 +01:00
Robert O'Callahan
6b30f6daf1 Bug 816664. Don't call NotifyPull if we already have all the data buffered in the stream that we need. r=jesup 2012-12-08 00:06:55 +13:00
Marco Chen
fa2305ecd5 Bug 815322 - Phone rings on incoming call will pause audio. r=kinetik, a=blocking-basecamp
1. Add a new audio channel type called ringer.
  2. Add logic into AudioChannelService for ringer.
2012-12-06 17:11:19 +08:00
Steve Workman
9374cf3e90 Bug 792404 - Add code to enable adaptive decoder and reader switching for DASH-WebM r=cpearce 2012-12-06 15:27:08 -08:00
Ehsan Akhgari
7661e62a66 Bug 818672 - Implement BufferMediaResource; r=cpearce,roc 2012-11-22 16:44:20 -05:00
Trevor Saunders
f1b73ccb3d bug 801466 - part 3.1 remove some prmem usage from dom/ and content/ r=mounir 2012-12-05 02:55:37 -05:00
Ehsan Akhgari
30e034615a Bug 818291 - MediaDecoder::SetMediaSeekable should not be final; r=cpearce 2012-12-04 17:51:34 -05:00
Ehsan Akhgari
aaece41366 Bug 818294 - Make MediaPluginHost.cpp compile with fail-on-warnings; r=doublec 2012-12-04 17:57:44 -05:00
Mats Palmgren
60ccae9fe3 Bug 817574 - Replace NS_ABS with std::abs. r=roc 2012-12-04 13:33:33 +01:00
Paul Adenot
70f94dbb33 Bug 817403 - Remove the preskip check when playing opus chained file. r=derf 2012-12-03 15:44:26 +01:00
Edwin Flores
e7de57f05e Bug 784019 - Reduce mAmpleVideoFrames on Android so we don't starve libstagefright of gralloc buffers r=doublec 2012-12-03 15:41:06 +13:00
Steve Workman
c6edd3abd1 Bug 813562: Zero out vorbis structures in WebMReader() to avoid crashes due to uninitialized use r=kinetik 2012-11-30 16:02:46 -08:00
Chris Double
5b474300e7 Bug 805700 - Part1: omx plugin changes for Honeycomb support - r=cpeterson
--HG--
extra : rebase_source : 3b36cfa2d5b25db4b1a66727f4349f71a6e2a7db
2012-11-30 16:05:37 +13:00
Chris Double
e117d96250 Bug 787228 - Part1: Media plugin backend changes for Gingerbread support - r=cpeterson
--HG--
extra : rebase_source : 57f8058c181b1f6b47b5f0b9f0b0b8a6cc5b5f10
2012-11-30 15:37:00 +13:00
Paul Adenot
37ee1aa8dd Bug 455165 - Tests for ogg chain support. r=cpearce 2012-11-30 14:17:55 +01:00
Paul Adenot
aef1de1a87 Bug 455165 - Put some very verbose media logging behind a MOZ_QUIET=1 check. r= 2012-11-30 14:17:54 +01:00
Paul Adenot
a641c73fd5 Bug 455165 - Add support for chained ogg audio file and proper metadata dispatching. r=cpearce 2012-11-30 14:17:54 +01:00
Ehsan Akhgari
f2c331d256 Bug 816828 - Implement AudioContext.sampleRate; r=bzbarsky 2012-11-29 22:31:39 -05:00
Jan-Ivar Bruaroey
68777d5651 Bug 800538: Added MOZ_ASSERTs of passed-in VoiceEngine/VideoEngine in MediaEngineWebRTCAudio/VideoSource constructors respectively. r=jesup 2012-11-28 22:30:31 -05:00
Paul Adenot
57189361a6 Bug 816143 - Teach AudioStream::EnsureTimeStretcherInitialized() about infallible malloc. r=kinetik 2012-11-29 15:40:57 +01:00
ChangZhuo Chen
7c2606ae5f Bug 778053 - Test case for wave metadata. r=kinetik 2012-10-06 19:32:30 +08:00
ChangZhuo Chen
2b9620ef01 Bug 778053 - Read wave metadata. r=kinetik 2012-10-06 19:33:11 +08:00
Scott Johnson
29411d3842 Bug 812372: Rename DocumentViewerImpl to nsDocumentViewer for consistency. [r=ehsan] 2012-11-28 18:26:39 -06:00
Paul Adenot
c1c81fcc33 Bug 815194 - Remove more ns prefixes on content/media classes + whitespace fixes. r=cpearce 2012-11-28 20:40:07 +01:00
Jacek Caban
0f04abc26f Bug 814708 - Use nsAutoPtr for mTimeStretcher r=padenot
--HG--
extra : rebase_source : 6746cf104eac6b66bec48eb235718ad4d6853905
2012-11-28 17:25:57 +01:00
Ehsan Akhgari
88689f2f34 Merge mozilla-central into mozilla-inbound 2012-11-28 09:43:30 -05:00
Olli Pettay
1e72329799 Bug 811206, Fix JSHolder drop handling, part 3 (fixes), r=mccr8,khuey
--HG--
extra : rebase_source : 7b2726d2aa7f5764a3c4cb750e5a735728069687
2012-11-28 03:37:57 +02:00
Edwin Flores
d28bc51cd3 Bug 812756 - Set AmpleVideoFrames to the minimum to win a race when shutting down OMX.qcom.video.decoder.mpeg4 decoder r=doublec 2012-11-28 15:34:53 +13:00
Timothy B. Terriberry
a467ca0213 Bug 815825 - Rotate colors in fake video streams, r=jesup 2012-11-27 16:15:55 -08:00
Ehsan Akhgari
8ed79688df Bug 814789 - Tie the life-time of the AudioContext to the life-time of the document owning it; r=bzbarsky 2012-11-23 18:33:41 -05:00
Daniel Holbert
cf65547a8e Bug 815450: Add "u" suffix to numeric literals in TestAudioEventTimeline.cpp, to fix sign-compare build warnings. r=ehsan 2012-11-26 20:34:16 -08:00
Daniel Holbert
b6dbce0c4e Backed out changeset 704c91d3e7fa (Bug 814789) because of mac build-bustage 2012-11-26 20:34:10 -08:00
Ehsan Akhgari
993cf8162c Bug 814789 - Tie the life-time of the AudioContext to the life-time of the document owning it; r=bzbarsky 2012-11-23 18:33:41 -05:00
Edwin Flores
ed0385c3e4 Bug 812756 - Remove seeking hack from OMX decoder r=cpearce 2012-11-27 17:08:40 +13:00
Ehsan Akhgari
b76ef12ce0 Bug 815226 - Make the MediaPluginReader not depend on the concrete type of the AbstractMediaDecoder passed to it; r=cpearce 2012-11-26 16:12:24 -05:00
Andrew McCreight
28e0b1694e Bug 814453 - Eliminate NS_IMPL_CYCLE_COLLECTION_UNLINK_NATIVE_0 and NS_IMPL_CYCLE_COLLECTION_TRACE_NATIVE_BEGIN. r=smaug 2012-11-23 11:27:06 -08:00
Fabrice Desré
dd1fda2bbc Bug 814927 - gstreamer builds broken by Bug 814284 [r=ehsan] 2012-11-25 14:39:11 -08:00
Ehsan Akhgari
136a70ea49 Bug 814757 - Export all decoder reader headers; r=cpearce 2012-11-23 14:52:39 -05:00
Thinker K.F. Li
d9bd1c6a6e Bug 805711 - check EOS against audio source for OmxDecoder. r=doublec 2012-11-24 20:25:02 +13:00
Ehsan Akhgari
54bc84b0b4 Bug 814756 - Disambiguate PacketQueue; r=cpearce 2012-11-23 14:47:45 -05:00
Ehsan Akhgari
196e0b24db Bug 814284 - Part 4: Simplify DecoderTraits::ShouldHandleMediaType; r=cpearce 2012-11-22 15:15:47 -05:00
Ehsan Akhgari
90aa17737c Bug 814284 - Part 3: Use CodecListContains anywhere we can; r=cpearce 2012-11-22 14:08:57 -05:00
Ehsan Akhgari
6248361b00 Bug 814284 - Part 2: Move the logic of dealing with requested codecs down into DecoderTraits::CanHandleMediaType; r=cpearce 2012-11-22 13:49:37 -05:00
Ehsan Akhgari
e83a5e9f35 Bug 814284 - Part 1: Refactor the code necessary for detection of codec support out of nsHTMLMediaElement; r=cpearce 2012-11-21 22:10:41 -05:00
Benoit Jacob
ec39e2a150 Bug 814444 - Remove now-useless TRAVERSE_NATIVE_BEGIN and UNLINK_BEGIN_NATIVE macros - r=mccr8 2012-11-22 12:15:38 -05:00
Paul Adenot
5d0b0b630d Bug 495040 - Implement playbackRate and related bits (Fix other tests) r=kinetik 2012-11-22 11:38:29 +01:00
Paul Adenot
5fd4bb0590 Bug 495040 - Implement playbackRate and related bits (Tests) r=kinetik 2012-11-22 11:38:28 +01:00
Paul Adenot
02703184c2 Bug 495040 - Implement playbackRate and related bits r=kinetik 2012-11-22 11:38:28 +01:00
Matthew Gregan
173e3e502c Bug 814292 - Remove mAudioPlaybackThread and AudioStream refcounting. r=cpearce 2012-11-22 16:38:39 +13:00
Thinker K.F. Li
0e74036a49 Bug 810734 - Check EOF to avoid infinite looping when parsing MP4. r=doublec 2012-11-21 22:45:42 -05:00
Ehsan Akhgari
e5a16eb2f0 Bug 813637 - Let the compiler convert between the types, so that we don't end up with incorrect pointer math; r=cpearce 2012-11-21 18:30:10 -05:00
Matthew Gregan
ebafbaa44d Bug 813399 - Remove workarounds for sync main thread deadlocks caused by audio remoting. r=cpearce 2012-11-20 15:22:42 +13:00
Mike Habicher
75b988e04a Bug 813190 - Stop media streams from hanging onto the last played media frame indefinitely. r=roc 2012-11-20 20:32:06 -05:00
Seth Fowler
630ed49838 Bug 812241 - Remove disabled test warnings. r=khuey 2012-11-20 16:13:04 -08:00
Ralph Giles
5ccf92251b [PATCH] Bug 812847 - Test Opus channel count validation - r=kinetik
From 49f5e33d79df3713bc510e611a5064858bf24e4a Mon Sep 17 00:00:00 2001
These files have specially crafted headers which should be
rejected by the new checks added to resolve this bug. If any
audio output is produced then this bug has re-occured.

The audio data is the phrase "invalid file", in one or six
channels, to make this more obvious.

The new mochitest test_invalid_reject.html tries to load
and play each of the new invalid files and verifies that
an error event is triggered. Since the invalid data is in
the file headers, this should happen after network load
but before metadata is ready, so the test also asserts
errors if loadedmetadata or a number of subsequent events
are triggered.

The test will time out if no error event is fired at all.

Thanks to Matthew Gregan for assistance writing the mochitest.
---
 content/media/test/Makefile.in              |  11 ++++++
 content/media/test/invalid-cmap-s0c0.opus   | Bin 0 -> 6835 bytes
 content/media/test/invalid-cmap-s0c2.opus   | Bin 0 -> 6834 bytes
 content/media/test/invalid-cmap-s1c2.opus   | Bin 0 -> 6848 bytes
 content/media/test/invalid-cmap-short.opus  | Bin 0 -> 6854 bytes
 content/media/test/invalid-m0c0.opus        | Bin 0 -> 2471 bytes
 content/media/test/invalid-m0c3.opus        | Bin 0 -> 2471 bytes
 content/media/test/invalid-m1c0.opus        | Bin 0 -> 6836 bytes
 content/media/test/invalid-m1c9.opus        | Bin 0 -> 6836 bytes
 content/media/test/invalid-m2c0.opus        | Bin 0 -> 2471 bytes
 content/media/test/invalid-m2c1.opus        | Bin 0 -> 2455 bytes
 content/media/test/manifest.js              |  14 ++++++++
 content/media/test/test_invalid_reject.html |  52 ++++++++++++++++++++++++++++
 13 files changed, 77 insertions(+)
 create mode 100644 content/media/test/invalid-cmap-s0c0.opus
 create mode 100644 content/media/test/invalid-cmap-s0c2.opus
 create mode 100644 content/media/test/invalid-cmap-s1c2.opus
 create mode 100644 content/media/test/invalid-cmap-short.opus
 create mode 100644 content/media/test/invalid-m0c0.opus
 create mode 100644 content/media/test/invalid-m0c3.opus
 create mode 100644 content/media/test/invalid-m1c0.opus
 create mode 100644 content/media/test/invalid-m1c9.opus
 create mode 100644 content/media/test/invalid-m2c0.opus
 create mode 100644 content/media/test/invalid-m2c1.opus
 create mode 100644 content/media/test/test_invalid_reject.html
2012-11-19 15:13:43 -08:00
Andrew McCreight
890cc3b945 Bug 815454 - Clean up Traverse/Unlink of web audio. r=smaug 2012-11-27 15:08:22 -08:00
Andrew McCreight
312e1c18f0 Bug 814752 - Make NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER work for native CC classes. r=smaug,ehsan 2012-11-27 15:08:22 -08:00
Boris Zbarsky
67bc51cf16 Bug 767933 part 4. Make 'float' and 'double' types throw on non-finite values. r=khuey,ehsan,bas 2012-11-27 15:32:05 -05:00
Matthew Gregan
ce7dfa7c33 Bug 812937 - Remove unused audio remoting code. r=cjones 2012-11-19 13:54:29 +13:00
Ehsan Akhgari
bc9d059d1b Bug 813209 - Refactor MediaResource into BaseMediaResource so that we can base the implementation of BufferMediaSource on top of MediaSource; r=cpearce
This refactoring is needed for the introduction of the BufferMediaResource class.

--HG--
extra : rebase_source : e4b5016e9b947948799f1b8975b23a3dd685a366
2012-11-16 20:31:53 -08:00
Ehsan Akhgari
a275e0b1d5 Backed out changeset f76720054116 (bug 813209) because of leaks 2012-11-19 18:15:18 -05:00
Ehsan Akhgari
d33e5a71df Bug 813209 - Refactor MediaResource into BaseMediaResource so that we can base the implementation of BufferMediaSource on top of MediaSource; r=cpearce
This refactoring is needed for the introduction of the BufferMediaResource class.
2012-11-16 20:31:53 -08:00
Ehsan Akhgari
fdb6b8fa1b Bug 813210 - Make the threading related assertions in the media decoder fatal; r=cpearce 2012-11-16 17:37:46 -08:00
Ehsan Akhgari
d1434706e8 Bug 813269 - Use double to represent time in Web Audio; r=bzbarsky 2012-11-19 15:52:29 -05:00
Ehsan Akhgari
d5bdac2156 Bug 812032 - Refactor the media reader classes to not access MediaDecoder directly; r=cpearce 2012-11-19 10:11:21 -05:00
Timothy B. Terriberry
07dba69579 Bug 812847 - Validate Opus channel count, r=kinetik 2012-11-18 05:54:52 -08:00
Ehsan Akhgari
80f248ef26 Bug 812572 follow-up - Remove the extra semi-colon 2012-11-17 11:17:56 -05:00
Ehsan Akhgari
9c6f4bfb88 Bug 812572 - Make MediaDecoderReader a non-runnable; r=cpearce 2012-11-16 11:30:34 -08:00
Marco Chen
88788c1c05 Bug 795237 - Web API for setting audio stream type. Part 2. r=kinetik, a=blocking-basecamp
Implementation on path of audio and video element
2012-11-16 11:25:26 +08:00
Ehsan Akhgari
8dc074cef8 Bug 812390 - Protect against NaN in AudioContext.createDelay; r=bzbarsky 2012-11-15 17:48:04 -08:00
Randell Jesup
52d8acc98e Bug 802399: set capture index for audio input when device is Allocate()ed, plug VoEHw leak r=derf 2012-11-15 18:23:39 -05:00
Randell Jesup
4e788c410e Bug 811695: disable internal socket transports for getUserMedia Audio capture r=derf 2012-11-15 17:58:40 -05:00
Benoit Jacob
a1d7e0f511 Bug 807437 - Eliminate redundant Traverse/Unlink CC macros - part 1: automatic changes - r=mccr8 2012-11-15 02:32:40 -05:00
Benoit Jacob
ee1217da86 Bug 806279 - CC macros refactoring: part 3: fold the TRAVERSE_NATIVE and AMBIGUOUS cases - r=mccr8,smaug 2012-11-15 02:32:39 -05:00
David Zbarsky
bfca907d39 No bug, fix struct/class mismatch warnings 2012-11-14 21:38:26 -05:00
Ehsan Akhgari
bb1d6972af Bug 811864 - Remove PannerNode.coneGain/distanceGain; r=bzbarsky 2012-11-14 13:03:24 -08:00
Ehsan Akhgari
d6aa3be16d Bug 811555 - Make AudioContext.createDelay not accept arguments greater than or equal to 3; r=bzbarsky
--HG--
extra : rebase_source : 5ad2006acb9c27ba7f94c0d1858a19d71cc663c4
2012-11-13 16:46:25 -08:00
Chris Pearce
9abb830db0 Bug 811381 - Remove ns prefix from media code. r=roc
--HG--
rename : content/media/nsAudioAvailableEventManager.cpp => content/media/AudioAvailableEventManager.cpp
rename : content/media/nsAudioAvailableEventManager.h => content/media/AudioAvailableEventManager.h
rename : content/media/nsAudioStream.cpp => content/media/AudioStream.cpp
rename : content/media/nsAudioStream.h => content/media/AudioStream.h
rename : content/media/nsMediaCache.cpp => content/media/MediaCache.cpp
rename : content/media/nsMediaCache.h => content/media/MediaCache.h
rename : content/media/nsBuiltinDecoder.cpp => content/media/MediaDecoder.cpp
rename : content/media/nsBuiltinDecoder.h => content/media/MediaDecoder.h
rename : content/media/nsBuiltinDecoderReader.cpp => content/media/MediaDecoderReader.cpp
rename : content/media/nsBuiltinDecoderReader.h => content/media/MediaDecoderReader.h
rename : content/media/nsBuiltinDecoderStateMachine.cpp => content/media/MediaDecoderStateMachine.cpp
rename : content/media/nsBuiltinDecoderStateMachine.h => content/media/MediaDecoderStateMachine.h
rename : content/media/dash/nsDASHDecoder.cpp => content/media/dash/DASHDecoder.cpp
rename : content/media/dash/nsDASHDecoder.h => content/media/dash/DASHDecoder.h
rename : content/media/dash/nsDASHReader.cpp => content/media/dash/DASHReader.cpp
rename : content/media/dash/nsDASHReader.h => content/media/dash/DASHReader.h
rename : content/media/dash/nsDASHRepDecoder.cpp => content/media/dash/DASHRepDecoder.cpp
rename : content/media/dash/nsDASHRepDecoder.h => content/media/dash/DASHRepDecoder.h
rename : content/media/gstreamer/nsGStreamerDecoder.cpp => content/media/gstreamer/GStreamerDecoder.cpp
rename : content/media/gstreamer/nsGStreamerDecoder.h => content/media/gstreamer/GStreamerDecoder.h
rename : content/media/gstreamer/nsGStreamerReader.cpp => content/media/gstreamer/GStreamerReader.cpp
rename : content/media/gstreamer/nsGStreamerReader.h => content/media/gstreamer/GStreamerReader.h
rename : content/media/ogg/nsOggCodecState.cpp => content/media/ogg/OggCodecState.cpp
rename : content/media/ogg/nsOggCodecState.h => content/media/ogg/OggCodecState.h
rename : content/media/ogg/nsOggDecoder.cpp => content/media/ogg/OggDecoder.cpp
rename : content/media/ogg/nsOggDecoder.h => content/media/ogg/OggDecoder.h
rename : content/media/ogg/nsOggReader.cpp => content/media/ogg/OggReader.cpp
rename : content/media/ogg/nsOggReader.h => content/media/ogg/OggReader.h
rename : content/media/omx/nsMediaOmxDecoder.cpp => content/media/omx/MediaOmxDecoder.cpp
rename : content/media/omx/nsMediaOmxDecoder.h => content/media/omx/MediaOmxDecoder.h
rename : content/media/omx/nsMediaOmxReader.cpp => content/media/omx/MediaOmxReader.cpp
rename : content/media/omx/nsMediaOmxReader.h => content/media/omx/MediaOmxReader.h
rename : content/media/plugins/nsMediaPluginDecoder.cpp => content/media/plugins/MediaPluginDecoder.cpp
rename : content/media/plugins/nsMediaPluginDecoder.h => content/media/plugins/MediaPluginDecoder.h
rename : content/media/plugins/nsMediaPluginHost.cpp => content/media/plugins/MediaPluginHost.cpp
rename : content/media/plugins/nsMediaPluginHost.h => content/media/plugins/MediaPluginHost.h
rename : content/media/plugins/nsMediaPluginReader.cpp => content/media/plugins/MediaPluginReader.cpp
rename : content/media/plugins/nsMediaPluginReader.h => content/media/plugins/MediaPluginReader.h
rename : content/media/raw/nsRawDecoder.cpp => content/media/raw/RawDecoder.cpp
rename : content/media/raw/nsRawDecoder.h => content/media/raw/RawDecoder.h
rename : content/media/raw/nsRawReader.cpp => content/media/raw/RawReader.cpp
rename : content/media/raw/nsRawReader.h => content/media/raw/RawReader.h
rename : content/media/raw/nsRawStructs.h => content/media/raw/RawStructs.h
rename : content/media/wave/nsWaveDecoder.cpp => content/media/wave/WaveDecoder.cpp
rename : content/media/wave/nsWaveDecoder.h => content/media/wave/WaveDecoder.h
rename : content/media/wave/nsWaveReader.cpp => content/media/wave/WaveReader.cpp
rename : content/media/wave/nsWaveReader.h => content/media/wave/WaveReader.h
rename : content/media/webm/nsWebMBufferedParser.cpp => content/media/webm/WebMBufferedParser.cpp
rename : content/media/webm/nsWebMBufferedParser.h => content/media/webm/WebMBufferedParser.h
rename : content/media/webm/nsWebMDecoder.cpp => content/media/webm/WebMDecoder.cpp
rename : content/media/webm/nsWebMDecoder.h => content/media/webm/WebMDecoder.h
rename : content/media/webm/nsWebMReader.cpp => content/media/webm/WebMReader.cpp
rename : content/media/webm/nsWebMReader.h => content/media/webm/WebMReader.h
2012-11-14 11:46:40 -08:00
Chris Pearce
42d7fd21b1 Bug 811381 - Move media code into mozilla namespace. r=roc 2012-11-14 11:45:33 -08:00
Chris Pearce
43653d0ccc Bug 811381 - Move NextFrameStatus to MediaDecoderOwner, so that nsHTMLMediaElement doesn't need to include all of nsBuiltinDecoder. r=roc 2012-11-14 11:45:31 -08:00
Chris Pearce
f9e8b1f20a Bug 811381 - Flatten nsMediaDecoder and nsBuiltinDecoder into a single class. r=roc 2012-11-14 11:45:13 -08:00
Randell Jesup
dde7ff9d8c Bug 809554: if a device has no uniqueId, use the name r=derf 2012-11-12 20:46:52 -05:00
Ehsan Akhgari
5c3198f30a Bug 809882 - Disallow non-positive arguments to AudioContext.createDelay; r=bzbarsky 2012-11-08 13:17:22 -05:00
Ehsan Akhgari
f739744839 Bug 810177 - Part 4: Make nsMediaDecoder not depend on nsHTMLMediaElement; r=cpearce
The basic idea in this patch is to create an MediaDecoderOwner
interface which nsHTMLMediaElement would implement, and put everything
needed by nsMediaDeocder on that interface.  In addition to that,
there are a number of other cleanup patches which enables us to
eliminate many of the nsHTMLMediaElement.h #includes in the media code.
2012-11-09 00:52:53 -05:00
Ehsan Akhgari
94d2c303e6 Bug 810177 - Part 3: Move the IsFormatEnabled methods from nsHTMLMediaElement to nsMediaDecoder; r=cpearce
This patch moves the various Is{Format}Enabled methods to
nsMediaDecoder.  These methods are all implemented on top of prefs, and
they logically belong to the decoder class, because it needs to know
what media types it should be able to decode.  This also helps reduce
the dependency on nsHTMLMediaElement.h.
2012-11-08 21:46:10 -05:00
Ehsan Akhgari
0704216980 Bug 810177 - Part 2: Break MetadataTags out of nsHTMLMediaElements; r=cpearce
This patch simply moves the MetadataTags typedef to nsMediaDecoder.h to
reduce the dependencies on nsHTMLMediaElements.h.  The rest of the
changes are made to make this compile.
2012-11-08 19:40:08 -05:00
Ehsan Akhgari
12f30adf52 Bug 810177 - Part 1: Move NextFrameStatus to nsMediaDecoder; r=cpearce
This patch simply moves the NextFrameStatus enum to nsMediaDecoder and
reorganizes things so that they compile again.
2012-11-08 18:22:32 -05:00
Chris Pearce
f462e42fad Bug 799344 - Remove virtual from media state machine methods, since they're not inherited. r=roc 2012-11-07 11:33:02 +13:00
Chris Pearce
dc33e1da54 Bug 799344 - Flatten nsBultinDecoderStateMachine and nsDecoderStateMachine into a single class. r=roc 2012-11-07 11:33:02 +13:00
Chris Pearce
3b143c4c58 Bug 799344 - Un-templatify nsBuiltinDecoderReader::DecodeToFirstData() so that we don't need to know nsBuiltinDecoderStateMachine's interface in nsBuiltinDecoderReader.h. This means that nsBuiltinDecoderReader.h doesn't need to include nsBuiltinDecoderStateMachine.h when we move the state machine declaration from nsBuiltinDecoder.h to nsBuiltinDecoderStateMachine.h (in a later patch). nsBuiltinDecoderStateMachine.h needs to include nsBuiltinDecoderReader.h, so if nsBuiltinDecoderReader.h needed to include nsBuiltinDecoderStateMachine.h we'd have an include cycle, which is bad. r=roc 2012-11-07 11:33:01 +13:00