TS流中视频的EB size 由VBV决定。
音频的EB size对于不同的编码类型有不同的固定值:
#define TSMUX_MP2_ES_BUFFER_SIZE (3584)
#define TSMUX_AC3_ES_BUFFER_SIZE (3584)
#define TSMUX_EAC3_ES_BUFFER_SIZE (5184)
#define TSMUX_MPEG4_ES_BUFFER_SIZE (3584)
#define TSMUX_AAC_ES_BUFFER_SIZE (8976)
设置EB Size时,需要保证至少有Buffer中保存一帧数据,如果少于一帧会导致UnderFlow,如果帧数太多会导致OverFlow。
一帧数据的大小,需要先根据编码类型和采样率算出帧时间长度,然后帧时间x编码码率得到每帧的数据大小。
帧时间长度的计算请参考:http://blog.csdn.net/wutong_login/article/details/7023062
AC-3的Frame size是1536,如果采样率是48000Hz,那么每秒帧率就是48000/1536=31.25,每帧的时间长度就是1000/31.25=32ms
MP-1的Frame Size是1152,AAC-LC的Frame Size是1024。