Chris Pearce
2d67a1b332
Bug 968016 - Use a SharedThreadPool of size 1 for the Media State Machine thread. r=kinetik
...
This makes it easy to share the state machine thread, and for it to shut down
automatically when the last reference is dropped to it.
2014-02-18 11:53:53 +13:00
Chris Pearce
6dda7a817e
Bug 968016 - Use SharedThreadPool instead of manually managed threads for the media decoding. r=kinetik
2014-02-18 11:53:52 +13:00
Ben Kelly
110ff07411
Bug 960873: Part 2: Create AudioCompactor class to minimize allocation slop. r=cpearce
...
Based on original patch written by :gal.
2014-02-05 18:11:25 -05:00
Phil Ringnalda
1af4f7e752
Backed out 6 changesets (bug 960873) for Win64 build bustage
...
Backed out changeset 33d8989841ac (bug 960873)
Backed out changeset 6c9e404aeb3f (bug 960873)
Backed out changeset 36c8b10b0a31 (bug 960873)
Backed out changeset 29c36a7acfb0 (bug 960873)
Backed out changeset 6e3966e0eb40 (bug 960873)
Backed out changeset 612db692256b (bug 960873)
2014-02-05 09:28:14 -08:00
Ben Kelly
ceb8a27ae2
Bug 960873: Part 2: Create AudioCompactor class to minimize allocation slop. r=cpearce
...
Based on original patch written by :gal.
2014-02-04 23:10:43 -05:00
Ben Kelly
1ac006397f
Bug 961441: Use MallocSizeOf to report decoded-audio memory. r=cpearce r=njn
2014-01-22 22:14:45 -05:00
Robert O'Callahan
81d72a6306
Bug 943461. Part 15: Make MediaDecoder set its currentTime based on the decoded stream's time directly, if we are decoding to a stream. r=cpearce
...
--HG--
extra : rebase_source : 35fe51dbec3107d7dae801a5a179c5ef5fa53725
2013-12-13 01:33:00 +13:00
Wes Kocher
e20ec0842c
Backed out changeset 2e2c930a960c (bug 948269) for android 4.0 mochitest-2 permaorange
2013-12-19 19:24:42 -08:00
Matthew Gregan
4ae6fd0723
Bug 948269 - Split MediaDecoderStateMachine::AudioLoop out into new AudioSink class. r=cpearce
2013-12-20 13:52:06 +13:00
Robert O'Callahan
b2d1fa5018
Bug 938022. Part 6: Have MediaDecoder/MediaDecoderStateMachine that's producing a MediaStream use that stream's current time as the media clock. r=padenot
...
We monitor the stream's output current time via a new MediaStreamListener
owned by DecodedStreamData. We also track its main-thread Finished status.
While we're writing to a DecodedStreamData stream that hasn't finished its
output, we stay in the DECODER_STATE_COMPLETED state so we can keep updating
video and firing timeupdates.
GetClock() uses the DecodedStreamData stream's current time as the source for
the clock if there is one.
--HG--
extra : rebase_source : aba1d092d3d347e26ebd823d61fcbfa40a8cd1fe
2013-12-02 10:09:06 +13:00
Robert O'Callahan
161ce6418f
Bug 938022. Part 2: Block captured MediaStream when the MediaDecoderStateMachine is not playing. r=cpearce
...
--HG--
extra : rebase_source : 01d887b3b5917b7c51a286d61feb10e7b2426d9a
2013-11-23 22:48:24 +13:00
Ryan VanderMeulen
7db9c39392
Merge m-c to inbound.
...
--HG--
rename : dom/contacts/tests/test_contacts_upgrade.html => dom/contacts/tests/test_contacts_upgrade.xul
rename : dom/indexedDB/test/test_globalObjects.xul => dom/indexedDB/test/test_globalObjects_chrome.xul
rename : dom/indexedDB/test/test_globalObjects.html => dom/indexedDB/test/test_globalObjects_content.html
rename : dom/indexedDB/test/unit/test_globalObjects.js => dom/indexedDB/test/unit/test_globalObjects_xpc.js
2013-11-19 13:54:20 -05:00
Matthew Gregan
aca39c9f09
Bug 939662 - Remove "using namespace mozilla::dom;" from MediaDecoder.h and fix fallout. r=cpearce
2013-11-18 17:22:47 +13:00
Sotaro Ikeda
7b5305a24c
Bug 935118 - Allow buffering to be triggered when we're low on decoded audio or video. r=roc
2013-11-19 09:01:14 -05:00
Matthew Gregan
81e39fb050
Bug 939601 - Refactor current thread assert into helper. r=cpearce
2013-11-04 11:11:09 +13:00
Phil Ringnalda
aa4f4a9e99
Back out 4fd2bf2ec8db (bug 939662) for Windows build bustage
...
CLOSED TREE
2013-11-18 21:34:48 -08:00
Matthew Gregan
fdcb4e1cac
Bug 939662 - Remove "using namespace mozilla::dom;" from MediaDecoder.h and fix fallout. r=cpearce
...
--HG--
extra : rebase_source : 922db8de8e9103e3001c26f23ed7402efa8237f5
2013-11-18 17:22:47 +13:00
Matthew Gregan
3c153f450d
Bug 848812 - Remove incorrect on-thread assertion from StopPlayback. r=cpearce
2013-11-05 17:12:01 +13:00
Thomas Zimmermann
568572011d
Bug 924678: Explicitly clear OmxDecoder::mDecoder, r=doublec
...
The MediaDecoderStateMachine frees the Decoder during its own
shutdown. If the the MediaDecoderStateMachine for an MP3 file
gets cleaned up before the MP3 frame parser is finished, the
OmxDecoder operates with an invalid Decoder.
With this patch, the MediaDecoderStateMachine informs the
OmxDecoder to clear the decoder field. The MP3 parser logic
detects this case and returns.
--HG--
extra : rebase_source : 0a00de3cf7b95ede77408e5d43cccbcd706750cd
2013-10-14 10:38:17 +02:00
Matthew Gregan
8d51f7a552
Bug 920867 - Split VideoInfo into Video and Audio objects, then encapsulate in new MediaInfo object. r=cpearce
2013-09-27 17:22:38 +12:00
Chris Pearce
c438f19ab9
Bug 910897 - Use MP3FrameParser in DirectShow in order to calculate the duration. r=padenot
2013-09-10 12:45:33 +12:00
Ehsan Akhgari
3b48889d78
Bug 912702 - Minimize the #includes in content/media; r=roc
2013-09-05 16:25:17 -04:00
Ehsan Akhgari
22fac42fb0
Backed out changeset 2f15518f566e (bug 912702) because of B2G JB Emulator build bustage
...
--HG--
extra : rebase_source : 6c01ad3bc2f91b0e7e3edab84aedbfe064310a8b
2013-09-05 13:29:38 -04:00
Ehsan Akhgari
2ce2ec0cdb
Bug 912702 - Minimize the #includes in content/media; r=roc
2013-09-04 17:58:14 -04:00
Thomas Zimmermann
92f7e9a735
Bug 831224: Allow update of the media duration, r=padenot
...
With MP3 streams, the media duration might change after we received
new data. This patch adds infrastructure to signal the new duration
to the media decoder and state machine. It will also fire an event
of type 'durationchange' to the DOM.
2013-05-03 09:48:37 +02:00
Ed Morley
77fbd30f54
Backed out changeset 43953e9233a2 (bug 831224)
2013-08-08 09:59:49 -07:00
Thomas Zimmermann
e02e53b720
Bug 831224: Allow update of the media duration, r=padenot
...
With MP3 streams, the media duration might change after we received
new data. This patch adds infrastructure to signal the new duration
to the media decoder and state machine. It will also fire an event
of type 'durationchange' to the DOM.
--HG--
extra : rebase_source : f417b968e81d9c9a1aff8ae3174079a297eb371b
2013-05-03 09:48:37 +02:00
Sotaro Ikeda
2d8e4dae08
Bug 871485 - Share hw codec between applications/tasks. r=mwu, r=doublec, r=roc
2013-06-10 08:22:05 -04:00
Ryan VanderMeulen
5108144eb8
Backed out changeset 4c129a5676eb (bug 871485) for mochitest-1 failures.
2013-06-07 09:57:05 -04:00
Sotaro Ikeda
a610c06f76
Bug 871485 - Share hw codec between applications/tasks. r=mwu, r=doublec, r=roc
2013-06-07 08:15:44 -04:00
Arnaud Sourioux
1aded9ba34
Bug 856822: Annotate ~1700 methods with MOZ_OVERRIDE in /content r=smaug
2013-05-29 13:43:41 -07:00
Ryan VanderMeulen
eb4d754279
Backed out changeset a966aadd9ae3 (bug 856822) for Windows bustage on a CLOSED TREE.
2013-05-29 17:56:10 -04:00
Arnaud Sourioux
83d60db473
Bug 856822: Annotate ~1700 methods with MOZ_OVERRIDE in /content r=smaug
2013-05-29 13:43:41 -07: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
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
Paul Adenot
179f2a3ed4
Bug 804875 - Reset media element when loading a new src. r=kinetik
2012-12-27 16:21:30 +01:00
Randell Jesup
6fd94f18ed
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
Paul Adenot
2c42e0e1e8
Bug 804875 - Reset media element when loading a new src. r=kinetik
2013-01-24 20:28:48 +01:00
Ed Morley
3de1bf91c3
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
Paul Adenot
2998641c5b
Bug 804875 - Reset media element when loading a new src. r=kinetik
2013-01-15 19:57:03 +01:00
Matthew Gregan
b11cac8580
Bug 822952 - Dispatch events from UpdateReadyState only when the state has changed. r=roc
2012-12-19 17:48:32 +13:00
Robert O'Callahan
7e94cbcffb
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
Paul Adenot
c38f98b92e
Bug 816949 - Remove IsSeekableInBufferedRange() methods as they are not needed anymore. r=cpearce
2012-12-07 14:30:03 +01:00
Paul Adenot
57e360d284
Bug 455165 - Add support for chained ogg audio file and proper metadata dispatching. r=cpearce
2012-11-30 14:17:54 +01:00
Paul Adenot
556b71143b
Bug 815194 - Remove more ns prefixes on content/media classes + whitespace fixes. r=cpearce
2012-11-28 20:40:07 +01:00
Edwin Flores
59cfbb854d
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
Paul Adenot
ae1aed084f
Bug 495040 - Implement playbackRate and related bits r=kinetik
2012-11-22 11:38:28 +01:00
Matthew Gregan
3b3c6ffbfb
Bug 814292 - Remove mAudioPlaybackThread and AudioStream refcounting. r=cpearce
2012-11-22 16:38:39 +13:00
Ehsan Akhgari
f69801b25f
Bug 812032 - Refactor the media reader classes to not access MediaDecoder directly; r=cpearce
2012-11-19 10:11:21 -05:00
Chris Pearce
216fe28466
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