org.red5.server.net.rtmp.event
Class VideoData

java.lang.Object
  extended by org.red5.server.net.rtmp.event.BaseEvent
      extended by org.red5.server.net.rtmp.event.VideoData
All Implemented Interfaces:
Externalizable, Serializable, IoConstants, IEvent, IStreamPacket, IRTMPEvent, Constants, IStreamData<VideoData>

public class VideoData
extends BaseEvent
implements IoConstants, IStreamData<VideoData>, IStreamPacket

Video data event

See Also:
Serialized Form

Nested Class Summary
static class VideoData.FrameType
          Videoframe type
 
Nested classes/interfaces inherited from interface org.red5.server.api.event.IEvent
IEvent.Type
 
Field Summary
protected  IoBuffer data
          Video data
protected  VideoData.FrameType frameType
          Frame type, unknown by default
 
Fields inherited from class org.red5.server.net.rtmp.event.BaseEvent
header, object, refcount, source, timestamp
 
Fields inherited from interface org.red5.io.IoConstants
AVC_PACKET_TYPE_END_OF_SEQUENCE, AVC_PACKET_TYPE_NALU, AVC_PACKET_TYPE_SEQUENCE_HEADER, FLAG_CODEC_H263, FLAG_CODEC_SCREEN, FLAG_CODEC_VP6, FLAG_FORMAT_ADPCM, FLAG_FORMAT_MP3, FLAG_FORMAT_NELLYMOSER, FLAG_FORMAT_NELLYMOSER_8_KHZ, FLAG_FORMAT_RAW, FLAG_FRAMETYPE_DISPOSABLE, FLAG_FRAMETYPE_GENERATED_KEYFRAME, FLAG_FRAMETYPE_INFO, FLAG_FRAMETYPE_INTERFRAME, FLAG_FRAMETYPE_KEYFRAME, FLAG_RATE_11_KHZ, FLAG_RATE_22_KHZ, FLAG_RATE_44_KHZ, FLAG_RATE_48_KHZ, FLAG_RATE_5_5_KHZ, FLAG_SIZE_16_BIT, FLAG_SIZE_8_BIT, FLAG_TYPE_MONO, FLAG_TYPE_STEREO, INFO_PACKET_SEEK_END, INFO_PACKET_SEEK_START, MASK_SOUND_FORMAT, MASK_SOUND_RATE, MASK_SOUND_SIZE, MASK_SOUND_TYPE, MASK_VIDEO_CODEC, MASK_VIDEO_FRAMETYPE, TYPE_AUDIO, TYPE_ENCRYPTED, TYPE_ENCRYPTED_AUDIO, TYPE_ENCRYPTED_METADATA, TYPE_ENCRYPTED_VIDEO, TYPE_METADATA, TYPE_VIDEO
 
Fields inherited from interface org.red5.server.net.rtmp.message.Constants
HANDSHAKE_SIZE, HEADER_CONTINUE, HEADER_NEW, HEADER_SAME_SOURCE, HEADER_TIMER_CHANGE, MEDIUM_INT_MAX, SO_CLIENT_CLEAR_DATA, SO_CLIENT_DELETE_DATA, SO_CLIENT_INITIAL_DATA, SO_CLIENT_SEND_MESSAGE, SO_CLIENT_STATUS, SO_CLIENT_UPDATE_ATTRIBUTE, SO_CLIENT_UPDATE_DATA, SO_CONNECT, SO_DELETE_ATTRIBUTE, SO_DISCONNECT, SO_SEND_MESSAGE, SO_SET_ATTRIBUTE, SOURCE_TYPE_LIVE, SOURCE_TYPE_VOD, TYPE_ABORT, TYPE_AGGREGATE, TYPE_AUDIO_DATA, TYPE_BYTES_READ, TYPE_CHUNK_SIZE, TYPE_CLIENT_BANDWIDTH, TYPE_EDGE_ORIGIN, TYPE_FLEX_MESSAGE, TYPE_FLEX_SHARED_OBJECT, TYPE_FLEX_STREAM_SEND, TYPE_INVOKE, TYPE_NOTIFY, TYPE_PING, TYPE_SERVER_BANDWIDTH, TYPE_SHARED_OBJECT, TYPE_STREAM_METADATA, TYPE_VIDEO_DATA
 
Constructor Summary
VideoData()
          Constructs a new VideoData.
VideoData(IoBuffer data)
          Create video data event with given data buffer
VideoData(IoBuffer data, boolean copy)
          Create video data event with given data buffer
 
Method Summary
 VideoData duplicate()
          Duplicate this message / event.
 IoBuffer getData()
          Getter for property 'data'.
 byte getDataType()
          Getter for data type
 VideoData.FrameType getFrameType()
          Getter for frame type
 void readExternal(ObjectInput in)
           
protected  void releaseInternal()
          Release event
 void setData(byte[] data)
           
 void setData(IoBuffer data)
           
 void setDataType(byte dataType)
           
 String toString()
          
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class org.red5.server.net.rtmp.event.BaseEvent
getHeader, getObject, getSource, getSourceType, getTimestamp, getType, hasSource, release, retain, setHeader, setSource, setSourceType, setTimestamp, setType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.red5.server.api.stream.IStreamPacket
getTimestamp
 

Field Detail

data

protected IoBuffer data
Video data


frameType

protected VideoData.FrameType frameType
Frame type, unknown by default

Constructor Detail

VideoData

public VideoData()
Constructs a new VideoData.


VideoData

public VideoData(IoBuffer data)
Create video data event with given data buffer

Parameters:
data - Video data

VideoData

public VideoData(IoBuffer data,
                 boolean copy)
Create video data event with given data buffer

Parameters:
data - Video data
copy - true to use a copy of the data or false to use reference
Method Detail

getDataType

public byte getDataType()
Getter for data type

Specified by:
getDataType in interface IStreamPacket
Specified by:
getDataType in interface IRTMPEvent
Specified by:
getDataType in class BaseEvent
Returns:
Data type

setDataType

public void setDataType(byte dataType)

getData

public IoBuffer getData()
Getter for property 'data'.

Specified by:
getData in interface IStreamPacket
Specified by:
getData in interface IStreamData<VideoData>
Returns:
Value for property 'data'.

setData

public void setData(IoBuffer data)

setData

public void setData(byte[] data)

getFrameType

public VideoData.FrameType getFrameType()
Getter for frame type

Returns:
Type of video frame

releaseInternal

protected void releaseInternal()
Release event

Specified by:
releaseInternal in class BaseEvent

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Overrides:
readExternal in class BaseEvent
Throws:
IOException
ClassNotFoundException

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Overrides:
writeExternal in class BaseEvent
Throws:
IOException

duplicate

public VideoData duplicate()
                    throws IOException,
                           ClassNotFoundException
Duplicate this message / event.

Specified by:
duplicate in interface IStreamData<VideoData>
Returns:
duplicated event
Throws:
IOException
ClassNotFoundException

toString

public String toString()

Overrides:
toString in class Object


Copyright © 2006-2012 The Red5 Project