简单的记录一下,在合成FLV文件时候,按照规范必须是特定采样率的AAC才行,但实际上并没有这个要求,只需要携带AAC的Audio Specific Config就可以了。
按照FLV的规范要求,AAC可设置的采样率如下。
- 0 = 5.5-kHz
- 1 = 11-kHz
- 2 = 22-kHz
- 3 = 44-kHz
-
实际上平时时候的采样率很多,比如16K、32K等等,在Audio Specific Config定义的采样率
- 0: 96000 Hz
- 1: 88200 Hz
- 2: 64000 Hz
- 3: 48000 Hz
- 4: 44100 Hz
- 5: 32000 Hz
- 6: 24000 Hz
- 7: 22050 Hz
- 8: 16000 Hz
- 9: 12000 Hz
- 10: 11025 Hz
- 11: 8000 Hz
- 12: 7350 Hz
- 13: Reserved
- 14: Reserved
- 15: frequency is written explictly
-
其定义基本满足了正常需求,因此在FLV第一个TAG里面传送Audio Specific Config按真实值设置即可,TAG内的随便设置并不影响。
另外AAC在FLV正常是不带ADTS头的,某些环境或者库是支持携带的有些是不行的,比如腾讯的小程序媒体播放在 Android 上是支持的,在 iOS 上是不支持的。