Class RtpPacket
An RTP packet.
Inheritance
Namespace: FM.LiveSwitch
Assembly: FM.LiveSwitch.dll
Syntax
public class RtpPacket : object
Constructors
RtpPacket()
Initializes a new instance of the RtpPacket class.
Declaration
public RtpPacket()
RtpPacket(DataBuffer)
Initializes a new instance of the RtpPacket class.
Declaration
public RtpPacket(DataBuffer payload)
Parameters
Type | Name | Description |
---|---|---|
DataBuffer | payload | The payload for the RTP packet. |
Properties
Buffer
Gets the buffer.
Declaration
public DataBuffer Buffer { get; }
Property Value
Type | Description |
---|---|
DataBuffer |
ContributingSourceCount
Gets the number of ContributingSources.
Declaration
public int ContributingSourceCount { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
ContributingSources
Gets or sets the contributing sources.
Declaration
public long[] ContributingSources { get; set; }
Property Value
Type | Description |
---|---|
System.Int64[] |
ContributingSourcesLength
Gets the length of the ContributingSources in bytes.
Declaration
public int ContributingSourcesLength { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
ContributingSourcesOffset
Gets the offset of the ContributingSources array.
Declaration
public int ContributingSourcesOffset { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Extension
Gets a value indicating whether this RtpPacket has a header extension. If the extension bit is set, the fixed header MUST be followed by exactly one header extension.
Declaration
public bool Extension { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
FixedHeaderLength
Gets the length of the fixed header.
Declaration
public static int FixedHeaderLength { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Header
Gets the header.
Declaration
public DataBuffer Header { get; }
Property Value
Type | Description |
---|---|
DataBuffer |
HeaderExtension
Gets or sets the header extension.
Declaration
public DataBuffer HeaderExtension { get; set; }
Property Value
Type | Description |
---|---|
DataBuffer |
HeaderExtensionId
Gets or sets the header extension ID.
Declaration
public int HeaderExtensionId { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
HeaderExtensionLength
Gets the length of the HeaderExtension in bytes.
Declaration
public int HeaderExtensionLength { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
HeaderExtensionOffset
Gets the offset of the HeaderExtensionId.
Declaration
public int HeaderExtensionOffset { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
HeaderLength
Gets the length of the fixed and variable headers.
Declaration
public int HeaderLength { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Marker
Gets or sets a value indicating whether this RtpPacket has the marker flag set.
Declaration
public bool Marker { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
Padding
Gets or sets a value indicating whether this RtpPacket is padded.
Declaration
public bool Padding { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
PaddingLength
Gets or sets the padding length.
Declaration
public int PaddingLength { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Payload
Gets or sets the packet payload.
Declaration
public DataBuffer Payload { get; set; }
Property Value
Type | Description |
---|---|
DataBuffer |
PayloadLength
Gets the length of the Payload.
Declaration
public int PayloadLength { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
PayloadOffset
Gets the offset of the Payload.
Declaration
public int PayloadOffset { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
PayloadType
Gets or sets the payload type.
Declaration
public int PayloadType { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
SequenceNumber
Gets or sets the sequence number.
Declaration
public int SequenceNumber { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
SynchronizationSource
Gets or sets the synchronization source.
Declaration
public long SynchronizationSource { get; set; }
Property Value
Type | Description |
---|---|
System.Int64 |
Timestamp
Gets or sets the timestamp.
Declaration
public long Timestamp { get; set; }
Property Value
Type | Description |
---|---|
System.Int64 |
VariableHeaderLength
Gets the length of the variable header.
Declaration
public int VariableHeaderLength { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Version
Gets or sets the version. This field identifies the version of RTP. The version defined by this specification is two(2). (The value 1 is used by the first draft version of RTP and the value 0 is used by the protocol initially implemented in the "vat" audio tool.)
Declaration
public int Version { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
Methods
GetSequenceNumberDelta(Int32, Int32)
Retrieves the difference between two sequence numbers while accounting for overflow rollover.
Declaration
public static int GetSequenceNumberDelta(int sequenceNumber, int lastSequenceNumber)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | sequenceNumber | The current sequence number. |
System.Int32 | lastSequenceNumber | The last (previous) sequence number. |
Returns
Type | Description |
---|---|
System.Int32 | The difference between the two sequence numbers. |
Wrap(DataBuffer)
Parses the specified buffer.
Declaration
public static RtpPacket Wrap(DataBuffer buffer)
Parameters
Type | Name | Description |
---|---|---|
DataBuffer | buffer | The buffer. |
Returns
Type | Description |
---|---|
RtpPacket | Rtp.Packet |