我正在尝试通过RTP将AAC音频流传输到Wowza服务器。我设法使其正常工作,但交替听到的声音非常快,然后出现1s的空白。采样率是22050,每个数据包的帧数是1024。
目前,我的时间戳是这样生成的:
long _timestamp;
//--- called each time I have to send a new AAC packet ---//
-(void) updateTimestamp{
if(! _timestamp)
_timestamp = random();
else
_timestamp += 1024;
rtptime = big_endian(_timestamp);
}
这是正确的吗 ?我不知道为什么输出结果是奇怪的,任何帮助都会被剥夺:)
最佳答案
是的,逻辑是正确的,但是使用unsigned long代替了long,因此在unsigned long达到最大值时会舍入。
关于c++ - RTP AAC时间戳问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17195196/