Class FLVParser

  • All Implemented Interfaces:
    Serializable, Parser

    public class FLVParser
    extends Object
    implements Parser

    Parser for metadata contained in Flash Videos (.flv). Resources: http://osflash.org/flv and for AMF: http://download.macromedia.com/pub/labs/amf/amf0_spec_121207.pdf

    This parser is capable of extracting the general metadata from header as well as embedded metadata.

    Known keys for metadata (from file header):

    1. hasVideo: true|false
    2. hasSound: true|false

    In addition to the above values also metadata that is inserted in to the actual stream will be picked. Usually there are keys like: hasKeyframes, lastkeyframetimestamp, audiocodecid, keyframes, filepositions, hasMetadata, audiosamplerate, videodatarate metadatadate, videocodecid, metadatacreator, audiosize, hasVideo, height, audiosamplesize, framerate, hasCuePoints width, cuePoints, lasttimestamp, canSeekToEnd, datasize, duration, videosize, filesize, audiodatarate, hasAudio, stereo audiodelay

    See Also:
    Serialized Form
    • Constructor Detail

      • FLVParser

        public FLVParser()
    • Method Detail

      • getSupportedTypes

        public Set<MediaType> getSupportedTypes​(ParseContext context)
        Description copied from interface: Parser
        Returns the set of media types supported by this parser when used with the given parse context.
        Specified by:
        getSupportedTypes in interface Parser
        Parameters:
        context - parse context
        Returns:
        immutable set of media types
      • parse

        public void parse​(InputStream stream,
                          ContentHandler handler,
                          Metadata metadata,
                          ParseContext context)
                   throws IOException,
                          SAXException,
                          TikaException
        Description copied from interface: Parser
        Parses a document stream into a sequence of XHTML SAX events. Fills in related document metadata in the given metadata object.

        The given document stream is consumed but not closed by this method. The responsibility to close the stream remains on the caller.

        Information about the parsing context can be passed in the context parameter. See the parser implementations for the kinds of context information they expect.

        Specified by:
        parse in interface Parser
        Parameters:
        stream - the document stream (input)
        handler - handler for the XHTML SAX events (output)
        metadata - document metadata (input and output)
        context - parse context
        Throws:
        IOException - if the document stream could not be read
        SAXException - if the SAX events could not be processed
        TikaException - if the document could not be parsed