1. 音频包的结构:
关键成员变量如下,其字段意思自明,无需进一步叙述:
public var lastseq:uint;
public var from:uint;
public var sid:uint;
public var seq:uint;
public var time_stamp:uint;
public var fec_id:uint;
public var type:uint;
public var voice_type:uint;
public var payload:ByteArray;
public var wavBytes:ByteArray;
public var isBroadcast:Boolean;
public var playTime:uint;
public var flvBytes:ByteArray;
public var reSend:Boolean;
2. 音频包的存储结构:
使用双向链表来存储,每个节点对应一个

本文详细介绍了基于UDP的音频抖动缓冲实现,包括音频包的结构、存储方式、包处理逻辑、flush函数的原理以及平滑Rtt的计算。通过双向链表存储音频包并处理丢包、乱序问题,确保音频流畅播放。
560

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



