#include <sys/timeb.h>
long long getSystemTime() {
struct timeb t;
ftime(&t);
return 1000 * t.time + t.millitm;
long long getSystemTime() {
struct timeb t;
ftime(&t);
return 1000 * t.time + t.millitm;
}
long long nowvoltime;
long long tempvoltime=getSystemTime();
while(1)
[
nowvoltime=getSystemTime();
//写入音频第五个参数48000是采样率,这个参数应填入录制一针花费时间*一毫秒的份数,48000实际是一针对时间分成了48000份,除以1000获得一毫秒的份数:(当前时间-初始时间)*48000/1000
//写入视频和音频一样,但是48000改成90000,
MP4WriteSample(mp4lei.hMp4file, mp4lei.audio, pbAACBuffer, nRet,(nowvoltime-tempvoltime)*48000/1000, 0, 1);//MP4_INVALID_DURATION
MP4WriteSample(hMp4File, m_videoId, data, datalen,(nowvoltime-tempvoltime)*48000/1000, 0, 1);//写音频
tempvoltime=nowvoltime;
}