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. 音频包的存储结构:
使用双向链表来存储,每个节点对应一个音频包,该双向链表有链表大小size属性,有头节点head.每次来一个音频包,就把该音频包插入到双向链表中的适当位置(在考虑丢包,乱序,延迟之后,确定该音频包的