天天看点

音频 帧率 音视频同步

录制 视频 过程中,视频帧率视频设置帧率为25, 而此时 从采集设备过来的 数据流也是25frame/s ,如是 我十分好奇音频有没有类似帧率一说,

百度到如下资料:感觉十分 清楚的说明了 该问题:

   采样率Sample Rate指单位时间内对媒体对象的采样次数,单位Hz(这句话好像和原来不太一样,郁闷)。 

    帧率(Frame per second,fps),单位时间内媒体帧的个数。 

   这两个概念都描述了媒体的“连续”性,二者的区别在于一个Frame可能包含多个Sample。一般每个视频帧中只包含一个视频采样,而音频帧中会包含多个音频采样。如1个AAC帧中包含1024个采样。所以,帧率常用在视频方面,采样率常用于音频方面。采样率(帧率)越高,媒体越流畅,当然人的感受就越过瘾。但是,由于人的视/听器官分辨能力的局限,往往这些数值达到末各程度就可以满足人对“连续”性的需求了。比如,对采样率高于44.1kHz的声音,人很难听出区别了。对帧率高于30的视频,人很难看出帧率的区别。 

    比特率(bps或kbps),与前面两个概念不同,它描述了单位时间长度的媒体内容需要空间。当然该值越高,每个采样的信息量就越大,对这个采样的描述就越精确。 

    对于人的感受来说,当然上述数值越大越好,但是这总是会受到网络带宽和处理设备能力的限制。所以,媒体工程师会取一个折中的数值来制作媒体内容,在符合能力的范围内,提供最佳的体验。 

例子:一张CD,双声道,采样率44.1kHz每个采样13bit,时长74分钟(4440秒),则CD的容量为13*2*44100*4440约等于640MB

来源; http://cme0k.iteye.com/blog/1229659

这篇文章 如此刚好解释了 为什么配置 采集设备,声音需要配置采样率.

如果采用aac编码:

1个AAC帧中包含1024个采样.,对于采样率为48K的音频数据(1秒中需要编码 48000/1024 = 46.87 个aac包, )所以可以计算:(对于为什么 aac一次编码需要1024个采样 这个和aac算法的用1024个点的mdct).

音频fps = 1024*1000/samplerate:

 duration = 1/fps;

对与 44K 采样:

  AAC 包输出时间间隔为: 44100/1024= 43.0666(ms).

fps =  1024/44100 ~0.02321

对于用mp4v2 封装为 mp4 文件的音视频同步 问题. 只要控制好 音视频的帧率,也会解决.

音视频交流群: 210324637

继续阅读