ROHC compression/decompression library
|
Scaled RTP Timestamp encoding. More...
#include "scaled_rtp_ts.h"
#include "sdvl.h"
#include "rohc_traces_internal.h"
#include <stdlib.h>
#include <assert.h>
Defines | |
#define | ts_debug(entity_struct, format,...) |
Functions | |
bool | c_create_sc (struct ts_sc_comp *const ts_sc, const size_t wlsb_window_width, rohc_trace_callback_t trace_cb, rohc_trace_callback2_t trace_cb2, void *const trace_cb_priv) |
Create the ts_sc_comp object. | |
void | c_destroy_sc (struct ts_sc_comp *const ts_sc) |
Destroy the ts_sc_comp object. | |
void | c_add_ts (struct ts_sc_comp *const ts_sc, const uint32_t ts, const uint16_t sn) |
Store the new TS, calculate new values and update the state. | |
bool | nb_bits_unscaled (const struct ts_sc_comp *const ts_sc, size_t *const bits_nr) |
Return the number of bits needed to encode unscaled TS. | |
void | add_unscaled (const struct ts_sc_comp *const ts_sc, const uint16_t sn) |
Add a new unscaled TS value to the ts_sc_comp object. | |
bool | nb_bits_scaled (const struct ts_sc_comp *const ts_sc, size_t *const bits_nr) |
Return the number of bits needed to encode TS_SCALED. | |
void | add_scaled (const struct ts_sc_comp *const ts_sc, const uint16_t sn) |
Add a new TS_SCALED value to the ts_sc_comp object. | |
uint32_t | get_ts_stride (const struct ts_sc_comp *const ts_sc) |
Return the TS_STRIDE value. | |
uint32_t | get_ts_scaled (const struct ts_sc_comp *const ts_sc) |
Return the TS_SCALED value. | |
uint32_t | get_ts_unscaled (const struct ts_sc_comp *const ts_sc) |
Return the unscaled TS value. | |
bool | rohc_ts_sc_is_deducible (const struct ts_sc_comp *const ts_sc) |
Whether TimeStamp (TS) is deducible from the Sequence Number (SN) or not. |
Scaled RTP Timestamp encoding.
#define ts_debug | ( | entity_struct, | |
format, | |||
... | |||
) |
rohc_debug(entity_struct, ROHC_TRACE_COMP, ROHC_PROFILE_GENERAL, \ format, ##__VA_ARGS__)
Print debug messages for the ts_sc_comp module
void add_scaled | ( | const struct ts_sc_comp *const | ts_sc, |
const uint16_t | sn | ||
) |
Add a new TS_SCALED value to the ts_sc_comp object.
ts_sc | The ts_sc_comp object |
sn | The Sequence Number |
void add_unscaled | ( | const struct ts_sc_comp *const | ts_sc, |
const uint16_t | sn | ||
) |
Add a new unscaled TS value to the ts_sc_comp object.
ts_sc | The ts_sc_comp object |
sn | The Sequence Number |
void c_add_ts | ( | struct ts_sc_comp *const | ts_sc, |
const uint32_t | ts, | ||
const uint16_t | sn | ||
) |
Store the new TS, calculate new values and update the state.
ts_sc | The ts_sc_comp object |
ts | The timestamp to add |
sn | The sequence number of the RTP packet |
bool c_create_sc | ( | struct ts_sc_comp *const | ts_sc, |
const size_t | wlsb_window_width, | ||
rohc_trace_callback_t | trace_cb, | ||
rohc_trace_callback2_t | trace_cb2, | ||
void *const | trace_cb_priv | ||
) |
Create the ts_sc_comp object.
ts_sc | The ts_sc_comp object to create |
wlsb_window_width | The width of the W-LSB sliding window to use for TS_STRIDE (must be > 0) |
trace_cb | The old trace callback |
trace_cb2 | The new trace callback |
trace_cb_priv | An optional private context for the trace callback, may be NULL |
void c_destroy_sc | ( | struct ts_sc_comp *const | ts_sc | ) |
Destroy the ts_sc_comp object.
ts_sc | The ts_sc_comp object to destroy |
uint32_t get_ts_scaled | ( | const struct ts_sc_comp *const | ts_sc | ) |
uint32_t get_ts_stride | ( | const struct ts_sc_comp *const | ts_sc | ) |
uint32_t get_ts_unscaled | ( | const struct ts_sc_comp *const | ts_sc | ) |
bool nb_bits_scaled | ( | const struct ts_sc_comp *const | ts_sc, |
size_t *const | bits_nr | ||
) |
Return the number of bits needed to encode TS_SCALED.
ts_sc | The ts_sc_comp object |
bits_nr | OUT: The number of bits needed |
bool nb_bits_unscaled | ( | const struct ts_sc_comp *const | ts_sc, |
size_t *const | bits_nr | ||
) |
Return the number of bits needed to encode unscaled TS.
ts_sc | The ts_sc_comp object |
bits_nr | OUT: The number of bits needed |
bool rohc_ts_sc_is_deducible | ( | const struct ts_sc_comp *const | ts_sc | ) |
Whether TimeStamp (TS) is deducible from the Sequence Number (SN) or not.
ts_sc | The TS SCALED compression context |