Ehsan Akhgari
46c9d70720
Bug 814757 - Export all decoder reader headers; r=cpearce
2012-11-23 14:52:39 -05:00
Ehsan Akhgari
506826b29f
Bug 814756 - Disambiguate PacketQueue; r=cpearce
2012-11-23 14:47:45 -05: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
Timothy B. Terriberry
5efb5c507c
Bug 812847 - Validate Opus channel count, r=kinetik
2012-11-18 05:54:52 -08: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
Chris Pearce
1d6dc9c020
Bug 811381 - Move media code into mozilla namespace. r=roc
2012-11-14 11:45:33 -08:00
Chris Pearce
7cadd570a9
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
9473334bf2
Bug 811381 - Flatten nsMediaDecoder and nsBuiltinDecoder into a single class. r=roc
2012-11-14 11:45:13 -08:00
Ehsan Akhgari
0453689b72
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
4397a5852e
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
Chris Pearce
a0956a77b0
Bug 799344 - Flatten nsBultinDecoderStateMachine and nsDecoderStateMachine into a single class. r=roc
2012-11-07 11:33:02 +13:00
Chris Pearce
dee00040c9
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
a330ccbd1e
Backout 3f0e69962962, 84a1afc5b15e, c62f225d0dbb, 24870ebc9665, and dd7663e68657 (bug 799344) for mochitest-1 orange.
2012-11-06 19:36:49 -05:00
Chris Pearce
5148e8b330
Bug 799344 - Flatten nsBultinDecoderStateMachine and nsDecoderStateMachine into a single class. r=roc
2012-11-07 11:33:02 +13:00
Chris Pearce
ace5511d82
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
8835709995
Bug 798033 - Removes 'using namespace' from /content headers - r=bsmedberg
2012-10-27 13:24:04 -04:00
Phil Ringnalda
56c57f466f
Back out c25bc74b7fd3 (bug 798033) for build bustage
2012-10-26 19:05:18 -07:00
Matt Joras
5c9750a59e
Bug 798033 - Removes 'using namespace' from /content headers - r=bsmedberg
2012-10-14 00:04:51 -05:00
Robert O'Callahan
3fe2b7b13b
Bug 805254. Part 11: Move Vorbis-specific definitons into a new file VorbisUtils.h. r=kinetik
2012-10-25 23:09:41 +13:00
Isaac Aggrey
0cc4b12d36
Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan
2012-09-28 01:57:33 -05:00
Ralph Giles
28dc7fce2d
Bug 778050 - Support Opus tag metadata. r=derf
...
Remember parsed comments from the OpusTags header in
an array member variable. Add a method to generate
the nsHTMLMediaElement::MetadataTags hash table from
those entries, performing the same validatation we
do for Vorbis.
This feature is tested by adding the existing opus
test file to gMetadataTests.
IsValidVorbisTagName is moved to a static method
on nsOggCodecState so it can be shared among the
subclasses and easily called externally.
MetadataTags generation for Vorbis streams is moved
to the same method name on nsVorbisState to allow
sharing of the parsing and validation code as much
as possible, since both formats use the same scheme.
It's arguable whether contrustuction better belongs to
nsOggReader or to the nsCodecState subclasses, since in
theory the various multiplexed streams interact in
determining the canonical tag list, but it is the
per-codec streams which contain the metadata in Ogg.
2012-09-17 18:42:36 -04:00
Ralph Giles
5fbf150245
Bug 790381 - Remove custom extern "C" on opus_multistream.h. r=derf
...
Bug 748144 switched our opus decoding to use the
opus_multistream api so we could handle surround
audio files. The version of opus in our tree at
the time didn't include extern "C" {} protection
in the corresponding header, so we had to provide
our own.
With the update to the opus 1.0.0 source release
in bug 790381, this oversight is corrected and
we can remove our work-around.
2012-09-12 16:59:05 -04:00
Ralph Giles
6e36658ee7
Bug 789617 - Improve vorbis comment validation. r=cpearce
...
Verify that tag names are ASCII within the valid character
ranges and that values are UTF-8, skipping comments where
these checks fail.
As written, the check in IsValidVorbisTagName() for the
separator character isn't necessary, because we've already
split on the first occurance. However, it's better to run
the extra check in case the function is reused elsewhere.
2012-09-10 13:49:00 -07:00
David Anderson
7b70ee195a
Merge from mozilla-central.
...
--HG--
rename : js/jsd/jsd_scpt.c => js/jsd/jsd_scpt.cpp
rename : js/jsd/jsd_stak.c => js/jsd/jsd_stak.cpp
rename : js/jsd/jsd_val.c => js/jsd/jsd_val.cpp
2012-09-05 16:18:11 -07:00
David Anderson
fd50a14c90
Merge from mozilla-central.
2012-08-22 16:09:24 -07:00
David Anderson
f3d3148ca7
Merge from mozilla-central.
2012-08-21 15:59:12 -07:00
David Anderson
0e509b2165
Merge from mozilla-central.
2012-08-13 13:40:42 -07:00
Alexandros Chronopoulos
d4807317cd
Bug 748144 - Support multichannel Opus files. r=rillian
...
The Opus audio format supports multichannel (surround) audio, but our initial implementation used a simpler API which only supported mono and stereo output.
To handle these files gracefully, this patch uses the multichannel api and downmixes the output, if possible, to stereo, since we don't currently support surround sound playback.
2012-08-09 15:53:23 -07:00
Ehsan Akhgari
8c296bbcd4
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
Timothy B. Terriberry
ae2508019e
Bug 787788 - Fix downmixing weights for 6.1 Opus files, r=rillian
2012-09-03 01:41:17 -07:00
Chris Pearce
e94b1f315b
Bug 786924 - Estimate Ogg buffered ranges on B2G to avoid main thread I/O. r=kinetik
2012-09-03 10:56:29 +12:00
David Anderson
02b557e2ee
Merge from mozilla-central.
...
--HG--
rename : layout/base/nsFrameTraversal.cpp => layout/base/nsFrameIterator.cpp
rename : layout/base/nsFrameTraversal.h => layout/base/nsFrameIterator.h
rename : browser/modules/WebappsInstaller.jsm => toolkit/webapps/WebappsInstaller.jsm
2012-08-06 12:44:06 -07:00
David Anderson
2e20aecd2c
Merge.
...
--HG--
rename : content/base/src/nsGenericElement.h => content/base/public/FragmentOrElement.h
rename : content/base/src/nsGenericElement.cpp => content/base/src/FragmentOrElement.cpp
rename : gfx/thebes/nsCoreAnimationSupport.mm => gfx/2d/QuartzSupport.mm
2012-08-01 11:30:00 -07:00
Chris Pearce
ee625140f8
Bug 778105 - Fix an nsOggReader::GetBuffered() return value type mismatch. r=doublec
2012-08-01 13:24:25 +12:00
David Anderson
1b9c00384c
Merge from mozilla-central.
2012-07-31 17:19:41 -07:00
David Anderson
0b6251a780
Merge from mozilla-central.
2012-07-30 13:15:39 -07:00
Aryeh Gregor
57c0ad57fb
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
David Anderson
43e8426cf2
Merge from mozilla-central.
2012-07-24 16:32:08 -07:00
David Anderson
5977d0bae2
Merge from mozilla-central.
...
--HG--
rename : js/xpconnect/wrappers/CrossOriginWrapper.cpp => js/xpconnect/wrappers/WaiveXrayWrapper.cpp
rename : js/xpconnect/wrappers/CrossOriginWrapper.h => js/xpconnect/wrappers/WaiveXrayWrapper.h
2012-07-18 19:02:32 -07:00
Ms2ger
c41391ca15
Bug 756397 - Enable FAIL_ON_WARNINGS in content/media; r=cpearce
2012-07-18 12:36:08 +02:00
Aryeh Gregor
0c8f5adf50
Bug 626472 part 1 - Define nsnull as nullptr where available; r=ehsan
2012-07-20 14:16:17 +03:00
Mike Hommey
c1b35e7b2a
Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted
2012-08-04 20:26:44 +02:00
David Anderson
4dc2835558
Merge from mozilla-central.
2012-06-27 11:00:48 -07:00
Ralph Giles
62f6aacafd
Bug 766331 - Don't rescan old data for Ogg timestamps - r=cpearce
...
nsOggReader::RangeEndTime() relied on CRC values from valid ogg
pages to keep track of already-searched data when looking for a
end timestamp. This caused quadratic behaviour searching in a
section of a file with no valid pages.
Instead, remember where we last looked, and backoff immediately
if we go more than the maximum length of a page into previously
scanned data. This avoids searching data we've eliminated as
containing valid Ogg pages and lets us search backward with O(N)
instead.
2012-06-25 09:38:56 -07:00
Ralph Giles
a81a17e866
Bug 763010 - Expose media element metadata. r=cpearce
...
Implements a media.mozGetMetadata() method returning a new javascript object whose properties are key value pairs respresenting metadata tags from the media resource. This data is available after readystate enters METADATA_LOADED.
Currently this is only implemented for Ogg Vorbis streams.
Media format metadata is parsed out by the media decoders. In the nsCodecStateMachine::ReadMetadata subclasses we fill in an nsDataHashtable pointer using the format-specifc api.
The hash pointer is passed up to the media element as part of the MetadataLoaded event.
The hash is deleted if the load is aborted. The audio metadata is also reset to zero (as in the constructor), resolving a todo comment.
2012-07-30 20:14:29 -04:00
Ehsan Akhgari
c80897316e
Merge the nullptr conversion from mozilla-central into mozilla-inbound
2012-07-30 10:28:15 -04:00
Aryeh Gregor
17bdf11678
Bug 777292 - Annotate some incorrect conversions to nsresult; r=ehsan
2012-07-27 17:03:25 +03:00
Jan de Mooij
b1b68e0f5d
Merge m-c to ionmonkey
...
--HG--
rename : accessible/src/html/nsHTMLSelectAccessible.cpp => accessible/src/html/HTMLSelectAccessible.cpp
rename : accessible/src/html/nsHTMLSelectAccessible.h => accessible/src/html/HTMLSelectAccessible.h
rename : memory/jemalloc/jemalloc.c => memory/mozjemalloc/jemalloc.c
rename : memory/jemalloc/jemalloc.h => memory/mozjemalloc/jemalloc.h
2012-06-08 11:18:39 +02:00
Matthew Gregan
d90bbfc34b
Bug 723860 - Early bail from reader's GetBuffered() if not yet initialized. r=doublec
2012-06-06 17:58:07 +12:00
Ms2ger
f696a656cc
Bug 760156 - Cleanup LOCAL_INCLUDES in content/media/; r=sicking
...
This patch makes it possible to include nsGenericHTMLElement.h without adding
to LOCAL_INCLUDES.
2012-06-06 09:40:02 +02:00