Commit Graph

58 Commits

Author SHA1 Message Date
Chris Pearce
09cf363ca1 Bug 973408 - Merge logic from UpdateIdleState and enqueueing decode tasks, so that we always behave consistently, especially WRT setting readers Idle on B2G. r=kinetik 2014-03-11 11:44:10 +08:00
Chris Pearce
5e594c8460 Bug 973408 - Set MediaDecoderReaders idle when they're not decoding. r=kinetik 2014-03-11 11:44:10 +08:00
Chris Pearce
fbe154216d Bug 973408 - Decode video and audio in separate media tasks. r=kinetik 2014-03-11 11:44:09 +08:00
Chris Pearce
ae1a9465d2 Bug 973408 - Split innards of MediaDecoderStateMachine::DecodeLoop() into sub DecodeAudio/DecodeVideo functions. r=kinetik 2014-03-11 11:44:09 +08:00
Chris Pearce
deb182976e Bug 973408 - Don't block a decode thread while awaiting resources. r=kinetik 2014-03-11 11:44:09 +08:00
Chris Pearce
197f8f04a4 Bug 973408 - Split DecodeThreadRun() into separate decode tasks. r=kinetik 2014-03-11 11:44:09 +08:00
Chris Pearce
9c847a29a5 Bug 973408 - Remove MediaDecoderStateMachine::GetAmpleVideoFrames(), and MediaOMXStateMachine. r=kinetik 2014-03-11 11:44:08 +08:00
Chris Pearce
f15c1aea78 Bug 973408 - Move MediaDecoderStateMachine::DecodeLoop()'s local variables to class members so the function can be made reentrant in future. r=kinetik 2014-03-11 11:44:08 +08:00
Chris Pearce
39ff027773 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
b162ede7bd 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
3503a2243d 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
fe6c4959d1 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
41394d104a 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
ea0bfbdf41 Bug 961441: Use MallocSizeOf to report decoded-audio memory. r=cpearce r=njn 2014-01-22 22:14:45 -05:00
Robert O'Callahan
5e0e428a11 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
9cc0508903 Backed out changeset 2e2c930a960c (bug 948269) for android 4.0 mochitest-2 permaorange 2013-12-19 19:24:42 -08:00
Matthew Gregan
70951c26f6 Bug 948269 - Split MediaDecoderStateMachine::AudioLoop out into new AudioSink class. r=cpearce 2013-12-20 13:52:06 +13:00
Robert O'Callahan
b55ef5ba0d 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
96642f41df 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
18621dd236 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
6dcb5015db 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
0523044e79 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
ed941cac63 Bug 939601 - Refactor current thread assert into helper. r=cpearce 2013-11-04 11:11:09 +13:00
Phil Ringnalda
102ba52e3d Back out 4fd2bf2ec8db (bug 939662) for Windows build bustage
CLOSED TREE
2013-11-18 21:34:48 -08:00
Matthew Gregan
f9db1edec7 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
0d5e4e456e Bug 848812 - Remove incorrect on-thread assertion from StopPlayback. r=cpearce 2013-11-05 17:12:01 +13:00
Thomas Zimmermann
112777cbb8 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
e1f44d3688 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
35eb41eb07 Bug 910897 - Use MP3FrameParser in DirectShow in order to calculate the duration. r=padenot 2013-09-10 12:45:33 +12:00
Ehsan Akhgari
143454cc1a Bug 912702 - Minimize the #includes in content/media; r=roc 2013-09-05 16:25:17 -04:00
Ehsan Akhgari
92ad73ef93 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
be1e68caf3 Bug 912702 - Minimize the #includes in content/media; r=roc 2013-09-04 17:58:14 -04:00
Thomas Zimmermann
029ae7c49e 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
dd1504ab38 Backed out changeset 43953e9233a2 (bug 831224) 2013-08-08 09:59:49 -07:00
Thomas Zimmermann
21922c6b1f 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
fb0816d02d Bug 871485 - Share hw codec between applications/tasks. r=mwu, r=doublec, r=roc 2013-06-10 08:22:05 -04:00
Ryan VanderMeulen
c164c281c9 Backed out changeset 4c129a5676eb (bug 871485) for mochitest-1 failures. 2013-06-07 09:57:05 -04:00
Sotaro Ikeda
1a0a39bca4 Bug 871485 - Share hw codec between applications/tasks. r=mwu, r=doublec, r=roc 2013-06-07 08:15:44 -04:00
Arnaud Sourioux
ac2132dad0 Bug 856822: Annotate ~1700 methods with MOZ_OVERRIDE in /content r=smaug 2013-05-29 13:43:41 -07:00
Ryan VanderMeulen
468b93224a Backed out changeset a966aadd9ae3 (bug 856822) for Windows bustage on a CLOSED TREE. 2013-05-29 17:56:10 -04:00
Arnaud Sourioux
ff4b91709f Bug 856822: Annotate ~1700 methods with MOZ_OVERRIDE in /content r=smaug 2013-05-29 13:43:41 -07:00
Matthew Gregan
c7c49a4e9a 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
b57856b7a9 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
7712541f3b Bug 804875 - Reset media element when loading a new src. r=kinetik 2012-12-27 16:21:30 +01: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
Paul Adenot
e375707db6 Bug 804875 - Reset media element when loading a new src. r=kinetik 2013-01-24 20:28:48 +01: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
Paul Adenot
d5687c284b Bug 804875 - Reset media element when loading a new src. r=kinetik 2013-01-15 19:57:03 +01: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
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