Class DecoderReuseEvaluation


  • public final class DecoderReuseEvaluation
    extends Object
    The result of an evaluation to determine whether a decoder can be reused for a new input format.
    • Field Detail

      • REUSE_RESULT_NO

        public static final int REUSE_RESULT_NO
        The decoder cannot be reused.
        See Also:
        Constant Field Values
      • REUSE_RESULT_YES_WITH_FLUSH

        public static final int REUSE_RESULT_YES_WITH_FLUSH
        The decoder can be reused, but must be flushed.
        See Also:
        Constant Field Values
      • REUSE_RESULT_YES_WITH_RECONFIGURATION

        public static final int REUSE_RESULT_YES_WITH_RECONFIGURATION
        The decoder can be reused. It does not need to be flushed, but must be reconfigured by prefixing the next input buffer with the new format's configuration data.
        See Also:
        Constant Field Values
      • REUSE_RESULT_YES_WITHOUT_RECONFIGURATION

        public static final int REUSE_RESULT_YES_WITHOUT_RECONFIGURATION
        The decoder can be kept. It does not need to be flushed and no reconfiguration is required.
        See Also:
        Constant Field Values
      • DISCARD_REASON_REUSE_NOT_IMPLEMENTED

        public static final int DISCARD_REASON_REUSE_NOT_IMPLEMENTED
        Decoder reuse is not implemented.
        See Also:
        Constant Field Values
      • DISCARD_REASON_WORKAROUND

        public static final int DISCARD_REASON_WORKAROUND
        Decoder reuse is disabled by a workaround.
        See Also:
        Constant Field Values
      • DISCARD_REASON_APP_OVERRIDE

        public static final int DISCARD_REASON_APP_OVERRIDE
        Decoder reuse is disabled by overriding behavior in application code.
        See Also:
        Constant Field Values
      • DISCARD_REASON_MIME_TYPE_CHANGED

        public static final int DISCARD_REASON_MIME_TYPE_CHANGED
        The sample MIME type is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_OPERATING_RATE_CHANGED

        public static final int DISCARD_REASON_OPERATING_RATE_CHANGED
        The codec's operating rate is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_INITIALIZATION_DATA_CHANGED

        public static final int DISCARD_REASON_INITIALIZATION_DATA_CHANGED
        The format initialization data is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_MAX_INPUT_SIZE_EXCEEDED

        public static final int DISCARD_REASON_MAX_INPUT_SIZE_EXCEEDED
        The new format may exceed the decoder's configured maximum sample size, in bytes.
        See Also:
        Constant Field Values
      • DISCARD_REASON_DRM_SESSION_CHANGED

        public static final int DISCARD_REASON_DRM_SESSION_CHANGED
        The DRM session is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_VIDEO_MAX_RESOLUTION_EXCEEDED

        public static final int DISCARD_REASON_VIDEO_MAX_RESOLUTION_EXCEEDED
        The new format may exceed the decoder's configured maximum resolution.
        See Also:
        Constant Field Values
      • DISCARD_REASON_VIDEO_RESOLUTION_CHANGED

        public static final int DISCARD_REASON_VIDEO_RESOLUTION_CHANGED
        The video resolution is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_VIDEO_ROTATION_CHANGED

        public static final int DISCARD_REASON_VIDEO_ROTATION_CHANGED
        The video rotation is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_VIDEO_COLOR_INFO_CHANGED

        public static final int DISCARD_REASON_VIDEO_COLOR_INFO_CHANGED
        The video ColorInfo is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_AUDIO_CHANNEL_COUNT_CHANGED

        public static final int DISCARD_REASON_AUDIO_CHANNEL_COUNT_CHANGED
        The audio channel count is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_AUDIO_SAMPLE_RATE_CHANGED

        public static final int DISCARD_REASON_AUDIO_SAMPLE_RATE_CHANGED
        The audio sample rate is changing.
        See Also:
        Constant Field Values
      • DISCARD_REASON_AUDIO_ENCODING_CHANGED

        public static final int DISCARD_REASON_AUDIO_ENCODING_CHANGED
        The audio encoding is changing.
        See Also:
        Constant Field Values
      • decoderName

        public final String decoderName
        The name of the decoder.
      • oldFormat

        public final Format oldFormat
        The Format for which the decoder was previously configured.
      • newFormat

        public final Format newFormat
        The new Format being evaluated.
      • discardReasons

        @DecoderDiscardReasons
        public final int discardReasons
        Reasons why the decoder cannot be reused. Always 0 if reuse is possible. May also be {code 0} if reuse is not possible for an unspecified reason.
    • Constructor Detail

      • DecoderReuseEvaluation

        public DecoderReuseEvaluation​(String decoderName,
                                      Format oldFormat,
                                      Format newFormat,
                                      @DecoderReuseResult
                                      int result,
                                      @DecoderDiscardReasons
                                      int discardReasons)
        Parameters:
        decoderName - The name of the decoder.
        oldFormat - The Format for which the decoder was previously configured.
        newFormat - The new Format being evaluated.
        result - The result of the evaluation.
        discardReasons - One or more reasons why the decoder cannot be reused, or 0 if reuse is possible.
    • Method Detail

      • equals

        public boolean equals​(@Nullable
                              Object obj)
        Overrides:
        equals in class Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object