Class BrightcoveDashManifestParser

  • All Implemented Interfaces:
    com.google.android.exoplayer2.upstream.ParsingLoadable.Parser<com.google.android.exoplayer2.source.dash.manifest.DashManifest>, org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

    public class BrightcoveDashManifestParser
    extends com.google.android.exoplayer2.source.dash.manifest.DashManifestParser
    A Dash Manifest Parser used for Brightcove videos.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.google.android.exoplayer2.source.dash.manifest.DashManifestParser

        com.google.android.exoplayer2.source.dash.manifest.DashManifestParser.RepresentationInfo
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected com.google.android.exoplayer2.Format buildFormat​(java.lang.String id, java.lang.String containerMimeType, int width, int height, float frameRate, int audioChannels, int audioSamplingRate, int bitrate, java.lang.String language, java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> roleDescriptors, java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> accessibilityDescriptors, java.lang.String codecs, java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> supplementalProperties)  
      protected com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTemplate buildSegmentTemplate​(com.google.android.exoplayer2.source.dash.manifest.RangedUri initialization, long timescale, long presentationTimeOffset, long startNumber, long endNumber, long duration, java.util.List<com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTimelineElement> timeline, long availabilityTimeOffsetUs, com.google.android.exoplayer2.source.dash.manifest.UrlTemplate initializationTemplate, com.google.android.exoplayer2.source.dash.manifest.UrlTemplate mediaTemplate, long timeShiftBufferDepthMs, long periodStartUnixTimeMs)  
      protected com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTemplate buildSegmentTemplate​(com.google.android.exoplayer2.source.dash.manifest.RangedUri initialization, long timescale, long presentationTimeOffset, long startNumber, long endNumber, long duration, java.util.List<com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTimelineElement> timeline, com.google.android.exoplayer2.source.dash.manifest.UrlTemplate initializationTemplate, com.google.android.exoplayer2.source.dash.manifest.UrlTemplate mediaTemplate)  
      protected android.util.Pair<java.lang.String,​com.google.android.exoplayer2.drm.DrmInitData.SchemeData> parseContentProtection​(org.xmlpull.v1.XmlPullParser xpp)
      Parses a ContentProtection element.
      protected int parseRoleFlagsFromRoleDescriptors​(java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> roleDescriptors)  
      • Methods inherited from class com.google.android.exoplayer2.source.dash.manifest.DashManifestParser

        buildAdaptationSet, buildEvent, buildEventStream, buildFormat, buildMediaPresentationDescription, buildPeriod, buildRangedUri, buildRepresentation, buildSegmentList, buildSegmentTimelineElement, buildSingleSegmentBase, buildUtcTimingElement, maybeSkipTag, parse, parseAdaptationSet, parseAdaptationSetChild, parseAudioChannelConfiguration, parseAvailabilityTimeOffsetUs, parseBaseUrl, parseCea608AccessibilityChannel, parseCea708AccessibilityChannel, parseContentType, parseDateTime, parseDescriptor, parseDolbyChannelConfiguration, parseDuration, parseEac3SupplementalProperties, parseEvent, parseEventObject, parseEventStream, parseFloat, parseFrameRate, parseInitialization, parseInt, parseLabel, parseLastSegmentNumberSupplementalProperty, parseLong, parseMediaPresentationDescription, parseMpegChannelConfiguration, parsePeriod, parseProfiles, parseProgramInformation, parseRangedUrl, parseRepresentation, parseRoleFlagsFromAccessibilityDescriptors, parseRoleFlagsFromDashRoleScheme, parseRoleFlagsFromProperties, parseSegmentBase, parseSegmentList, parseSegmentTemplate, parseSegmentTimeline, parseSegmentUrl, parseSelectionFlagsFromDashRoleScheme, parseSelectionFlagsFromRoleDescriptors, parseServiceDescription, parseString, parseText, parseTvaAudioPurposeCsValue, parseUrlTemplate, parseUtcTiming
      • Methods inherited from class org.xml.sax.helpers.DefaultHandler

        characters, endDocument, endElement, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startElement, startPrefixMapping, unparsedEntityDecl, warning
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • BrightcoveDashManifestParser

        public BrightcoveDashManifestParser()
    • Method Detail

      • parseContentProtection

        protected android.util.Pair<java.lang.String,​com.google.android.exoplayer2.drm.DrmInitData.SchemeData> parseContentProtection​(org.xmlpull.v1.XmlPullParser xpp)
                                                                                                                                     throws org.xmlpull.v1.XmlPullParserException,
                                                                                                                                            java.io.IOException
        Parses a ContentProtection element.
        Overrides:
        parseContentProtection in class com.google.android.exoplayer2.source.dash.manifest.DashManifestParser
        Parameters:
        xpp - The parser from which to read.
        Returns:
        DrmInitData.SchemeData parsed from the ContentProtection element, or null if the element is unsupported.
        Throws:
        org.xmlpull.v1.XmlPullParserException - If an error occurs parsing the element.
        java.io.IOException - If an error occurs reading the element.
      • buildFormat

        protected com.google.android.exoplayer2.Format buildFormat​(java.lang.String id,
                                                                   java.lang.String containerMimeType,
                                                                   int width,
                                                                   int height,
                                                                   float frameRate,
                                                                   int audioChannels,
                                                                   int audioSamplingRate,
                                                                   int bitrate,
                                                                   java.lang.String language,
                                                                   java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> roleDescriptors,
                                                                   java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> accessibilityDescriptors,
                                                                   java.lang.String codecs,
                                                                   java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> supplementalProperties)
      • parseRoleFlagsFromRoleDescriptors

        protected int parseRoleFlagsFromRoleDescriptors​(java.util.List<com.google.android.exoplayer2.source.dash.manifest.Descriptor> roleDescriptors)
        Overrides:
        parseRoleFlagsFromRoleDescriptors in class com.google.android.exoplayer2.source.dash.manifest.DashManifestParser
      • buildSegmentTemplate

        protected com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTemplate buildSegmentTemplate​(com.google.android.exoplayer2.source.dash.manifest.RangedUri initialization,
                                                                                                                      long timescale,
                                                                                                                      long presentationTimeOffset,
                                                                                                                      long startNumber,
                                                                                                                      long endNumber,
                                                                                                                      long duration,
                                                                                                                      java.util.List<com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTimelineElement> timeline,
                                                                                                                      com.google.android.exoplayer2.source.dash.manifest.UrlTemplate initializationTemplate,
                                                                                                                      com.google.android.exoplayer2.source.dash.manifest.UrlTemplate mediaTemplate)
      • buildSegmentTemplate

        protected com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTemplate buildSegmentTemplate​(com.google.android.exoplayer2.source.dash.manifest.RangedUri initialization,
                                                                                                                      long timescale,
                                                                                                                      long presentationTimeOffset,
                                                                                                                      long startNumber,
                                                                                                                      long endNumber,
                                                                                                                      long duration,
                                                                                                                      java.util.List<com.google.android.exoplayer2.source.dash.manifest.SegmentBase.SegmentTimelineElement> timeline,
                                                                                                                      long availabilityTimeOffsetUs,
                                                                                                                      com.google.android.exoplayer2.source.dash.manifest.UrlTemplate initializationTemplate,
                                                                                                                      com.google.android.exoplayer2.source.dash.manifest.UrlTemplate mediaTemplate,
                                                                                                                      long timeShiftBufferDepthMs,
                                                                                                                      long periodStartUnixTimeMs)
        Overrides:
        buildSegmentTemplate in class com.google.android.exoplayer2.source.dash.manifest.DashManifestParser