Class RTMPDecodeState

java.lang.Object
org.red5.server.net.protocol.RTMPDecodeState

public class RTMPDecodeState extends Object
Represents current decode state of the protocol.
  • Field Details

    • DECODER_OK

      public static byte DECODER_OK
      Decoding finished successfully state constant.
    • DECODER_CONTINUE

      public static byte DECODER_CONTINUE
      Decoding continues state constant.
    • DECODER_BUFFER

      public static byte DECODER_BUFFER
      Decoder is buffering state constant.
    • sessionId

      public final String sessionId
      Session id to which this decoding state belongs.
    • decoderBufferAmount

      private int decoderBufferAmount
      Classes like the RTMP state object will extend this marker interface.
    • decoderState

      private byte decoderState
      Current decoder state, decoder is stopped by default.
    • names

      private static final String[] names
      Names for the states.
  • Constructor Details

    • RTMPDecodeState

      public RTMPDecodeState(String sessionId)
  • Method Details

    • getDecoderBufferAmount

      public int getDecoderBufferAmount()
      Returns current buffer amount.
      Returns:
      Buffer amount
    • bufferDecoding

      public void bufferDecoding(int amount)
      Specifies buffer decoding amount
      Parameters:
      amount - Buffer decoding amount
    • continueDecoding

      public void continueDecoding()
      Set decoding state as "needed to be continued".
    • canStartDecoding

      public boolean canStartDecoding(int remaining)
      Checks whether remaining buffer size is greater or equal than buffer amount and so if it makes sense to start decoding.
      Parameters:
      remaining - Remaining buffer size
      Returns:
      true if there is data to decode, false otherwise
    • startDecoding

      public void startDecoding()
      Starts decoding. Sets state to "ready" and clears buffer amount.
    • hasDecodedObject

      public boolean hasDecodedObject()
      Checks whether decoding is complete.
      Returns:
      true if decoding has finished, false otherwise
    • canContinueDecoding

      public boolean canContinueDecoding()
      Checks whether decoding process can be continued.
      Returns:
      true if decoding can be continued, false otherwise
    • getSessionId

      public String getSessionId()
      Returns:
      the sessionId
    • toString

      public String toString()
      Overrides:
      toString in class Object