|
Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
|
Network packets and packet processing. More...
Classes | |
| class | ConcurrentQueue |
| Concurrent blocking packet queue. More... | |
| class | DelayedReader |
| Delayed reader. More... | |
| struct | FEC |
| FECFRAME packet. More... | |
| class | IComposer |
| Packet composer interface. More... | |
| class | Interleaver |
| Interleaves packets to transmit them in pseudo random order. More... | |
| class | IParser |
| Packet parser interface. More... | |
| class | IReader |
| Packet reader interface. More... | |
| class | IWriter |
| Packet writer interface. More... | |
| class | Packet |
| Packet. More... | |
| class | PacketFactory |
| Packet factory. More... | |
| class | Queue |
| Packet queue. More... | |
| class | Router |
| Route packets to writers. More... | |
| struct | RTCP |
| RTCP compound packet. More... | |
| struct | RTP |
| RTP packet. More... | |
| class | SortedQueue |
| Sorted packet queue. More... | |
| struct | UDP |
| UDP packet. More... | |
Typedefs | |
| typedef core::SharedPtr< Packet > | PacketPtr |
| Packet smart pointer. | |
| typedef uint32_t | source_t |
| Packet source ID identifying packet stream. | |
| typedef uint32_t | timestamp_t |
| Audio packet timestamp. | |
| typedef int32_t | timestamp_diff_t |
| Audio packet timestamps difference. | |
| typedef uint16_t | seqnum_t |
| Packet sequence number in packet stream. | |
| typedef int16_t | seqnum_diff_t |
| Packet sequence numbers difference. | |
| typedef uint16_t | blknum_t |
| FEC block number in a packet stream. | |
| typedef int16_t | blknum_diff_t |
| FEC block numbers difference. | |
| typedef uint64_t | ntp_timestamp_t |
| NTP timestamp. | |
| typedef uint32_t | channel_mask_t |
| Bitmask of channels present in audio packet. | |
Enumerations | |
| enum | FecScheme { FEC_None , FEC_ReedSolomon_M8 , FEC_LDPC_Staircase } |
| FECFRAME scheme. More... | |
| enum | { PrintPayload = (1 << 0) } |
| Print flags. More... | |
Functions | |
| const char * | fec_scheme_to_str (FecScheme) |
| FEC scheme to string. | |
| packet::ntp_timestamp_t | ntp_timestamp () |
| Get current NTP time. | |
| bool | ntp_equal_delta (ntp_timestamp_t a, ntp_timestamp_t b, ntp_timestamp_t delta) |
| Compares a and b if they close enough. | |
| ntp_timestamp_t | nanoseconds_2_ntp (core::nanoseconds_t ns) |
| Converts nanoseconds to ntp timestamp. | |
| core::nanoseconds_t | ntp_2_nanoseconds (ntp_timestamp_t ts) |
| Converts ntp timestamp to nanoseconds. | |
| void | print_packet (const Packet &packet, int flags) |
| Print packet to stderr. | |
| timestamp_diff_t | timestamp_diff (timestamp_t a, timestamp_t b) |
| Compute difference between two timestamps. | |
| bool | timestamp_lt (timestamp_t a, timestamp_t b) |
| Check if a is before b taking possible wrap into account. | |
| bool | timestamp_le (timestamp_t a, timestamp_t b) |
| Check if a is before or equal to b taking possible wrap into account. | |
| seqnum_diff_t | seqnum_diff (seqnum_t a, seqnum_t b) |
| Compute difference between two seqnums. | |
| bool | seqnum_lt (seqnum_t a, seqnum_t b) |
| Check if a is before b taking possible wrap into account. | |
| bool | seqnum_le (seqnum_t a, seqnum_t b) |
| Check if a is before or equal to b taking possible wrap into account. | |
| blknum_diff_t | blknum_diff (blknum_t a, blknum_t b) |
| Compute difference between two FEC block numbers. | |
| bool | blknum_lt (blknum_t a, blknum_t b) |
| Check if a is before b taking possible wrap into account. | |
| bool | blknum_le (blknum_t a, blknum_t b) |
| Check if a is before or equal to b taking possible wrap into account. | |
| size_t | num_channels (channel_mask_t ch_mask) |
| Compute number of channels in mask. | |
Network packets and packet processing.
| typedef int16_t roc::packet::blknum_diff_t |
| typedef uint16_t roc::packet::blknum_t |
| typedef uint32_t roc::packet::channel_mask_t |
| typedef uint64_t roc::packet::ntp_timestamp_t |
| typedef core::SharedPtr<Packet> roc::packet::PacketPtr |
| typedef int16_t roc::packet::seqnum_diff_t |
| typedef uint16_t roc::packet::seqnum_t |
| typedef uint32_t roc::packet::source_t |
| typedef int32_t roc::packet::timestamp_diff_t |
| typedef uint32_t roc::packet::timestamp_t |
| anonymous enum |
Print flags.
| Enumerator | |
|---|---|
| PrintPayload | Print packet payload. |
Definition at line 21 of file print_packet.h.
|
inline |
| ntp_timestamp_t roc::packet::nanoseconds_2_ntp | ( | core::nanoseconds_t | ns | ) |
Converts nanoseconds to ntp timestamp.
| ns | must be non-negative. |
| core::nanoseconds_t roc::packet::ntp_2_nanoseconds | ( | ntp_timestamp_t | ts | ) |
Converts ntp timestamp to nanoseconds.
| bool roc::packet::ntp_equal_delta | ( | ntp_timestamp_t | a, |
| ntp_timestamp_t | b, | ||
| ntp_timestamp_t | delta | ||
| ) |
Compares a and b if they close enough.
| packet::ntp_timestamp_t roc::packet::ntp_timestamp | ( | ) |
Get current NTP time.
|
inline |
| void roc::packet::print_packet | ( | const Packet & | packet, |
| int | flags | ||
| ) |
Print packet to stderr.
|
inline |
|
inline |
|
inline |
|
inline |