Scaled RTP Timestamp encoding.  
More...
#include "comp_scaled_rtp_ts.h"
#include "sdvl.h"
#include "rohc_traces_internal.h"
#include <stdlib.h>
#include <assert.h>
|  | 
| #define | ts_debug(entity_struct,  format, ...) | 
|  | 
|  | 
| bool | c_create_sc (struct ts_sc_comp *const ts_sc, const size_t wlsb_window_width, rohc_trace_callback2_t trace_cb, void *const trace_cb_priv) | 
|  | Create the ts_sc_comp object.  More... 
 | 
|  | 
| void | c_destroy_sc (struct ts_sc_comp *const ts_sc) | 
|  | Destroy the ts_sc_comp object.  More... 
 | 
|  | 
| 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.  More... 
 | 
|  | 
| void | nb_bits_unscaled (const struct ts_sc_comp *const ts_sc, size_t *const bits_nr_less_equal_than_2, size_t *const bits_nr_more_than_2) | 
|  | Return the number of bits needed to encode unscaled TS.  More... 
 | 
|  | 
| 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.  More... 
 | 
|  | 
| void | nb_bits_scaled (const struct ts_sc_comp *const ts_sc, size_t *const bits_nr_less_equal_than_2, size_t *const bits_nr_more_than_2) | 
|  | Return the number of bits needed to encode TS_SCALED.  More... 
 | 
|  | 
| 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.  More... 
 | 
|  | 
| uint32_t | get_ts_stride (const struct ts_sc_comp *const ts_sc) | 
|  | Return the TS_STRIDE value.  More... 
 | 
|  | 
| uint32_t | get_ts_scaled (const struct ts_sc_comp *const ts_sc) | 
|  | Return the TS_SCALED value.  More... 
 | 
|  | 
| uint32_t | get_ts_unscaled (const struct ts_sc_comp *const ts_sc) | 
|  | Return the unscaled TS value.  More... 
 | 
|  | 
| 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.  More... 
 | 
|  | 
      
        
          | #define ts_debug | ( |  | entity_struct, | 
        
          |  |  |  | format, | 
        
          |  |  |  | ... | 
        
          |  | ) |  |  | 
      
 
Value:
                   format, ##__VA_ARGS__)
Definition: rohc_traces.h:83
#define ROHC_PROFILE_GENERAL
A general profile number used for traces not related to a specific profile. 
Definition: rohc_traces.h:44
#define rohc_debug(entity_struct, entity, profile, format,...)
Definition: rohc_traces_internal.h:61
 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. 
- Parameters
- 
  
  
 
 
      
        
          | 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. 
- Parameters
- 
  
  
 
 
      
        
          | 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. 
- Parameters
- 
  
    | ts_sc | The ts_sc_comp object |  | ts | The timestamp to add |  | sn | The sequence number of the RTP packet |  
 
 
 
Create the ts_sc_comp object. 
- Parameters
- 
  
    | 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 trace callback |  | trace_cb_priv | An optional private context for the trace callback, may be NULL |  
 
- Returns
- true if creation is successful, false otherwise 
 
 
      
        
          | void c_destroy_sc | ( | struct ts_sc_comp *const | ts_sc | ) |  | 
      
 
 
      
        
          | uint32_t get_ts_scaled | ( | const struct ts_sc_comp *const | ts_sc | ) |  | 
      
 
Return the TS_SCALED value. 
- Parameters
- 
  
  
- Returns
- The TS_SCALED value 
 
 
      
        
          | uint32_t get_ts_stride | ( | const struct ts_sc_comp *const | ts_sc | ) |  | 
      
 
Return the TS_STRIDE value. 
- Parameters
- 
  
  
- Returns
- TS_STRIDE value 
 
 
      
        
          | uint32_t get_ts_unscaled | ( | const struct ts_sc_comp *const | ts_sc | ) |  | 
      
 
Return the unscaled TS value. 
- Parameters
- 
  
  
- Returns
- The unscaled TS value 
 
 
      
        
          | void nb_bits_scaled | ( | const struct ts_sc_comp *const | ts_sc, | 
        
          |  |  | size_t *const | bits_nr_less_equal_than_2, | 
        
          |  |  | size_t *const | bits_nr_more_than_2 | 
        
          |  | ) |  |  | 
      
 
Return the number of bits needed to encode TS_SCALED. 
- Parameters
- 
  
    |  | ts_sc | The ts_sc_comp object |  | [out] | bits_nr_less_equal_than_2 | The number of bits needed to encode TS_SCALED in a field that is smaller than or equal to 2 bits |  | [out] | bits_nr_more_than_2 | The number of bits needed to encode TS_SCALED in a field that is strictly larger than to 2 bits |  
 
 
 
      
        
          | void nb_bits_unscaled | ( | const struct ts_sc_comp *const | ts_sc, | 
        
          |  |  | size_t *const | bits_nr_less_equal_than_2, | 
        
          |  |  | size_t *const | bits_nr_more_than_2 | 
        
          |  | ) |  |  | 
      
 
Return the number of bits needed to encode unscaled TS. 
- Parameters
- 
  
    |  | ts_sc | The ts_sc_comp object |  | [out] | bits_nr_less_equal_than_2 | The number of bits needed to encode TS_SCALED in a field that is smaller than or equal to 2 bits |  | [out] | bits_nr_more_than_2 | The number of bits needed to encode TS_SCALED in a field that is strictly larger than to 2 bits |  
 
 
 
      
        
          | 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. 
- Parameters
- 
  
    | ts_sc | The TS SCALED compression context |  
 
- Returns
- true if TS is deducible from SN, false otherwise