用Megui -x264压制简介 |
为什么用Megui -x264?
对于H264(AVC)的编码工具其实有不少,比如nero7中的Recode组件也可以进行编码,不过nero的编码比较傻瓜,自己定制的余地很小,而且是商业软件(尽管我们都用的是D版 [s:14])。x264则是一个开源的H264规范的编码器。只是x264是命令行模式的工具,对于新手来讲可能很郁闷。所以偶们就用Megui来作为其图形界面。顺便提一下,x264有一个vfw版本,不过因为h264和avi的兼容性的问题,该版本已经停止了开发。 准备的工具 Megui(要MS .NET Framework 2.0):http://sourceforge.net/projects/megui x264 Cli:http://x264.nl/(其实不需要Megui可以自动更新的) Avisynth:http://sourceforge.net/projects/avisynth2/ 把解压到指定目录(最好不要有中文路径,可能互有问题) 运行megui可以看到主窗口 第一次运行Megui会自动进行更新。可能有个别的服务器有问题,如果用不到可以不更新。如果只是x264编码需要的就是mencode、mp4box、x264、还有profile等几个。 选tool菜单下setting。 main标签下基本可以默认,可以把Open Preview after Avisynth scriptselection的勾去掉。其它的如Default Priority(进程的优先级),Shutdown afterencoding(完成关机)自己酌情选择 Program Path这个标签是为了选择相关文件的关联,检查一下x264.exe文件是否在相应的目录系即可 由于只能读入avs文件所以接下去就是编写avs script。如果熟悉avs的话直接用记事簿写就可以了。 当然也可以使用Megui提供的工具,点开tool菜单下Avisynth Script Creator 选择你所要压制的媒体文件,默认下会有resize根据你自己的片源情况,可以自行考虑需不需要。 在edit标签下你可以自行增删你所需要的avs script。也可以在load DLL选择所需要的滤镜 完成save Megui会自动把文件添加到vedio部分 Codec自然是选择x264,Container可以选择MP4,也可以MKV,RAW的话出来的文件是.264,不能直接用mmg进行mkv封包,只能用MP4进行打包。我们选择默认MP4 接下去点开Config可以看到有很多东西可以选 在最下方我们下拉Profiles可以看到有很多预置的profile 先解释一下各个Profile的含义,再简单说说那些主要参数的含义 引用: 最高画质设置: 我通常选择AE-Goodquality这个profile,依照我的机器配置AMD64 3000+,1G内存。24分钟的片子大约需要2到2.5小时。 解释一下那些参数的具体意义,main标签页下 Mode是可选的模式: ABR(average bitrate)是码率被设定在一个平均数上下浮动(不适合视频编码) constant quality恒定画质(一般不用) constantquantizer,恒定量化值,范围0~51,0为无损压缩,默认26(貌似Megui里无法选0,值越小质量越高,熟悉Xvid编码的知道Xvid的Q值和x264的量化值存在以下关系x264(Q值) = 12 +6*log2(XVIDQ值))因为是恒定量化值,所以最终的文件大小会根据片源情况发生波动 其它的是各种pass,x264的1-pass不编码会形成.stats文件,多pass编码可以勾选前面的Turbo以加快编码速度。可以通过选择Bitrate来控制文件的大小 Enable PSNR calculati不用勾选,这是个画面质量的校验机制,关掉不会影响画质,还会缩短压缩时间。 Number of thread是设置你的CPU数,双核的CPU可以选2 fourCC是媒体文件识别符号,选x264 Deblocking可以进行噪点的处理,根据片源的情况自行选择,正值起到柔化作用,可以减少噪点,负值则起到锐化的作用。如果你在编码时开启deblocking的话,那么在解码时也要打开deblocking,否则会出现色块、马赛克现象。 AVC Profile和AVC level与我们在电脑上看片无关,不用去理会。 Zone标签是用于区域处理,可以对某段帧进行特殊处理,我们不用去理会 RC and ME标签 VBV Buffer size:码率控制缓冲区的大小,单位kbit,默认0 VBV Maximum Bitrate:平均码率模式下,最大瞬时码率,默认0 VBV Initial Buffer:码率控制缓冲区数据保留的最大数据量与缓冲区大小之比,范围0~1.0,默认0.9 Bitrate Variance: 平均码率模式下,瞬时码率可以偏离的倍数,范围0.1~100.0,默认1.0 Quantizer Compression: 线性量化控制,0.0为固定码率,1.0为固定量化值,默认0.6,只用于2-pass和质量模式 Temp. Blur of est. Frame complexity:根据相邻帧平滑量化值比例的最大值,范围0~99.9,默认20.0,只用于2-pass和质量模式 Temp. blur of Quant after CC: 对统计文件结果平滑量化值比例的最大值,范围0~99.9,默认0.5,只用于2-pass Chroma M.E.: 勾选进行色度的动态预测 M.E. Range: M.E. Algorithm为Hexagon/Exhaustive时的搜索半径,最大64,默认16 Scene Change Sensitivity: 画面动态变化限,当超出此值时插入I帧,默认40 M.E. Algorithm: 对全像素块动态预测搜索的方式,默认"Hexagon",可选项: Diamond:菱形搜索,半径1 (快) Hexagon:正六边形搜索,半径2 Multi hex:可变半径六边形搜索 Exhaustive:全面搜索 (建议设为Multi hex,Exhaustive实在太慢了,而且质量提高极不明显。) Subpixel Refinemen: 动态预测和分区方式,可选项1~7,默认5(与压缩质量和时间关系密切,1是7速度的四倍以上) 1:用全像素块进行动态搜索,对每个块再用快速模式进行四分之一像素块精确搜索 2:用半像素块进行动态搜索,对每个块再用快速模式进行四分之一像素块精确搜索 3:用半像素块进行动态搜索,对每个块再用质量模式进行四分之一像素块精确搜索 4:用快速模式进行四分之一像素块精确搜索 5:用质量模式进行四分之一像素块精确搜索 6:进行I、P帧像素块的速率失真最优化(rdo) 7:进行I、P帧运动矢量及块内部的速率失真最优化(质量最好) ( 越大质量越好,不过编码速度也会急剧下降。建议:只要机器撑得住,设为7) Keyframe Interval: 最大IDR帧间距,默认250(一般来说压制动画时,可以增大) Min. GOP Size: 最小IDR帧间距,默认25(一般来说压制动画时,可以减小) Noise Reduction:噪声去除,范围0~100000,默认0 Advanced标签 Minimum Quantizer: 设置最小量化值,范围0~51,默认10 Maxmum Quantizer: 设置最大量化值,范围0~51,默认51 Maxmum Quantizer Delta: 设置相邻帧之间的量化值差,范围0~50,默认4 Credits Quantizer: 演员表量化值 Factor between I and P frame Quants: I帧和P帧之间的量化系数,默认1.40 Factor between P and B frame Quants: P帧和B帧之间的量化系数,默认1.30 Chroma QP Offset: 色度和亮度之间的量化差,范围-12~+12,默认0 Trellis: Trellis量化,对每个8x8的块寻找合适的量化值,需要CABAC,默认0 0:关闭 1:只在最后编码时使用 2:一直使用 (提高质量,降低速度。建议开启。) Number of Refence Frames: 最大参考帧数,范围0~16,默认1(对质量和压缩比都有提高的参数,一般要设>1) Mixd: 可以在一帧内使用不同参考帧(有效,但对速度影响较大。建议尽量开启) CABAC:内容自适应二进制算术编码(CABAC,高效率的熵编码)(关闭会提高速度,但严重影响质量) No Dct Decimatio: 关闭P帧联合编码(可以增加细节,但也会增大体积) No Fast P-Skip: 关闭快速P帧跳过检测 Macroblock Options: 动态块划分方法,默认"p8x8,b8x8,i8x8,i4x4"。可选项:p8x8/b8x8/i8x8/i4x4;none/all(p4x4需要p8x8. i8x8需要Adaptive DCT) (分析当然是越多越好。建议:只要机器撑得住,设为all。) Number of B-Frames: 在IP帧之间可插入的B帧数量最大值,范围0~16,默认0(可以大大提高压缩比的参数,非用于二次压制的片源一般要设>1) Adaptive B-Frames: 自适应B帧判定(B-Frames设为1时可以不用,其他不推荐) B-Pyramid: 允许B帧做参考帧(对速度影响很小,一般开启) RDO for B-Frames: B帧也进行速率失真最优化,需要Subpixel Refinemen在6以上(提高质量,降低速度。建议开启。) Weighted B-Prediction: 允许B帧加权预测(可以减少相邻B帧质量低的影响)(对质量和压缩比都有提高,且对速度影响极少。建议开启。) Bidirection M.E.: 可以平均B帧参考块的运动矢量(对质量和压缩比都有提高,且对速度影响极少。建议开启。) B-Frame mode: 动态预测方式,默认"spatial"。可选项:none/spatial/temporal/auto(建议用auto) B-Frame bias: 控制插入B帧判定,范围-100~+100,越高越容易插入B帧,默认0 Quantization matrix: 可以选用自定义距阵。附件里提供几个距阵LRM MRM HRM分别对应低中高码率。 OK接下来退出Config页面,按Enqueue按钮。接着转到Queue标签 按start 开始压制。结束后会生成一个MP4文件。 然后处理音频。当然也可以使用Megui。不过处理音频的工具很多,最简单的用foobar2000,winamp都可以实现。 音频处理完就可以用mkvtoolnix中的mmg封成MKV,当然用yamb+mp4box也可以封成Mp4 这样视频文件就完工了 |
这个世界,真理只存在于导弹的射程范围内
|