iavoe

iavoe作者

默认节点·167.6天前

x264视频压制教程 综合稳定版 [2018.3更新]

繁體: 1.使用chrome瀏覽器打開pdf格式文件,右鍵“翻譯”. 2.使用微軟Word打開.docs格式文件,找到“簡轉繁”即可
请不要抱有任何“这东西很难吧”的想法!我做这篇文档就是为了把复杂的东西简单化,从而使更多人能花费最少的时间,如果你卡在了某个地方就尽管问我吧!
邮箱: jgong117398@gmail.com,QQ: 732178924
适宜人群: 想系统性的了解, 学习视频压缩的童鞋们. 看了一堆教程但还是摸不着头脑的童鞋们, 希望着手视频创作, 或加入/创建字幕组的童鞋们ε=ε=┏( >_<)┛
.
简介1: 综合版的科普占了不少篇幅, 主要讲x264的基本工作原理,为增进阅读体验以及降低阅读门槛做了点微小的工作.
简介2: 参数提取版适合希望快速配出想要的压制参数的童鞋,但欲速则不达,凡是正常人,谁都不可能一上来就看的懂哦~
.
2018.2版优化了排版, 把--vf移到了靠后的位置
2018.3版增加了去VFR的方法,优化了QAAC的阅读困扰性,下载链接:
1.仅参数提取docx
http://42.96.168.211:8088/upload/files/1518815102.docx
2.仅参数提取pdf
http://42.96.168.211:8088/upload/files/1518815113.pdf
3.教程综合稳定版docx
http://42.96.168.211:8088/upload/files/1518815075.docx
4.教程综合稳定版pdf
http://42.96.168.211:8088/upload/files/1518815086.pdf
5.网盘地址:
pan.baidu.com/s/1i5GcJK5

X.附录: QAAC音频编码器命令行教程
http://42.96.168.211:8088/upload/files/1518815635.txt (Windows端的ANSI编码)
http://42.96.168.211:8088/upload/files/1518815626.txt (其他设备端的UTF-8编码)
.
转载要求:
必须附上本页面地址

评论 3 立即评论
iavoe
iavoe 1楼·167.4天前

另外, 我必须要说的是由于教程全部的内容都是我一个人收集实验写出的, 在缺乏外界的帮助, 检查时的纰漏,
以及大大小小各种不确定性的影响下难免会出现错误, 如果你尝试压制视频时出了问题, 或者只要有任何地方没看懂在下面回复我即可!如果实在懒得注册就加我QQ: 732178924

iavoe
iavoe 2楼·158.8天前

问题修复:
--qpmin<已修复>
--merange <已修复>
下次待更新:

iavoe
iavoe 3楼·33.8天前

附录: QAAC音频编码器命令行参数教程:
QAAC是基于苹果公司的qtaacenc改进而来的出现于2012年的编码器, 可以输出有损压缩AAC和无损压缩ALAC格式的音频, 相比2006年的NeroAAC, 可用的功能更全, 串流用高复杂度模式(HE), 直播用低复杂度编码(LC)等等
注: AAC相比MP3能在相同码率下达到更高音质, 而且前一阵子MP3还发布了"已经退役"的声明.
注2: 由于精力有限, 所以只翻译了部分常用参数
注3: 串流指上传到视频网站播放

下载与安装(直接用小丸工具箱里的即可, 但如果你能折腾的话就往下看吧):
下载qaac: github.com/nu774/qaac/releases
.
QAAC需要苹果的应用程序支持安装才可以运行, 所以首先下载一个iTunes, 然后把后缀改成.zip打开, 根据你的电脑位数解压出AppleApplicationSupport64.msi或者不带64的那个msi, 安装, 就可以用QAAC啦~
.
如果你嫌它大, 可以再下载一个MSIExtractor(批处理之家那个不能用)打开它, 找到解压出的Common Files\Apple\Apple Application Support\
.
然后往下翻, 找到:
ASL.dll,
CoreAudioToolbox.dll,
CoreFoundation.dll,
icudt*.dll, (*代表可能是任何数字或字母)
libdispatch.dll,
libicu*.dll
libicu*.dll (没错有两个不同*的dll)
和objc.dll
如果未安装Visual C++ 2012则还要加上主目录下的mscvp120.dll和mscvr120.dll
.
全部复制到QAAC的主目录下(即和libsoxconvolver64.dll, libsoxr64.dll, qaac64.exe, refalac64.exe放在一起)就可以开始了...如果你要压缩.FLAC格式的音频则需要去github.com/nu774/qaac/wiki/Installation安装一个FLAC解码包哦~
.
导入文件与格式
'打开QAAC(路径+qaac.exe)' [参数] '打开音频(路径+文件名+后缀)'
.
引号, 或双引号是为了防止路径或文件名中的空格干扰了QAAC的理解而加的.
压制完后qaac会在qaac所在的目录输出'随便一个音频.m4a', 当然你可以照着下面的参数更改哦.
.
从ffmpeg导入文件的格式
'打开FFmpeg(路径+ffmpeg.exe)' -i '打开音频' -vn -sn -n - | '打开QAAC' [参数] - --ignorelength
注: --ignorelength代表适应被喂流, 所以不用知道音频长度信息
.
编码模式
有损压缩有abr平均码率, tvbr软限可变码率和cvbr硬限可变码率. 平均码率自然不用说, 所谓"软"就是指当某个区域的音质需要更高码率的话可以突破参数值的设定, 适合存档. 而"硬"就是不可突破限制的模式, 适合串流(视频网站播放)用
五选一
-V, --tvbr <整数, 范围0~127>默认模式, 调整输出音质, 越大质量越高, 默认93, 尽管编码器可以调教, 但解码器就可能只有0/9/18/27/36/45/54/63/73/82/91/100/109/118/127这几种, 所以不妨按照它来设
-v, --cvbr <整数>设置输出码率, 单位kbps
-A, --alac <开关>输出无损流
-a, --abr

<整数>设置输出码率, 单位kbps
-D, --decode <整数>输出PCM波形, 并输出.wav文件
.
输出文件格式
.WAV目前最大的用途就是可以丢给音频转MIDI的程序了...
.M4A容器格式基本上就是.MP4改个名字, 可以封装AAC或ALAC的音频流.
.CAF是苹果公司研发的一种现代音频格式, 相比.WAV等老款格式支持超大体积(在这之前最大4GB), 断点续传, 字幕封装等功能. 解决了未来高超高清音频可能会遇到的瓶颈.
.AAC音频流是未封装的传输流(Audio Data Transport Stream), 通常封装在容器格式中, 就我个人来说, 电脑和手机都能播放, 而且后缀相比mp3读起来要少念一个音, 所以当然是要aac啦( /)u(\ )不过尽管是设置了封装, 但也还要在输出(-o)里加上后缀哦
三选一
默认=输出.m4a格式
--adts <开关>输出.aac格式
--caf <开关>输出.caf格式
.
Smart Padding首尾去噪
直译的话就是智能首尾填声, 主要设计目的是为了缓冲掉歌曲突然开始, 波形从零突然变化剧烈的情况.
--no-smart-padding <开关>关掉这个功能, 以达到对文件体积的控制
.
压缩强度与占用
-n, --nice

<开关>降低优先级
--threading <开关>使用多线程
-q, --quality <整数, 范围0~2> 仅用于编码速度换取音质的参数, 默认质量优先2, 直播可以调到0, ASMR直播可以调到1.
--he

<开关>使用高复杂度high efficiency编码方式, 适合串流.
注: 默认是使用低复杂度low complexity 即lc编码方式, 适合直播.
--no-dither <开关>关闭抖动, 用音质换取文件体积的参数.
--no-optimize <开关>关闭"压缩完成后为.mp4封装优化"的功能. “优化”意味着更好地让视频播放器播放它, 但其它的音频播放器可能会覆盖掉, 所以如果不用封装进视频就使用这个选项吧~
.
音频编辑
-r, --rate <keep/整数/auto>调整音频的采样率, [默认keep(保持原有)][参数值即赫兹, 比如-r 44100][auto(自动)则会交给QAAC来判断]
--gain

<浮点>调整文件音量, 输入负值可减低
--drc

<threshold:ratio:knee:attack:release>动态范围压缩, 就是将吵的音量压下来, 同时保留一定范围内音量, 使不该响的不响的功能.
threshold =阀值, 超过则判定为吵, 单位dBFS, 这个值就自己吼一嗓子试试吧(⌒_⌒;)
.
ratio

=衰减比率, 例如阀值是10, 比率是3, 只要音量超过10db就将<超出的部分>压缩到原来的1/3, 通常设15
.
knee

=见效过渡, 值越大就越柔和, 使整个处理过程更自然的参数, 单位db, 通常设1
.
attack

=反应时长, 单位毫秒. 防止编码器反应过快, 致原本大声没有超过阀值就被压回来
例如设在3.2, 那么超出阀值的音量要从0秒不处理, 到花3.2毫秒才完全达到衰减后的设定, 通常设25~50左右
.
release =释放时长, 单位毫秒. 防止编码器反应过快致声降低不明显
例如设3.2, 那么落回阀值时, 音量会在0秒保持衰减, 到3.2毫秒时才完全回到衰减前的设定, 通常设150~300左右
.
举例: '--drc 50:6:7:8.9:10'指超过50db算吵, 压缩到原来的1/6, 反应过来前音量低了8.9db, 音频落回后又花了10毫秒将衰减的效果消除
.
输出选项
-o

<字符>输出路径与文件名, 如有空格则加""
--title

<字符>标题
--artist <字符>艺术家
--band

<字符>乐队
--album

<字符>唱片
--composer <字符>作曲家
--grouping <字符>分组
--date

<字符>日期
--disk

<字符>唱片名
--genre

<字符>音乐类型
--track

<字符>音轨名
--artwork <唱片封面>输入路径和文件名导入
.
不明选项
-d

<字符>输出目录???暂不明

后发表评论