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, ...) | 
|   | 
 | 
| void  | c_init_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_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 (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 (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...
  | 
|   | 
◆ ts_debug
      
        
          | #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 
 
 
◆ add_scaled()
      
        
          | void add_scaled  | 
          ( | 
          struct ts_sc_comp *const  | 
          ts_sc,  | 
        
        
           | 
           | 
          const uint16_t  | 
          sn  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Add a new TS_SCALED value to the ts_sc_comp object. 
- Parameters
 - 
  
  
 
 
 
◆ add_unscaled()
      
        
          | void add_unscaled  | 
          ( | 
          struct ts_sc_comp *const  | 
          ts_sc,  | 
        
        
           | 
           | 
          const uint16_t  | 
          sn  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Add a new unscaled TS value to the ts_sc_comp object. 
- Parameters
 - 
  
  
 
 
 
◆ c_add_ts()
      
        
          | 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  | 
  
   
 
 
◆ c_init_sc()
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  | 
  
   
 
 
◆ get_ts_scaled()
      
        
          | uint32_t get_ts_scaled  | 
          ( | 
          const struct ts_sc_comp *const  | 
          ts_sc | ) | 
           | 
        
      
 
Return the TS_SCALED value. 
- Parameters
 - 
  
  
 
- Returns
 - The TS_SCALED value 
 
 
 
◆ get_ts_stride()
      
        
          | uint32_t get_ts_stride  | 
          ( | 
          const struct ts_sc_comp *const  | 
          ts_sc | ) | 
           | 
        
      
 
Return the TS_STRIDE value. 
- Parameters
 - 
  
  
 
- Returns
 - TS_STRIDE value 
 
 
 
◆ get_ts_unscaled()
      
        
          | uint32_t get_ts_unscaled  | 
          ( | 
          const struct ts_sc_comp *const  | 
          ts_sc | ) | 
           | 
        
      
 
Return the unscaled TS value. 
- Parameters
 - 
  
  
 
- Returns
 - The unscaled TS value 
 
 
 
◆ nb_bits_scaled()
      
        
          | 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  | 
  
   
 
 
◆ nb_bits_unscaled()
      
        
          | 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  | 
  
   
 
 
◆ rohc_ts_sc_is_deducible()
      
        
          | 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