BLOG | DOCUMENTATION | GITHUB

Home --> Documentations --> PJMEDIA Reference

jbuf.h File Reference

Adaptive jitter buffer implementation. More...

Data Structures

struct  pjmedia_jb_state
 

Macros

#define PJMEDIA_JB_DEFAULT_INIT_DELAY   15
 

Typedefs

typedef struct pjmedia_jbuf pjmedia_jbuf
 

Enumerations

enum  pjmedia_jb_frame_type {
  PJMEDIA_JB_MISSING_FRAME = 0 ,
  PJMEDIA_JB_NORMAL_FRAME = 1 ,
  PJMEDIA_JB_ZERO_PREFETCH_FRAME = 2 ,
  PJMEDIA_JB_ZERO_EMPTY_FRAME = 3
}
 
enum  pjmedia_jb_discard_algo {
  PJMEDIA_JB_DISCARD_NONE = 0 ,
  PJMEDIA_JB_DISCARD_STATIC ,
  PJMEDIA_JB_DISCARD_PROGRESSIVE
}
 

Functions

pj_status_t pjmedia_jbuf_create (pj_pool_t *pool, const pj_str_t *name, unsigned frame_size, unsigned ptime, unsigned max_count, pjmedia_jbuf **p_jb)
 
pj_status_t pjmedia_jbuf_set_ptime (pjmedia_jbuf *jb, unsigned ptime)
 
pj_status_t pjmedia_jbuf_set_fixed (pjmedia_jbuf *jb, unsigned prefetch)
 
pj_status_t pjmedia_jbuf_set_adaptive (pjmedia_jbuf *jb, unsigned prefetch, unsigned min_prefetch, unsigned max_prefetch)
 
pj_status_t pjmedia_jbuf_set_discard (pjmedia_jbuf *jb, pjmedia_jb_discard_algo algo)
 
pj_status_t pjmedia_jbuf_destroy (pjmedia_jbuf *jb)
 
pj_status_t pjmedia_jbuf_reset (pjmedia_jbuf *jb)
 
void pjmedia_jbuf_put_frame (pjmedia_jbuf *jb, const void *frame, pj_size_t size, int frame_seq)
 
void pjmedia_jbuf_put_frame2 (pjmedia_jbuf *jb, const void *frame, pj_size_t size, pj_uint32_t bit_info, int frame_seq, pj_bool_t *discarded)
 
void pjmedia_jbuf_put_frame3 (pjmedia_jbuf *jb, const void *frame, pj_size_t size, pj_uint32_t bit_info, int frame_seq, pj_uint32_t frame_ts, pj_bool_t *discarded)
 
void pjmedia_jbuf_get_frame (pjmedia_jbuf *jb, void *frame, char *p_frm_type)
 
void pjmedia_jbuf_get_frame2 (pjmedia_jbuf *jb, void *frame, pj_size_t *size, char *p_frm_type, pj_uint32_t *bit_info)
 
void pjmedia_jbuf_get_frame3 (pjmedia_jbuf *jb, void *frame, pj_size_t *size, char *p_frm_type, pj_uint32_t *bit_info, pj_uint32_t *ts, int *seq)
 
void pjmedia_jbuf_peek_frame (pjmedia_jbuf *jb, unsigned offset, const void **frame, pj_size_t *size, char *p_frm_type, pj_uint32_t *bit_info, pj_uint32_t *ts, int *seq)
 
unsigned pjmedia_jbuf_remove_frame (pjmedia_jbuf *jb, unsigned frame_cnt)
 
pj_bool_t pjmedia_jbuf_is_full (const pjmedia_jbuf *jb)
 
pj_status_t pjmedia_jbuf_get_state (const pjmedia_jbuf *jb, pjmedia_jb_state *state)
 

 


PJMEDIA small footprint Open Source media stack
Copyright (C) 2006-2008 Teluu Inc.