ROHC compression/decompression library
|
ROHC decompression context for the RTP profile. More...
#include "d_rtp.h"
#include "rohc_traces_internal.h"
#include "rohc_bit_ops.h"
#include "rohc_debug.h"
#include "rohc_utils.h"
#include "ts_sc_decomp.h"
#include "sdvl.h"
#include "crc.h"
#include "decode.h"
#include "rohc_decomp_internals.h"
#include "protocols/udp.h"
#include "protocols/rtp.h"
#include <assert.h>
Defines | |
#define | RTP_CONST_DYN_PART_SIZE 9 |
The size (in bytes) of the constant RTP dynamic part. | |
Functions | |
void * | d_rtp_create (const struct d_context *const context) |
Create the RTP decompression context. | |
Variables | |
struct d_profile | d_rtp_profile |
Define the decompression part of the RTP profile as described in the RFC 3095. |
ROHC decompression context for the RTP profile.
#define RTP_CONST_DYN_PART_SIZE 9 |
The size (in bytes) of the constant RTP dynamic part.
According to RFC3095 section 5.7.7.6: 1 (flags V, P, RX, CC) + 1 (flags M, PT) + 2 (RTP SN) + 4 (RTP TS) + 1 (CSRC list) = 9 bytes
The size of the Generic CSRC list field is considered constant because generic CSRC list is not supported yet and thus 1 byte of zero is used.
void* d_rtp_create | ( | const struct d_context *const | context | ) |
Create the RTP decompression context.
This function is one of the functions that must exist in one profile for the framework to work.
References d_generic_context::build_next_header, d_generic_context::compute_crc_dynamic, d_generic_context::compute_crc_static, d_create_sc(), d_generic_create(), d_generic_destroy(), d_generic_context::decode_values_from_bits, d_context::decompressor, d_generic_context::detect_packet_type, d_profile::id, d_generic_context::inner_ip_changes, d_generic_changes::next_header, d_generic_changes::next_header_len, d_generic_context::next_header_len, d_generic_context::next_header_proto, d_generic_context::outer_ip_changes, d_generic_context::parse_dyn_next_hdr, d_generic_context::parse_static_next_hdr, d_generic_context::parse_uo_remainder, d_context::profile, rohc_error, ROHC_IPPROTO_UDP, rohc_lsb_free(), rohc_lsb_new(), ROHC_LSB_SHIFT_RTP_SN, ROHC_TRACE_DECOMP, rtp_compute_crc_dynamic(), rtp_compute_crc_static(), d_generic_context::sn_lsb_ctxt, d_generic_context::specific, rohc_decomp::trace_callback, d_rtp_context::ts_scaled_ctxt, d_rtp_context::udp_checksum_present, d_generic_context::update_context, and zfree.
struct d_profile d_rtp_profile |
{ ROHC_PROFILE_RTP, "RTP / Decompressor", d_generic_decode, d_rtp_create, d_rtp_destroy, d_generic_get_sn, }
Define the decompression part of the RTP profile as described in the RFC 3095.