h264_aac合成flv的个人经验之谈

    h264_aac合成flv的个人经验之谈,作为自己工作的总结,不当之处,请高手指点。

    第一,aac的音频包写成flv时,第一个tag中有一个字段为AudioSpecificConfig,即为ObjectProfile,SamplingFrequencyIndex,ChannelConfiguration,TFSpecificConfig。

   其中,ObjectProfile (AAC main ~1, AAC lc ~2, AAC ssr ~3), 通常选中1;

            SamplingFrequencyIndex (0 ~ 96000, 1~88200, 2~64000, 3~48000, 4~44100, 5~32000, 6~24000, 7~ 22050, 8~16000...),通常aac固定选中44100,即应该对应为4,但是试验结果表明,当音频采样率小于等于44100时,应该选择3,而当音频采样率为48000时,应该选择2;

            ChannelConfiguration对应的是音频的频道数目。单声道对应1,双声道对应2,依次类推。

            TFSpecificConfig的说明见标准14496-3中(1.2 T/F Audio Specific Configuration)的讲解,这里恒定的设置为1;

            故如果音频才采样率为24K,双声道,则aac的AudioSpecificConfig应该设置成0x1321;如果采样率为48K,6声道,则为0x1261;

 

    第二,关于时间戳。

            如果时间戳直接取音视频的时间戳,则试验发现如果第一个音视频时间戳的差值大于200毫秒,有可能出现合成的flv没有声音的现象;如果第一个时间戳比后面的时间戳大,也可能出现flv没有声音的现象。通常是音频时间戳小于视频时间戳,所以我把音频时间戳写在前面。第一个音频时间戳前面的视频就不写了,保证开始写的为音频帧。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值