# IncomingRTPPkt Class Reference
[RTP data packets manipulation.]

RTP packets received from other participants. More...

`#include <rtppkt.h>`

Inheritance diagram for IncomingRTPPkt:

List of all members.

## Public Member Functions

| IncomingRTPPkt (const unsigned char *block, size_t len)
| Build an RTP packet object from a data buffer.
| ~IncomingRTPPkt ()
bool | isHeaderValid ()
| Get validity of this packet.
uint32 | getSSRC () const
| Get synchronization source numeric identifier.
int32 | unprotect (CryptoContext *pcc)
| Unprotect a received packet.
bool | operator== (const IncomingRTPPkt &p) const
| Two incoming packets are equal if they come from sources with the same SSRC and have the same sequence number.
bool | operator!= (const IncomingRTPPkt &p) const
| Two incoming packets are not equal if they come from different sources or have different sequence numbers.

## Detailed Description

RTP packets received from other participants.

This class is intented to construct a packet object just after every packet is received by the scheduled queue, so that they are processed in an understandable and format independent manner inside the stack.

Author:
  Federico Montesino Pouzols <fedemp@altern.org>

## Constructor & Destructor Documentation

IncomingRTPPkt::IncomingRTPPkt | ( | const unsigned char * | block,
|  | size_t | len
| ) |  |

Build an RTP packet object from a data buffer.

This constructor first performs a generic RTP data packet header check, whose result can be checked via isHeaderValid().

Parameters:

  block | pointer to the buffer the whole packet is stored in.
  len | length of the whole packet, expressed in octets.

Note:
  If check fails, the packet object is incomplete. checking isHeaderValid() is recommended before using a new RTPPacket object.

IncomingRTPPkt::~IncomingRTPPkt | ( | ) | `[inline]`

## Member Function Documentation

uint32 IncomingRTPPkt::getSSRC | ( | ) | const`[inline]`

Get synchronization source numeric identifier.

Returns:
  32-bits Synchronization SouRCe numeric identifier, in host order.

bool IncomingRTPPkt::isHeaderValid | ( | ) | `[inline]`

Get validity of this packet.

Returns:
  whether the header check performed at construction time ended successfully.

bool IncomingRTPPkt::operator!= | ( | const IncomingRTPPkt & | p ) | const`[inline]`

Two incoming packets are not equal if they come from different sources or have different sequence numbers.

bool IncomingRTPPkt::operator== | ( | const IncomingRTPPkt & | p ) | const`[inline]`

Two incoming packets are equal if they come from sources with the same SSRC and have the same sequence number.

int32 IncomingRTPPkt::unprotect | ( | CryptoContext * | pcc ) |

Unprotect a received packet.

Perform SRTP processing on this packet.

Parameters:

  pcc | Pointer to SRTP CryptoContext.

Returns:
  one if no errors, -1 if authentication failed, -2 if replay check failed

The documentation for this class was generated from the following file:

- rtppkt.h