QAAC 音频编码器命令行参数教程 [2024-12 月更新]
❀原创教程,转载请注明链接和作者
QAAC 基于苹果公司的 QtAACEnc 改进而来的,出现于 2012 年的开源编码器。相比 2006 年的 NeroAAC 更强大,且已经淘汰了 MP3 格式(因为网络视频几乎都用 AAC 流)
终于有科普板块了 hhhhh
- 音频根据用途主要有通话音频,监听音频,HiFi 音频
和噪音三种,其中办公音频要求动态音量调节和动态降噪来听清客户说了啥;监听音频要尽可能逼近原声,主要用于混音和反潜;HiFi 音频各种 DAC 和 AMP 数字电路的信号调校结果,和开 MadVR 看视频的是同一个群体(但很有钱) - 音频的位宽 bit-width 就是数据 / 视频上说的位深 bit-depth,在视频上代表明暗之间的亮度值密度,或者色彩 A~B 之间色度值的密度;在音频上就是波形音量动态范围的取值密度
下载与安装
- 下载 qaac 源码编译结果: github
- 下载苹果的 Core Audio 支持:
- 下载一个 iTunes (Windows 64bit),把后缀改成. zip 打开,据系统位数解出
AppleApplicationSupport(64).msiAppleMobileDeviceSupport.msi - 下载 lesssmi (打开 Lessmsi-gui.exe),或 MSIExtractor(是软件,不是批处理) 打开. msi 安装包
- 如果要输入 flac 音频则需要去 github,其中 libflac 的链接位于 github-xiph。或 ffmpeg pipe
- MSIExtractor 中找到 Common Files\Apple\Apple Application Support \ 目录并解压出以下文件放到 QAAC 的主目录下 (和 qaac64.exe 放在一起):
- lessmsi 通过
Ctrl+F
查找并解压出以下文件放到 QAAC 的主目录下 (和 qaac64.exe 放在一起):
- 没装 Visual C++ 2012 则还要加上主目录下的 mscvp120.dll 和 mscvr120.dll
- 下载一个 iTunes (Windows 64bit),把后缀改成. zip 打开,据系统位数解出
ASL.dll
CoreAudioToolbox.dll与CoreFoundation.dll
icudt**.dll
libdispatch.dll,libicu**.dll及libicu**.dll (两个libicu,号码不同)
objc.dll
打赏信息
在线丢人,求个打赏,支持一下 T_T
命令行用例
'打开 QAAC(文件夹 \ qaac.exe)' [参数] '打开音频 (路径 + 文件名 + 后缀)',如
'D:\qaac64.exe' -a -b 16 -r 44100 --threading --raw -o '导出位置\导出音频.m4a' '导入位置\*.wav'
QAAC 默认的导入导出位置就是批处理或 shell(.bat/.sh) 所在位置
所以直接用*.wav
,然后把批处理 / shell 拖到同源文件目录下运行就不用写路径了
导入 PCM 波形的. wav 需要加个 --raw,具体见下文导入 PCM 波形哦
ffmpeg pipe 导入
D:\ffmpeg.exe -i '打开音频' -vn -sn -n -f wav - | D:\qaac.exe [参数] - --ignorelength
-o <字符>输出路径与文件名,如有空格则加引号,例如-o 'D:\文件夹\输出音频.aac'
--ignorelength代表已知输入WAV-PCM文件的情况下,启用unix pipe喂流,省去检查和手打音频长度信息的功夫
显示完整编码信息
--verbose<开关>打开后可以看到平常CLI界面中不显示的
输出 / 编码格式
AAC-LC:默认的低复杂度 low-complexity 编码,QAAC 中限制最高 320kbps,但 aac 标准上没写这限制
AAC-HE:高压缩效率 high-eff. 编码,QAAC 中限制最高 80kbps,同码率下比 LC 细节好,但码率太低所以很难用到
ALAC: 苹果无损压缩编码的 PCM 波形文件格式。偏小众,可能不如. ape 格式常见
-V,--tvbr <挡位0/9/18/27/36/45/54/64/73/82/91/100/109/118/127>可变码率,对应QtAAC的15个挡位,"数字越大音质越好",默认91,不受--rate参数限制,适合有闲工夫调试着用
-v,--cvbr <挡位64/80/96/112/128/144/160/192/224/256/288/320,单位kbps>可变码率,"尽可能"控制在挡位指定的码率中,受--rate参数限制,适合有闲工夫调试着用
-a, --abr <整数>平均码率,码率限制下贴合目标码率使用的方案,但同质量下码率不如前两者
tvbr, cvbr 模式下,码率有可能会因为源音频流高度复杂而超标,有码率限制的话需要确认没超
ABR 模式因为用带宽换性能所以只适合直播
--he <开关>用HE-AAC编码,除TVBR,ALAC,ADTS外可用,音质较差但码率只有16~80kbps ❀注意是--he而不是-he
-A,--alac <开关>无损压缩,一般音乐的码率大概为1100~1400Kbps
ADTS 流格式
和封装 / 音频不同,将文件作为真的 "流格式" 编码,一般用于直播和蓝牙 A2DP 音频,支持 Unix Pipe 传给下级处理程序
取决于厂商生态,蓝牙设备还可能支持以下生态编解码中的一部分,高端的外置声卡和音频介面(同时支持蓝牙和 USB 输入)除外:
- 兼容:SBC (其实已满足 99% 的音质要求),大部分条形音响都用这个
- 苹果:AAC-ADTS (QAAC 支持编码)
- 高通:aptX,aptX LL,aptX HD,aptX Adaptive
- 索尼:LDAC
- 盛微:LHDC,LLAC,LLAC LL
- 三星(仅 IEM 耳机):SSC
- 微软(Windows 系统):自购 Lucent 的 Windows LDAC A2DP 驱动(25~35 CNY) + 支持蓝牙传输的硬件(USB,PCIE,M.2 网卡等)
Windows 10 2004 或更高版本可通过 Github 上的第三方方案实现蓝牙 ADTS 输入,将系统本身临时作为接收设备用,但原作者长期未更新,且仅支持手动连接,有需求的可以(创建 Github 账户并)fork 一个~
未压缩流格式
与视频解码器逆运算出画面所同,和音频文件的区别是不需要解码所以(在硬盘很快的情况下)打开速度比解码播放更快,但体积特大,但支持 Unix Pipe 传给下级处理程序
封装与音频文件格式
相比于纯数据流(视频流,音频流),封装文件增加了如歌词,章节,标识,封面;视频如 HDR 信息,帧率,分辨率等。封装后的体积比原始的流文件大点。音频流和视频流封装到一起时,则由视频封装文件会标记音频流的元数据
- .wav:未压缩的 PCM 波形文件后缀(指定
-D
) - .alac:无损压缩 PCM 波形文件后缀,详见上方 ALAC 说明(指定
-A
) - .aac:有损压缩的 PCM/DTS 波形音频流后缀(指定
--adts
) - .caf/.m4a:音频封装,用于打包 AAC,ALAC,PCM 波形以及歌词,章节,标识,封面等内容到单文件
- QAAC 编码后在 MediaInfo 打开还会显示 "Apple audio with iTunes info"
-D,--decode <开关>输出PCM波形(.wav)
一般用于频谱分析,毕竟解包不带解码器的软件然后安个解码器进去的门槛超高
-A,--alac <开关>无损压缩
--adts <开关>以Audio Data Transport System格式编码,主要用于蓝牙耳机和音响. 除无损(ALAC)以外的模式可用
*留空* <默认>编码为AAC并封装为.m4a
--caf <开关>用core audio format封装格式打包音频流以及-D下导出的PCM波形
与 ffmpeg / 带 Lav-filter 的视频处理工具不同,QAAC 不识别命令行里导出文件的后缀名,因此必须指定格式参数
导入 PCM 波形
QAAC 会自动检测源的规格,但 PCM(.wav) 就测不出来,所以会默认用 2 声道,44100Hz,16bit 位深编码新文件. 若与源不符,就要手动指定输入 PCM 流的规格:
--raw <开关>启用纯PCM波形模式,要不然QAAC不知道
--raw-channels <浮点,默认2>指定声道数量. 有3,4,5,5.1,6,6.1,7,7.1和8可选,要搭配--chanmap用
--raw-rate <整数,默认44100>照着源文件写就行啦
--raw-format <字符+整数+字符>S/U/F+位深+L/B,若符合默认s16l就不用动咯~
S(igned)/U(nsigned):首个位深字节值里面有(范围 0~255)或没有(范围 - 128~127)正负号,一般都有,没见过就写默认的 S
F(loat):源音频流是浮点位深,不是整数位深
位深:在音频上都叫位宽,一般是默认 16bit,此处不加后缀 bits
L(ittle-Endian)/B(ig-Endian):具体看这篇教程的解释,总之要用到 x86 架构的处理器,用默认的 L 就对啦~
--ignorelength <开关>已知unix pipe输入WAV-PCM文件流的情况下,启用unix pipe支持,省去检查和手打音频长度信息的功夫
多声道编辑
常见的立体声有 1 左 2 右两条声道. 而更高的数量的声道会照标准,给这些音轨对号入座;比如三声道就是中置 1,左 2,右 3 等等,具体见 github 里的声道布置表格
音频的常见问题有麦克拿反 / 右耳没声音;然后这里 PCM 波形还无法被 QAAC 自动检测,所以手打音轨号来修复 / 指定就成了常规操作... 大概
--chanmask <浮点,默认0(立体声)>强制使用3,4,5,5.1,6,6.1,7,7.1或8声道
--chanmap <逗号分隔数字>重分配输入音频的声道位
--chanmap 2,1 代表音轨 1 换到二号位,音轨 2 换到一号位;在立体声中就是左右互换;能修复麦克拿反了的情况,不过据说麦克拿倒了是假唱(大雾)
--chanmap 1,1 在立体声中将左声道贴入右声道,可以修复右耳没声的问题(未测试)
--chanmap 2,3,1 代表三声道默认的 1 中,2 左,3 右改成 2 中,3 左,1 右. 其实就是 1 移动到了最右边
压缩强度与占用
-b,--bits-per-sample
<整数>改动音频位深,比如频谱分析软件支持最深16bit,而音频是24位时就加上-b 16来修复
-n,--nice <开关>降低程序优先级
--threading <开关>使用多线程
-q,--quality <整数,范围0~2,默认2> 仅用于编码速度换取音质的参数,不用改
注: 默认是使用低复杂度low complexity 即lc编码方式,适合直播.
--no-dither <开关>关闭抖动,用音质换取文件体积的参数.
--no-optimize <开关>编码后的音频还要再进行一步优化,以装入.caf/.m4a的封装中,此选项将其关闭,所以别动>_<
章节处理
--chapter <输出章节>给编码的音频封装(.M4A/.CAF)写入章节信息,至于怎么拷进视频封装里咱就不懂啦❀
00:00:00.000 Intro
00:00:31.031 OP
0:01:57.034 Part_A
00:12:41.552 Part_B
00:22:41.151 ED
00:24:09.740 Next_Ep_Preview
--cue-tracks <逗号分隔整数>仅支持cue列表的
--cue-tracks 4 就是编码 cue 文件中指定的第 4 号音频
--cue-tracks 11-13,15 就是分别导出 11,12,13,15 号音频
--concat --cue-tracks 11-13,15 就是组合导出 11,12,13,15 为一整个音频
--text-codepage <整数>生成cue sheet/章节/歌词字幕的文本编码,一般用65001表示UTF-8
导出章节中单曲
cue sheet 可以自己写,然后保存为. cue
标准格式如下,照着写,然后导入 QAAC 来分指定 cue-tracks 导出就行了❀
REM GENRE Anime
REM DATE 2014
REM DISCID 3503D604
REM COMMENT "ExactAudioCopy v1.0b3"
CATALOG 4988104079268
PERFORMER "みかくにんぐッ!"
TITLE "とまどい→レシピ"
FILE "みかくにんぐッ! - とまどい→レシピ.wav" WAVE
TRACK 01 AUDIO
TITLE "とまどい→レシピ"
PERFORMER "みかくにんぐッ!"
ISRC JQ2921400252
INDEX 01 00:00:00
TRACK 02 AUDIO
TITLE "放課後ばけーしょん"
PERFORMER "みかくにんぐッ!"
ISRC JQ2921400253
INDEX 00 04:30:62
INDEX 01 04:32:36
首位波形缓入缓出
直译的话就是智能首尾垫音,主要设计目的是为了缓冲掉歌曲突然开始,波形从零突然冲顶,低端声卡会直接噼啪爆音 (待考证) 的情况
--no-smart-padding
<开关>关掉这个默认功能,但不建议
音频标识 (内容正在施工中)
--tag <4cc:value>用fourCC.org标准?格式?的标识(内容正在施工中)
--tag-from-file <文件名>同上但这次是输入已经写好的文件
--long-tag <key:value>用iTunes标准?格式?的标识(内容正在施工中)
--fname-format<?>文件命名格式(内容正在施工中)
--fname-from-tag<?>用音频标识命名输出文件,这样给写好的曲子加上tag就可以节省各种导出和压缩的时间了(内容正在施工中)
音频编辑
-r,--rate <整数>调整音频的采样率,比如视频网站要求44100HZ,而音频是48000HZ就写-r 44100
--gain <浮点>调整文件音量,输入负值可减低
--concat <开关>将(用通配符如*.wav)输入的多个文件按输入顺序结合为单文件,QAAC会生成章节chapter到.m4a封装里(未验证)
--normalize <开关>音量标准化,统一所有要处理歌曲的音量
--start <浮点>开始时间,格式hh:mm:ss.xxxxx..... 比如1:13:22.4432就是在1小时13分22.4432秒开始压缩
--end <浮点>结束时间,格式同上
--delay <浮点>开始前延时,格式同上,如果输入负值则作用同开始时间
--peak <开关>扫描音频尖峰并只输出文本,用于方便检查混音音量
音频滤镜
用 DAW 还能预览效果,所以不晓得这个还有啥用...
--drc <判定:衰减:缓冲:见效:退效>动态范围压缩,就是将吵的音量压下来,同时保留一定范围内音量,使不该响的不响的功能
判定 threshold判定(阈值的去术语化叫法), 超过此值则判定为吵,反之未超过的就判定为不吵,单位dBFS,这个值就自己吼一嗓子试试吧(⌒_⌒;)
衰减 ratio程度,例如判定值是10,比率是3,只要音量超过10db就将<超出的部分>压缩到原来的1/3,通常设15
缓冲 knee过渡,值越大就越柔和,使整个处理过程更自然的参数,单位db,通常设1
见效 attack时长,单位毫秒. 防止编码器反应过快,致原本大声没有超过判定值就被压回来
~例如设在3.2,那么超出判定值的音量要从0秒不处理,到花3.2毫秒才完全达到衰减后的设定,通常设25~50左右
去效 release时长,单位毫秒. 防止编码器反应过快致声降低不明显,在混音中,release越快,对应的乐器轨道就越靠前,反之越慢,因此构成了声场上前-后的声场关系,用于在乐器数量多的情况下保证乐器的主次关系。如果是逼近物理位置还得加上和建筑外形相同反射面建模的自定义Reverb
~例如设3.2,那么离开判定范围时,音量会在0秒保持衰减,到3.2毫秒时才完全回到衰减前的设定,通常设150~300左右
举例: '--drc 50:6:7:8.9:10'指超过 50db 阈值,压缩到原来的 1/6,反应过来前音量低了 8.9db,音频落回后花 10 毫秒将衰减的效果消除
已知报错
请求的操作无法在使用用户映射区域打开的文件上执行
, 是本应输出并覆盖旧文件时,目标文件被占用导致覆盖失败floating point PCM is not supported for ALAC
,是因为原音频是 alac 不支持浮点位深,需要 - b 16/20/24/32 转换~
--log <文件名>导出压制log
批处理单文件储存多个参数
::将此处复制下来保存为.bat文件即可使用
@ set QAAC=D:\Programs\QAAC\qaac64.exe
@ set 转WAV=-D --threading -r 44100 -b 16
@ set abr320K=-a 320 -b 16 -r 44100 --threading
@ set cvbr256K=-v 256 -b 16 -r 44100 --threading
@ set ALAC=--alac -b 16 --threading
::使用例子: %QAAC% %转WAV% -o "输出" "输入", 可以多复制调整几行命令以批量处理
shell 单 l 文件储存多个参数 (未验证,需自行修改)
第一步, 安装 Wine 以运行. exe:
sudo dpkg --add-architecture i386
wget -nc https://dl.winehq.org/wine-builds/Release.key
sudo apt-key add Release.key
sudo apt-add-repository https://dl.winehq.org/wine-builds/ubuntu/
sudo apt-get update
sudo apt-get install --install-recommends winehq-stable
第二步:
#将此处复制下来保存为.sh文件, 通过Bash
#!/bin/Bash
QAAC=./D:\Programs\QAAC\qaac64.exe
转WAV=-D --threading -r 44100 -b 16
320K=-a 320 -b 16 -r 44100 --threading
256K=-a 256 -b 16 -r 44100 --threading
ALAC=--alac -b 16 --threading
#使用例子: $QAAC $转WAV -o "输出" "输入", 可以多复制调整几行命令以批量处理
关于选择正确的采样率
只要确认要编码音频的音高赫兹数,就可以确定使用更低的采样率编码音频,实现压缩
采样率
录制时的波形锚点写入频率,以及播放时转换到模拟信号的输出频率,用赫兹 Hz 表示。根据奈奎斯特 - 香农采样定理,采样一个正弦 / 余弦波的最小频率应为两倍于其周期,才能使模拟转数字的数据足够保真,大概如图:
- 余弦波
y=cos(πx)
中,一个周期里有一个波峰和一个波谷,所以波峰最高处,和波谷最低处应该采样一次: - 如果采样的频率远低于波形频率的两倍:
- 如果采样率和波形周期相同:
- 如果采样率略高于信号频率,采样的信息里至少仍然是贴近
y=cos(πx)
的:
这个正弦波实际代表的是音频里频率最高的信号,所以是才是理论上采样率的 “底线”
注:上图见 Desmos 例
音高
- 各种音色的震动频率,频率越高则音高越高
- 结合采样率说,为了保真最高振动频率 / 音高最高的信号,所以采样率是音高频率的两倍
- 在实践中,如果创建一个 48000Hz / 48kHz 的音频工程文件,这个音频频谱则最高支持 24000Hz / 24kHz
赫兹
任何一种测量范围内均衡重复现象,如波形或物件震频,芯片的运行频率,由 Hz,KHz,GHz 表示,赫兹数越高,支持的音高就越高
- 歌声中的齿音 / 咬字音,非元音 / 通过口腔发出的短音,这些声音仍比乐器的泛音高很多
- 音高最高的乐器是 Hi-Hat / 铜嚓,Cymbal / 锣
QAAC-LC 的采样率,声道,码率对应表
采样率 (Hz) | 最高频率 (Hz) | 声道布置 | 最小 - 最大码率流量 / CVBR 档位 |
---|---|---|---|
8000 | 4000 | Mono | 8 12 16 20 24 |
8000 | 4000 | Stereo | 16 20 24 28 32 40 48 |
8000 | 4000 | 3.0 (C L R) | 24 28 32 40 48 56 64 72 |
8000 | 4000 | 4.0 (L R Ls Rs) | 32 40 48 56 64 72 80 96 |
8000 | 4000 | 4.0 (C L R Cs) | 32 40 48 56 64 72 80 96 |
8000 | 4000 | 5.0 (C L R Ls Rs) | 40 48 56 64 72 80 96 112 |
8000 | 4000 | 5.1 (C L R Ls Rs LFE) | 40 48 56 64 72 80 96 112 |
8000 | 4000 | 6.0 (C L R Ls Rs Cs) | 48 56 64 72 80 96 112 128 144 |
8000 | 4000 | 6.1 (C L R Ls Rs Cs LFE) | 48 56 64 72 80 96 112 128 144 |
8000 | 4000 | 7.0 (C L R Ls Rs Rls Rrs) | 56 64 72 80 96 112 128 144 160 |
8000 | 4000 | 7.1 (C Rc L R Ls Rs LFE) | 56 64 72 80 96 112 128 144 160 |
8000 | 4000 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 64 72 80 96 112 128 144 160 192 |
11025 | 5512.5 | Mono | 8 12 16 20 24 28 32 |
11025 | 5512.5 | Stereo | 16 20 24 28 32 40 48 56 64 |
11025 | 5512.5 | 3.0 (C L R) | 40 48 56 64 72 80 96 |
11025 | 5512.5 | 4.0 (L R Ls Rs) | 48 56 64 72 80 96 112 128 |
11025 | 5512.5 | 4.0 (C L R Cs) | 48 56 64 72 80 96 112 128 |
11025 | 5512.5 | 5.0 (C L R Ls Rs) | 64 72 80 96 112 128 144 160 |
11025 | 5512.5 | 5.1 (C L R Ls Rs LFE) | 64 72 80 96 112 128 144 160 |
11025 | 5512.5 | 6.0 (C L R Ls Rs Cs) | 72 80 96 112 128 144 160 192 |
11025 | 5512.5 | 6.1 (C L R Ls Rs Cs LFE) | 72 80 96 112 128 144 160 192 |
11025 | 5512.5 | 7.0 (C L R Ls Rs Rls Rrs) | 96 112 128 144 160 192 224 |
11025 | 5512.5 | 7.1 (C Rc L R Ls Rs LFE) | 96 112 128 144 160 192 224 |
11025 | 5512.5 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 96 112 128 144 160 192 224 256 |
12000 | 6000 | Mono | 12 16 20 24 28 32 |
12000 | 6000 | Stereo | 24 28 32 40 48 56 64 |
12000 | 6000 | 3.0 (C L R) | 40 48 56 64 72 80 96 |
12000 | 6000 | 4.0 (L R Ls Rs) | 48 56 64 72 80 96 112 128 |
12000 | 6000 | 4.0 (C L R Cs) | 48 56 64 72 80 96 112 128 |
12000 | 6000 | 5.0 (C L R Ls Rs) | 64 72 80 96 112 128 144 160 |
12000 | 6000 | 5.1 (C L R Ls Rs LFE) | 64 72 80 96 112 128 144 160 |
12000 | 6000 | 6.0 (C L R Ls Rs Cs) | 72 80 96 112 128 144 160 192 |
12000 | 6000 | 6.1 (C L R Ls Rs Cs LFE) | 72 80 96 112 128 144 160 192 |
12000 | 6000 | 7.0 (C L R Ls Rs Rls Rrs) | 96 112 128 144 160 192 224 |
12000 | 6000 | 7.1 (C Rc L R Ls Rs LFE) | 96 112 128 144 160 192 224 |
12000 | 6000 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 96 112 128 144 160 192 224 256 |
16000 | 8000 | Mono | 12 16 20 24 28 32 40 48 |
16000 | 8000 | Stereo | 24 28 32 40 48 56 64 72 80 96 |
16000 | 8000 | 3.0 (C L R) | 40 48 56 64 72 80 96 112 128 144 |
16000 | 8000 | 4.0 (L R Ls Rs) | 48 56 64 72 80 96 112 128 144 160 192 |
16000 | 8000 | 4.0 (C L R Cs) | 48 56 64 72 80 96 112 128 144 160 192 |
16000 | 8000 | 5.0 (C L R Ls Rs) | 64 72 80 96 112 128 144 160 192 224 |
16000 | 8000 | 5.1 (C L R Ls Rs LFE) | 64 72 80 96 112 128 144 160 192 224 |
16000 | 8000 | 6.0 (C L R Ls Rs Cs) | 72 80 96 112 128 144 160 192 224 256 288 |
16000 | 8000 | 6.1 (C L R Ls Rs Cs LFE) | 72 80 96 112 128 144 160 192 224 256 288 |
16000 | 8000 | 7.0 (C L R Ls Rs Rls Rrs) | 96 112 128 144 160 192 224 256 288 320 |
16000 | 8000 | 7.1 (C Rc L R Ls Rs LFE) | 96 112 128 144 160 192 224 256 288 320 |
16000 | 8000 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 96 112 128 144 160 192 224 256 288 320 384 |
22050 | 11025 | Mono | 16 20 24 28 32 40 48 56 64 |
22050 | 11025 | Stereo | 32 40 48 56 64 72 80 96 112 128 |
22050 | 11025 | 3.0 (C L R) | 48 56 64 72 80 96 112 128 144 160 192 |
22050 | 11025 | 4.0 (L R Ls Rs) | 64 72 80 96 112 128 144 160 192 224 256 |
22050 | 11025 | 4.0 (C L R Cs) | 64 72 80 96 112 128 144 160 192 224 256 |
22050 | 11025 | 5.0 (C L R Ls Rs) | 80 96 112 128 144 160 192 224 256 288 320 |
22050 | 11025 | 5.1 (C L R Ls Rs LFE) | 80 96 112 128 144 160 192 224 256 288 320 |
22050 | 11025 | 6.0 (C L R Ls Rs Cs) | 96 112 128 144 160 192 224 256 288 320 384 |
22050 | 11025 | 6.1 (C L R Ls Rs Cs LFE) | 96 112 128 144 160 192 224 256 288 320 384 |
22050 | 11025 | 7.0 (C L R Ls Rs Rls Rrs) | 112 128 144 160 192 224 256 288 320 384 448 |
22050 | 11025 | 7.1 (C Rc L R Ls Rs LFE) | 112 128 144 160 192 224 256 288 320 384 448 |
22050 | 11025 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 128 144 160 192 224 256 288 320 384 448 512 |
24000 | 12000 | Mono | 16 20 24 28 32 40 48 56 64 |
24000 | 12000 | Stereo | 32 40 48 56 64 72 80 96 112 128 |
24000 | 12000 | 3.0 (C L R) | 48 56 64 72 80 96 112 128 144 160 192 |
24000 | 12000 | 4.0 (L R Ls Rs) | 64 72 80 96 112 128 144 160 192 224 256 |
24000 | 12000 | 4.0 (C L R Cs) | 64 72 80 96 112 128 144 160 192 224 256 |
24000 | 12000 | 5.0 (C L R Ls Rs) | 80 96 112 128 144 160 192 224 256 288 320 |
24000 | 12000 | 5.1 (C L R Ls Rs LFE) | 80 96 112 128 144 160 192 224 256 288 320 |
24000 | 12000 | 6.0 (C L R Ls Rs Cs) | 96 112 128 144 160 192 224 256 288 320 384 |
24000 | 12000 | 6.1 (C L R Ls Rs Cs LFE) | 96 112 128 144 160 192 224 256 288 320 384 |
24000 | 12000 | 7.0 (C L R Ls Rs Rls Rrs) | 112 128 144 160 192 224 256 288 320 384 448 |
24000 | 12000 | 7.1 (C Rc L R Ls Rs LFE) | 112 128 144 160 192 224 256 288 320 384 448 |
24000 | 12000 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 128 144 160 192 224 256 288 320 384 448 512 |
32000 | 16000 | Mono | 24 28 32 40 48 56 64 72 80 96 |
32000 | 16000 | Stereo | 48 56 64 72 80 96 112 128 144 160 192 |
32000 | 16000 | 3.0 (C L R) | 72 80 96 112 128 144 160 192 224 256 288 |
32000 | 16000 | 4.0 (L R Ls Rs) | 96 112 128 144 160 192 224 256 288 320 384 |
32000 | 16000 | 4.0 (C L R Cs) | 96 112 128 144 160 192 224 256 288 320 384 |
32000 | 16000 | 5.0 (C L R Ls Rs) | 128 144 160 192 224 256 288 320 384 448 |
32000 | 16000 | 5.1 (C L R Ls Rs LFE) | 128 144 160 192 224 256 288 320 384 448 |
32000 | 16000 | 6.0 (C L R Ls Rs Cs) | 144 160 192 224 256 288 320 384 448 512 576 |
32000 | 16000 | 6.1 (C L R Ls Rs Cs LFE) | 144 160 192 224 256 288 320 384 448 512 576 |
32000 | 16000 | 7.0 (C L R Ls Rs Rls Rrs) | 192 224 256 288 320 384 448 512 576 640 |
32000 | 16000 | 7.1 (C Rc L R Ls Rs LFE) | 192 224 256 288 320 384 448 512 576 640 |
32000 | 16000 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 192 224 256 288 320 384 448 512 576 640 768 |
44100 | 22050 | Mono | 32 40 48 56 64 72 80 96 112 128 144 160 192 224 256 |
44100 | 22050 | Stereo | 64 72 80 96 112 128 144 160 192 224 256 288 320 |
44100 | 22050 | 3.0 (C L R) | 96 112 128 144 160 192 224 256 288 320 384 448 |
44100 | 22050 | 4.0 (L R Ls Rs) | 128 144 160 192 224 256 288 320 384 448 512 576 640 |
44100 | 22050 | 4.0 (C L R Cs) | 128 144 160 192 224 256 288 320 384 448 512 576 640 |
44100 | 22050 | 5.0 (C L R Ls Rs) | 160 192 224 256 288 320 384 448 512 576 640 768 |
44100 | 22050 | 5.1 (C L R Ls Rs LFE) | 160 192 224 256 288 320 384 448 512 576 640 768 |
44100 | 22050 | 6.0 (C L R Ls Rs Cs) | 192 224 256 288 320 384 448 512 576 640 768 960 |
44100 | 22050 | 6.1 (C L R Ls Rs Cs LFE) | 192 224 256 288 320 384 448 512 576 640 768 960 |
44100 | 22050 | 7.0 (C L R Ls Rs Rls Rrs) | 224 256 288 320 384 448 512 576 640 768 960 |
44100 | 22050 | 7.1 (C Rc L R Ls Rs LFE) | 224 256 288 320 384 448 512 576 640 768 960 |
44100 | 22050 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 256 288 320 384 448 512 576 640 768 960 1280 |
48000 | 24000 | Mono | 32 40 48 56 64 72 80 96 112 128 144 160 192 224 256 |
48000 | 24000 | Stereo | 64 72 80 96 112 128 144 160 192 224 256 288 320 |
48000 | 24000 | 3.0 (C L R) | 96 112 128 144 160 192 224 256 288 320 384 448 |
48000 | 24000 | 4.0 (L R Ls Rs) | 128 144 160 192 224 256 288 320 384 448 512 576 640 |
48000 | 24000 | 4.0 (C L R Cs) | 128 144 160 192 224 256 288 320 384 448 512 576 640 |
48000 | 24000 | 5.0 (C L R Ls Rs) | 160 192 224 256 288 320 384 448 512 576 640 768 |
48000 | 24000 | 5.1 (C L R Ls Rs LFE) | 160 192 224 256 288 320 384 448 512 576 640 768 |
48000 | 24000 | 6.0 (C L R Ls Rs Cs) | 192 224 256 288 320 384 448 512 576 640 768 960 |
48000 | 24000 | 6.1 (C L R Ls Rs Cs LFE) | 192 224 256 288 320 384 448 512 576 640 768 960 |
48000 | 24000 | 7.0 (C L R Ls Rs Rls Rrs) | 224 256 288 320 384 448 512 576 640 768 960 |
48000 | 24000 | 7.1 (C Rc L R Ls Rs LFE) | 224 256 288 320 384 448 512 576 640 768 960 |
48000 | 24000 | 8.0 (C L R Ls Rs Rls Rrs Cs) | 256 288 320 384 448 512 576 640 768 960 1280 |
QAAC-HE 的采样率,声道,码率对应表
采样率 (Hz) | 最高频率 (Hz) | 声道布置 | 最小 - 最大码率流量 / CVBR 档位 |
---|---|---|---|
16000 | 4000 | Mono | 10 12 16 20 24 28 32 |
16000 | 8000 | Stereo | 20 24 28 32 40 48 56 64 |
16000 | 8000 | 4.0 (L R Ls Rs) | 40 48 56 64 80 96 112 128 |
16000 | 8000 | 5.1 (C L R Ls Rs LFE) | 56 64 80 96 112 128 160 |
16000 | 8000 | 7.1 (C Rc L R Ls Rs LFE) | 80 96 112 128 160 192 224 |
22050 | 11025 | Mono | 10 12 16 20 24 28 32 |
22050 | 11025 | Stereo | 20 24 28 32 40 48 56 64 |
22050 | 11025 | 4.0 (L R Ls Rs) | 40 48 56 64 80 96 112 128 |
22050 | 11025 | 5.1 (C L R Ls Rs LFE) | 56 64 80 96 112 128 160 |
22050 | 11025 | 7.1 (C Rc L R Ls Rs LFE) | 80 96 112 128 160 192 224 |
24000 | 12000 | Mono | 12 16 20 24 28 32 |
24000 | 12000 | Stereo | 24 28 32 40 48 56 64 |
24000 | 12000 | 4.0 (L R Ls Rs) | 48 56 64 80 96 112 128 |
24000 | 12000 | 5.1 (C L R Ls Rs LFE) | 64 80 96 112 128 160 |
24000 | 12000 | 7.1 (C Rc L R Ls Rs LFE) | 96 112 128 160 192 224 |
32000 | 16000 | Mono | 12 16 20 24 28 32 40 |
32000 | 16000 | Stereo | 24 28 32 40 48 56 64 80 |
32000 | 16000 | 4.0 (L R Ls Rs) | 48 56 64 80 96 112 128 160 |
32000 | 16000 | 5.1 (C L R Ls Rs LFE) | 64 80 96 112 128 160 192 |
32000 | 16000 | 7.1 (C Rc L R Ls Rs LFE) | 96 112 128 160 192 224 256 |
44100 | 4000 | Mono | 16 20 24 28 32 40 |
44100 | 22050 | Stereo | 32 40 48 56 64 80 |
44100 | 22050 | 4.0 (L R Ls Rs) | 64 80 96 112 128 160 |
44100 | 22050 | 5.1 (C L R Ls Rs LFE) | 80 96 112 128 160 192 |
44100 | 22050 | 7.1 (C Rc L R Ls Rs LFE) | 112 128 160 192 224 256 |
48000 | 24000 | Mono | 16 20 24 28 32 40 |
48000 | 24000 | Stereo | 32 40 48 56 64 80 |
48000 | 24000 | 4.0 (L R Ls Rs) | 64 80 96 112 128 160 |
48000 | 24000 | 5.1 (C L R Ls Rs LFE) | 80 96 112 128 160 192 |
48000 | 24000 | 7.1 (C Rc L R Ls Rs LFE) | 112 128 160 192 224 256 |
88200 | 44100 | Mono | 32 40 48 56 64 80 96 112 128 160 |
88200 | 44100 | Stereo | 64 80 96 112 128 160 192 224 256 320 |
88200 | 44100 | 4.0 (L R Ls Rs) | 128 160 192 224 256 320 448 640 |
88200 | 44100 | 5.1 (C L R Ls Rs LFE) | 160 192 224 256 320 448 640 |
88200 | 44100 | 7.1 (C Rc L R Ls Rs LFE) | 224 256 320 448 640 1120 |
96000 | 48000 | Mono | 32 40 48 56 64 80 96 112 128 160 |
96000 | 48000 | Stereo | 64 80 96 112 128 160 192 224 256 320 |
96000 | 48000 | 4.0 (L R Ls Rs) | 128 160 192 224 256 320 448 640 |
96000 | 48000 | 5.1 (C L R Ls Rs LFE) | 160 192 224 256 320 448 640 |
96000 | 48000 | 7.1 (C Rc L R Ls Rs LFE) | 224 256 320 448 640 1120 |
操作
- 打开 Audition 或其它可以观察频谱 / 热度图的软件
- 导入源音频,找到全曲响度最大,最激烈的部分(一般为副歌 Chorus)
- 对频谱 / 热度图操作
Ctrl+鼠标滚轮向下
直到能看见 22kHz 的信号频率为止- 图中例子显示,在 19kHz 的信号频率往上就没有任何有效信息了
- 如果怀疑信号有效,则可以用鼠标左键拖选这部分信号并播放,如果听不到就调大音量,直到听到为止(注意保护听力,因为提高音量的同时也会提高本来就很响处的音量)
- 可以打开
窗口 > 频率分析
以仔细观察频谱,进度条指针所对应 18kHz 及其上方的信号电平小于 - 80dBFS
- 根据波形振幅转换混音电平的公式可以看到,在 - 50dBFS 以下的波形振幅太小了,对音质 / 信号完整性没有任何贡献(甚至从 - 60dBFS 开始就失效了)
- -50dBFS 以下电平需要正常歌曲音量播放在 75~85dB(标准混音音量)的时候能勉强听到一点,-60dBFS 以下的电平需要让正常歌曲能打碎玻璃的音量才能听到,-80dBFS 以下的电平... 理论上需要能让正常歌曲弄坏扬声器的巨大音量才能听到
因此,根据对音频的频谱分析,得到了仅限这段音频中大于 19kHz 的音高属于可以砍掉无效信号的结论;对应到 AAC-LC 双声道逐轨最高有效为 22050Hz,即全音频流 44100Hz 的最高有效采样率,得到参数
qaac64.exe --tvbr 127 -b 16 -r 44100 --threading --verbose
甚至可以更进一步地把所有 - 60dBFS(12kHz 以上的频段),但适用的音频更少;对应到 AAC-LC 双声道逐轨最高有效为 16000Hz,即全音频流 32000Hz 的最高有效采样率,得到参数
qaac64.exe --tvbr 127 -b 16 -r 32000 --threading --verbose
最终得到了平均 300Kbps,但音质与 44100Hz 或更高储存频率的音频差▲1‰左右,同时理论音质等于或高于 CVBR 320kbps,44100 或 48000Hz 的高压缩音轨
- 有概率变高是因为更多码率能被拿来编码有效信号
理论验证
为防被说瞎搞,所以验证了一下理论... 方法是将 - 6dBFS 的电平对应到 90~100dB,然后逐渐降低音量从而获取到 - 80dBFS 的感知音量,缺陷是录音设备是一加 3T 和一加 8,一加 3T 的最大收音音量只有 64dB,一加 8 的最大收音音量只有 89dB
- 播放一个 - 6dBFS 的正弦波,实际音量为大于 89dB(要被震吐了...)
- 然后把电平降低到 - 38dBFS,接收音量下降到了 48dB,此时体感音量相当于手机音量设置在 8~18%
- 然后把电平降低到 - 48dBFS,接收音量下降到了 22dB,这个时候扬声器的音量低于环境噪音 (19~25dB),耳朵贴在扬声器上能勉强听到
- 再往下就完全被环境噪音遮住了,但在 - 52~-54dBFS 的时候把耳朵贴在扬声器上使劲听还是能听到很微弱的一点点...
那么... emmmmmmm 就这样,呕
- 2024.1 更新:改良了封装文件 vs 音频文件格式,并增加了 QAAC 不根据后缀名判断的说明(感谢 @1-β²)
[...] 附录 α:QAAC 音频压缩教程 或 Github 副本 [...]
请问把 6 声道改成 2 声音要怎么做
用混音软件,比如 Reaper,FL Studio,Adobe Audition
qaac 中的 qaac 说明写的是:
example:--chanmap 2,3,1 -> C+L+R -> L+R+C
这是代表 1 号位换 2 音轨,2 号位换 3 音轨,3 号位换 1 音轨吧
所以应该是 1 中 2 左 3 右 换成 1 左 2 右 3 中 吧
有点乱,我捋一捋... 好像我没搞错,除非 chanmap 改了声道本身而不是把音轨放进对应的声道里
应该是你看错了,这个 1-2-3 轨移动了,但声道没变,而你回复里写的 1-2-3 轨道位置没有变化
按照教程自己整理了一份最新的打包文件,测试了可以使用:
名称: QAAC_v2.76+Apple_Application_Support_7.0.2(x86_64).zip
大小: 34244592 字节 (32 MiB)
SHA1: C5292173754E77E7A7B551252CC93BE77E8654F8
https://cloud.189.cn/web/share?code=ArMBneR3aEJz(访问码:x1ck)
https://pan.baidu.com/s/1Y60_7SHRRDrtsM5PDXsZ-w 提取码: vnev
QAAC 没啥关键更新,就是在奇怪的地方修修 bug,不过有人维护这是 ao 的!
感谢您的收集:
文中的 AppleApplicationSupport 与 AppleApplicationSupport64 是 4.1 版本的,
我尝试更新了一下最新的版本:到 7.0.2,来自 https://ipsw.me/iTunes
即 ITunes 12.9.0.167 x64 版本(解压后 x86 与 x64 皆有)
下载地址看上去是苹果官方服务器的:https://secure-appldnld.apple.com/itunes12/041-02280-20180912-24D8CF68-AC7A-11E8-8B51-C26F1B1141A5/iTunes64Setup.exe
使用 dBpoweramp Music Converter【https://www.dbpoweramp.com/】安装 m4a (Apple Lossless & AAC)【https://www.dbpoweramp.com/codec-central-m4a.htm】插件后,可以正常转换。
iTunes 12.10 以上版本解压出来没有了。https://support.apple.com/kb/DL2064
感谢您的收集:
文中的 AppleApplicationSupport 与 AppleApplicationSupport64 是 4.1 版本的,
我尝试更新了一下最新的版本:到 7.0.2,来自 https://ipsw.me/iTunes
即 ITunes 12.9.0.167 x64 版本(解压后 x86 与 x64 皆有)
下载地址看上去是苹果官方服务器的:https://secure-appldnld.apple.com/itunes12/041-02280-20180912-24D8CF68-AC7A-11E8-8B51-C26F1B1141A5/iTunes64Setup.exe
使用 dBpoweramp Music Converter【https://www.dbpoweramp.com/】安装 m4a (Apple Lossless & AAC)【https://www.dbpoweramp.com/codec-central-m4a.htm】插件后,可以正常转换。
请问 --fname-from-tag 和 --fname-format 怎么用,输出类似 artist-title.m4a 的文件名
实际测试中使用 ffpipe 需要指定输出格式为 wav 才能 pipe 成功,并且应注意 pipe 格式。即实际命令应为 ffmpeg -i ... -f wav | qaac ... -ignorelength -
已修改
给大佬点赞
你这个 ffmpeg 和 qaac 的路径应该添加到系统变量里去, 然后打开音频文件所在的文件夹,在文件管理器地址栏中输入 PowerShell 或者 cmd,按 Enter 键,然后运行路径已简化的命令,比如:
qaac input.wav -o output.m4a
这篇文档的最低用户定位是给突然需要压制, 压完就删工具的用户看的, 而且我也算压了上百个音频了也没搞过什么变量, 反倒是把命令写进 txt 保存了, 用的时候直接改文件导入导出名称就行了
楼主,你好,我想问下哦,用 qaac 编码 iTunes plus 256 的时候怎么设置音量平衡呀,用 iTunes 软件压缩的话,专辑的每首歌都会有音量平衡的,而且是自动的,但 qaac 要怎么设置呀?因为我是要编码整张专辑的呢!
最近准备升级系统所以手机 QQ 卸了,我微信号 jiac789,邮箱地址 732178924@qq.com
@学长很忙 你别说,我查了一下, qaac 还真有这么个东西, 教程已更新, 见 --normalize
我用了 --normalize,但编码以后好像还是没有 volume 那个选项,用 iTunes 软件查看是叫 volume,用 foobar 查看是叫 APPLE SOUNDCHECK GAIN,好像都没看到呢!--normalize 后面要加什么参数吗
那是个开关额,写下来就等于打开了音量标准化的功能
可以加个 qq 讨论下不?