gecko/content/media/ogg
Ralph Giles f7b40c94e9 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
..
Makefile.in Bug 783940 - Remove unnecessary nsOggDecoderStateMachine class. r=cpearce 2012-08-20 15:59:25 +12:00
nsOggCodecState.cpp Bug 778050 - Support Opus tag metadata. r=derf 2012-09-17 18:42:36 -04:00
nsOggCodecState.h Bug 778050 - Support Opus tag metadata. r=derf 2012-09-17 18:42:36 -04:00
nsOggDecoder.cpp Bug 783940 - Remove unnecessary nsOggDecoderStateMachine class. r=cpearce 2012-08-20 15:59:25 +12:00
nsOggDecoder.h Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
nsOggReader.cpp Bug 778050 - Support Opus tag metadata. r=derf 2012-09-17 18:42:36 -04:00
nsOggReader.h Merge from mozilla-central. 2012-08-22 16:09:24 -07:00