==========转贴时请保留下列信息==========
本教程英文原版:
http://www.mp3dev.org/本教程汉化版基于
署名-非商业性使用-相同方式共享 2.0发布。
首发站:
http://www.vgmu.net/fb2k/ http://popgo.net/bbs/forumdisplay.php?s=&forumid=12 http://bbs.pcpchina.com特别鸣谢:YYY 的 VGMU 提供HTTP空间。
http://www.vgmu.net/参考资料:
網友 Tiberius 的 LAME 使用/參數說明==========转贴时请保留上述信息==========
首先声明:
本帖不是新手指南。wiki版本在这里:
http://www.vgmu.net/fb2k/index.php?LAME%E5%8F%82%E6%95%B0%E5%A4%A7%E5%85%A8% lame [参数] <输入文件名> [<输出文件名>]
如需查询更多参数,可输入下列命令:
% lame --help
=======================================================================
固定码率的例子:
=======================================================================
固定码率 联合立体声 128kbps编码:
% lame sample.wav sample.mp3
固定码率 联合立体声 128kbps编码,较高质量:(推荐)
% lame -h sample.wav sample.mp3
快速编码,较低质量(无噪音修整)
% lame -f sample.wav sample.mp3
=======================================================================
动态比特率的例子:
=======================================================================
LAME具有两种动态比特率编码:ABR和VBR。
ABR(平均码率)是一种动态比特率编码。其他MP3编码器、Vorbis和ACC经常使用这种编码。 其码率由一些度量所决定(比如,信息源中可感知的平均信息量、或者仅为编码表中某些设定参数所必需的码率),而不是基于实际上编码/量化误差的计算值。ABR编码质量至少不会比CBR编码质量差,甚至要比CBR编码质量好:
ABR: (--abr
表示在x kbps附近取一个平均码率进行编码。)
lame -h --abr 128 sample.wav sample.mp3
VBR(可变码率)是真正的动态比特率形式。在此形式下,每帧的编码都会先以推测的允许遮蔽运算为基准,对量化误差进行修正。然后,再根据修正后的量化误差决定该帧的码率。目前,正在大规模开发VBR。
在过度压缩的情况下,VBR编码得到的音频会出现问题,所以,VBR编码的码率不得低于112kbps。以下代码将会在那些难编码的帧中,使LAME提升其编码码率,但是也会导致在易编码的帧中,使LAME不会优化其编码码率:
可变码率(VBR):(使用-V以调整质量/文件大小)
% lame -h -v -b 112 sample.wav sample.mp3
=======================================================================
低码率
=======================================================================
在较低码率,(比如每声道24kbps),推荐使用与低通滤波相结合的16kHz采样率。与其它商业编码器一样,LAME会自动采用上述方式编码。但是,如果觉得低通滤波太多(或者不够),则需要试着调整低通滤波的裁取值以及通频带的宽度(通过使用--resample,--lowpass和--lowpass-width等参数)。
=======================================================================
流媒体
=======================================================================
% cat 输入档名 | lame [参数] - - > 输出
=======================================================================
包含的脚本(在'misc'子目录中)
使用lame编码多个文件:
bach脚本:mlame 运行"mlame -?"以查看其用法说明。
sh脚本:auenc 运行auenc以查看其用法说明。
sh脚本:mugeco.sh
Pearl脚本可重编码mp3文件和保存id3标签:
lameid3.pl
Windows脚本:
lame4dos.bat
Lame.vbs (以及一个HTML前端:LameGUI.html)
=======================================================================
参数指南:
=======================================================================
下面将对编码参数进行详细解说。
编码质量相关参数:
-m m/s/j/f/a 选择模式
-k 禁止所有滤波
-d 允许使用编码区块模式区分不同的声道
--athonly 忽略psy模式输出,仅使用来自ATH的遮蔽运算。
--voice(作废参数,使用--preset voice代替)
--noshort 不使用短区块
-q n 内部的算法质量设定 0-9
0 = 最慢的算法,但是可能会提供最高的质量
9 = 最快的算法,质量低下
-h 等同于 -q2
-f 等同于 -q7
固定码率(CBR)
-b n 设定码率(8,16,24,……,320)
--freeformat 编码成Free-Format 格式的档案。
可变码率(VBR)
-v VBR
--vbr-old 使用旧的可变码率(VBR)压缩算法(默认)
--vbr-new 使用新的可变码率(VBR)压缩算法
-V n 指定VBR编码质量(0=最高质量,9=最低质量)
-b n 指定码率变动下限(8,16,24,……,320)
-B n 指定码率变动上限(8,16,24,……,320)
-F 限定最低码率
-t 禁止写入含VBR信息的标签
--nohist 禁止显示VBR码率柱状图
--abr n指定想要的平均码率
实验性参数(不推荐):可能会使输出音质变得更好,也可能会变得更差:
-X n 使用不同的质量算法(在比较量化的时候)
-Y
-Z
操作上的参数:
-r 指定输入文件为raw PCM格式
-s n 以kHz为单位,指定输入文件的采样率(适用于输入文件为raw PCM格式的情况)
--resample n以kHz为单位,指定输出文件的采样率
--mp3input 输入文件为MP3文件。使用mpglib/mpg123解码
--ogginput 输入文件为Ogg Vorbis文件。使用libvorbis解码
-x 输入文件的交换字节
--scale 将PCM输入放大倍
--scale-l 以为倍数放大0声道(左)输入(放大PCM数据)
--scale-r 以为倍数放大1声道(右)输入(放大PCM数据)
-a 将立体声输入文件混音为单声道MP3文件
-e n/5/c 去加重
-p 添加CRC错误保护
-c 将编码得到的文件标记为受版权保护的
-o 将编码得到的文件标记为拷贝
-S 不显示进程报告和VBR柱形图
--strictly-enforce-ISO 严格遵守ISO MPEG规格
--replaygain-fast 快速计算RG值,但是会有些许错误(默认)
--replaygain-accurate 更精确地计算RG值并找出采样的峰值
--noreplaygain 禁止分析回放增益
--clipdetect允许执行--replaygain-accurate,并显示编码中是否出现削波和整个数值范围的波形如何
--decode指定输入文件为MP3文件,并将其解码为wav
-t 当使用--decode时,禁止写入WAV文件头
(解码为raw pcm格式,原生endian格式(使用-x以交换))
--ogg 使用Ogg Vorbis(.ogg)编码,而不是MP3编码
ID3标签:
--tt 音频/歌曲 标题(在id3v1中,此标签最多为30字符)
--ta 音频/歌曲 艺术家(在id3v1中,此标签最多为30字符)
--tl 音频/歌曲 专辑(在id3v1中,此标签最多为30字符)
--ty 音频/歌曲 出版年代(从1到9999)
--tc 用户自定义文本(在id3v1中,此标签最多为30字符;在v1.1中则为28字符)
--tn