1. rtp 源 结构体信息
/*
* Per-source state information
*/
typedef struct {
u_int16 max_seq; /* highest seq. number seen */
u_int32 cycles; /* shifted count of seq. number cycles */
u_int32 base_seq; /* base seq number */
u_int32 bad_seq; /* last ’bad’ seq number + 1 */
u_int32 probation; /* sequ. packets till source is valid */
u_int32 received; /* packets received */
u_int32 expected_prior; /* packet expected at last interval */
u_int32 received_prior; /* packet received at last interval */
u_int32 transit; /* relative trans time for prev pkt */
u_int32 jitter; /* estimated jitter */
/* ... */
} source;
2. 初始化源
init_seq(s, seq);
s->max_seq = seq - 1;
s->probation = MIN_SEQUENTIAL;

本文解析了RTP源结构体中的关键信息,包括序列号处理、基准seq确定、丢失和乱序检测。介绍了初始化和更新seq函数的作用,展示了如何通过update_seq判断seq的有效性。核心在于理解seq的管理和RTP协议的可靠性保障。
最低0.47元/天 解锁文章
692

被折叠的 条评论
为什么被折叠?



