aac格式

AAC及其封装格式

走远了吗. 提交于 2020-01-13 02:27:31
背景 最近在媒体库中需要加AAC,要求能与华为的一个IP语音电话型号,通过AAC对通。 这个需求的功能并不复杂,而难在对于AAC的封装格式标准及对于AAC编解码库的使用,需要有一个系统性的认识。AAC标准光编码规格就有好几种,并且针对不同的场景衍生出的封装格式也有好几种。应用到流媒体,rfc也有几个。所以是细节特别多。很容易走错方向。这里做个总结,这将是一系列文章,先介绍AAC封装标准,RTP封包标准,再讲解libfdk-aac的用法,及在RTP流媒体中应用时所需注意的细节。 AAC AAC是在MPEG-2和MPEG-4中定义的,是一系列编码规格的统称。 AAC标准包括一系列编码规格,这里只列出常用的几种AAC-LC,AAC-LD,AAC-ELD,HE-AAC。你可以将它们之间的关系理解成H264中base,main,high profile的关系。AAC-LC定义在MPEG-2中。AAC-LD,AAC-ELD,HE-AAC定义在MPEG-4中 既然是一种音频编码格式,它有两大基本应用场景:媒体文件(storage),流媒体(stream)。比如经常见的h264+aac的map4文件,rtp 携带aac媒体流。WAV格式是封装的PCM 音频码流(封装格式是记录码流中的信息,比如采样率,声道数等),那么对于的AAC也有封装格式,并且对不同的场景有不同的封装格式。封装格式有:ADIF

Rtmp AAC基本格式(转)

杀马特。学长 韩版系。学妹 提交于 2019-11-27 10:31:40
第一个audio data包:AAC sequence header 第二个audio data包:AAC raw AF表示的含义: 1)第一个字节af,a就是10代表的意思是AAC, Format of SoundData. The following values are defined: 0 = Linear PCM, platform endian 1 = ADPCM 2 = MP3 3 = Linear PCM, little endian 4 = Nellymoser 16 kHz mono 5 = Nellymoser 8 kHz mono 6 = Nellymoser 7 = G.711 A-law logarithmic PCM 8 = G.711 mu-law logarithmic PCM 9 = reserved 10 = AAC 11 = Speex 14 = MP3 8 kHz 15 = Device-specific sound Formats 7, 8, 14, and 15 are reserved. AAC is supported in Flash Player 9,0,115,0 and higher. Speex is supported in Flash Player 10 and higher. 2)第一个字节中的后四位f代表如下

ffmpeg命令详解(转)

耗尽温柔 提交于 2019-11-27 09:31:06
摘自:https://www.cnblogs.com/AllenChou/p/7048528.html FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。[百度百科] ffmpeg使用语法 ffmpeg使用语法: ffmpeg [[options][`-i' input_file]]... {[options] output_file}... 如果没有输入文件,那么视音频捕捉就会起作用。 作为通用的规则,选项一般用于下一个特定的文件。如果你给 –b 64选项,改选会设置下一个视频速率。对于原始输入文件,格式选项可能是需要的。 缺省情况下,ffmpeg试图尽可能的无损转换,采用与输入同样的音频视频参数来输出。 3.选项 a) 通用选项 -L license -h 帮助 -fromats 显示可用的格式,编解码的,协议的。。。 -f fmt 强迫采用格式fmt -I filename 输入文件 -y 覆盖输出文件 -t duration 设置纪录时间 hh:mm:ss[.xxx]格式的记录时间也支持 -ss position