Commit Graph

102 Commits

Author SHA1 Message Date
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
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
9ee26e5a65 Bug 799344 - Remove nsBuiltinDecoder::GetDecodeState(), so that nsBuiltinDecoder doesn't need to know about nsDecoderStateMachine::State. r=roc 2012-11-07 11:33:01 +13:00
Ryan VanderMeulen
4f33e32827 Backout 3f0e69962962, 84a1afc5b15e, c62f225d0dbb, 24870ebc9665, and dd7663e68657 (bug 799344) for mochitest-1 orange. 2012-11-06 19:36:49 -05:00
Chris Pearce
cce841e3bc 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
22fe237724 Bug 799344 - Flatten nsBultinDecoderStateMachine and nsDecoderStateMachine into a single class. r=roc 2012-11-07 11:33:02 +13:00
Chris Pearce
ecd71d8846 Bug 799344 - Remove nsBuiltinDecoder::GetDecodeState(), so that nsBuiltinDecoder doesn't need to know about nsDecoderStateMachine::State. r=roc 2012-11-07 11:33:01 +13:00
Matt Joras
d1fe98e6b3 Bug 798033 - Removes 'using namespace' from /content headers - r=bsmedberg 2012-10-27 13:24:04 -04:00
Phil Ringnalda
b6c07f4fe7 Back out c25bc74b7fd3 (bug 798033) for build bustage 2012-10-26 19:05:18 -07:00
Matt Joras
cc0bb2727c Bug 798033 - Removes 'using namespace' from /content headers - r=bsmedberg 2012-10-14 00:04:51 -05:00
Trevor Saunders
3d3592cd63 bug 798595 - remove useless prmem.h includes r=ehsan 2012-10-04 02:14:06 -04:00
Nicolas Silva
b55038bbf2 Bug 794747 - add a pref for the default size of the VideoQueue. r=kinetik 2012-09-28 13:34:03 -04:00
Robert O'Callahan
727fa86a21 Bug 779715. Part 6: Rework capturing MediaStreams from media elements to use TrackUnionStreams. r=cpearce,jesup
Moves to a new setup where a decoder manages a single SourceMediaStream internally. Each stream
returned from mozCaptureStream(UntilEnded) is a TrackUnionStream which is fed by the
decoder's SourceMediaStream.
We want the captured streams to be blocked while the media element is not playing. We do that
by blocking any captured stream that has no SourceMediaStream feeding into it, and blocking
any SourceMediaStream while its decoder is not playing.
We arrange for the decoders's PlaybackEnded to be delayed until its SourceMediaStream has
finished according to the media stream graph. This ensures the state of captured media streams
corresponds more closely to the media element state.

--HG--
extra : rebase_source : 3324ff0e9bdce9c71a23c0f5f2032815e9046081
2012-08-01 00:17:22 +12:00
Ehsan Akhgari
0fd9123eac Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Robert O'Callahan
cdb5480e47 Backing out parts 6 and 7 of bug 779715 (5a87f1d1807d, 5a87f1d1807d) due to crashtest orange.
--HG--
extra : rebase_source : bb7acb9958452850bd9d36f8e58f956d065d4935
2012-08-21 00:44:32 +12:00
Robert O'Callahan
bcd9f63ad8 Bug 779715. Part 6: Rework capturing MediaStreams from media elements to use TrackUnionStreams. r=cpearce,jesup
Moves to a new setup where a decoder manages a single SourceMediaStream internally. Each stream
returned from mozCaptureStream(UntilEnded) is a TrackUnionStream which is fed by the
decoder's SourceMediaStream.
We want the captured streams to be blocked while the media element is not playing. We do that
by blocking any captured stream that has no SourceMediaStream feeding into it, and blocking
any SourceMediaStream while its decoder is not playing.
We arrange for the decoders's PlaybackEnded to be delayed until its SourceMediaStream has
finished according to the media stream graph. This ensures the state of captured media streams
corresponds more closely to the media element state.

--HG--
extra : rebase_source : a301714fad57a3b7c963530a3da99c54bc8ac436
2012-08-01 00:17:22 +12:00
Matthew Gregan
70f8167360 Bug 783179 - Remove unused mCbCrSize and mCbCrBuffer members from nsBuiltinDecoderStateMachine. r=doublec 2012-08-16 18:07:26 +12:00
Aryeh Gregor
e806eeab4f Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Paul Adenot
8558f22925 Bug 760336 - Set nsBuiltinDecoderStateMachine::mBufferingWait to be seconds instead of milliseconds r=chris.double 2012-06-07 11:43:25 +12:00
Gervase Markham
ca171eec44 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Paul Adenot
67bfe4f064 Bug 756372 - Change |seeking| to prevent seeking in WebM livestream. r=kinetik 2012-05-18 13:35:43 -04:00
Robert O'Callahan
233d852e79 Bug 664918. Part 12: Finish SourceMediaStreams when the media decoder is destroyed, to avoid late low-audio/low-video notifications and issues when multiple decoders write to the same stream. r=cpearce,rjesup 2012-04-30 15:13:42 +12:00
Robert O'Callahan
0fab284fc7 Bug 664918. Part 8: Add mozCaptureStream()/mozCaptureStreamUntilEnded() APIs to HTML media elements, returning a MediaStream representing the contents of the media element. r=cpearce,jesup
This is currently not fully functional. The MediaStream always ends when the underlying resource ends. You can't use these APIs on a media element
whose src is a MediaStream. Seeking or pausing the resource will cause problems. The media element does not play back in sync with the MediaStream.
2012-04-30 15:12:42 +12:00
Robert O'Callahan
1e90444bb6 Bug 708116. Factor out logic for updating the current frame of a video element into a helper object. r=doublec 2012-02-15 17:35:01 +13:00
Chris DeCairos
6a271f929d Bug 715323 - Make offset paramater in NotifyDataArrived PRInt64 r=cpearce 2012-02-01 11:05:51 +13:00
Chris Pearce
0fa5e90cfa Bug 713381 - Queue media decode thread creation when limit reached. r=roc 2012-01-20 07:30:29 +13:00
Chris Pearce
841966d0b2 Bug Bug 713381 - backout 38271572005b,d5ebbc25b4b8,6435f51dd10d. r=backout 2012-01-19 11:56:54 +13:00
Chris Pearce
b748373b98 Bug 713381 - Queue media decode thread creation when limit reached. r=roc 2012-01-19 09:15:57 +13:00
Chris Pearce
4128f6843e Bug 712738 - Cap seeking outside of buffered data in live streams to end of buffered data. r=kinetik 2012-01-06 19:40:51 +13:00
Chris Pearce
b01fd7d70f Bug 604682 - Remove unnecessary copy of audio data when there's no MozAudioAvailable event listener. r=smaug,kinetik 2011-11-22 13:34:21 +13:00
Chris Double
a973f49a80 Bug 691096 - Provide hard limit to number of media elements that can be decoded in parallel - r=cpearce
--HG--
extra : rebase_source : b82ea2e14028f625ea247e93ca6be427e5db815d
2011-11-08 14:38:17 +13:00
Marco Bonardo
7db3b9061d Backout 12744c5b688d, edefcb820429 to investigate Android C1 permaorange. 2011-11-03 09:24:02 +01:00
Chris Double
bb113c8974 Bug 691096 - Provide hard limit to number of media elements that can be decoded in parallel - r=cpearce
--HG--
extra : rebase_source : 23bc74b97aa678f47e812351a9443cbf223f808e
2011-11-03 14:58:54 +13:00
Matthew Gregan
b91f76289a Bug 690603 - Remove PR_TRUE/PR_FALSE from media code. r=doublec 2011-09-30 12:34:37 +13:00
Michael Wu
d8e503c38b Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Matthew Gregan
bd4295528f Bug 689432 - Disambiguate use of "samples" by introducing "frames" in a number of places. r=doublec 2011-09-27 16:31:18 +13:00
Fabrice Desré
710899e3ab Bug 659188 - Android and media parts [r=blassey] [r=cpearce] 2011-09-26 17:25:41 -07:00
Matthew Gregan
49589fa033 Bug 682593 - Avoid possible null dereference during state machine shutdown. r=cpearce 2011-09-21 19:01:00 +12:00
Chris Double
1e5e4609a1 Bug 648595 - Part 1/2: Implement temporal dimension portion of Media Fragments URI specification for video/audio - r=cpearce
--HG--
extra : rebase_source : f9b5986e739a091c37caeb882904434f21fb6d81
2011-08-25 11:42:23 +12:00
Matthew Gregan
1eaa941a74 Bug 679269 - Rename SoundData{,Value} to AudioData{,Value} and fix inconsistent use of "sound" vs "audio". r=doublec 2011-08-16 17:19:51 +12:00
Paul ADENOT
36cf6a91a7 Bug 462960 - Implement nsIDOMHTMLMediaElement::GetSeekable() + seeking algorithm part 7. r=cpearce 2011-08-09 12:10:48 +02:00
Matthew Gregan
db3428cfec Bug 672755 - Add memory reporters for decoded video and audio queues. r=cpearce r=joe 2011-07-22 15:17:23 +12:00
Chris Pearce
94901f979a Bug 592833 - Update comments for new video decoder thread model. r=roc 2011-07-12 15:39:39 +12:00
Chris Pearce
ea5c48904a Bug 592833 - Shutdown inactive media decode threads, don't start audio thread until needed. r=roc 2011-07-12 15:39:37 +12:00
Chris Pearce
f75f5e57e5 Bug 592833 - Merge all media state machines into a single thread. r=roc 2011-07-12 15:39:34 +12:00
Chris Pearce
09f21e3e39 Bug 592833 - Run media state machine as a series of events. r=roc 2011-07-12 15:39:32 +12:00
Chris Pearce
8505e98e72 Bug 592833 - Move audio stream management to audio thread. r=? 2011-07-12 15:39:30 +12:00
Chris Pearce
1e2942a0a5 Bug 592833 - Move seeking to the decode thread. r=roc 2011-07-12 15:39:25 +12:00