dwing吧 关注:5,669贴子:89,042

x264编码的效率真是出乎意料

取消只看楼主收藏回复

最近用最新版mencoder测试了一些x264的参数,发现在高端参数下,编码后的质量比Real和MPEG4都好很多,在低码率下尤为明显.
另外恒定量化值的功能最让我欣赏,Nero的AVC编码器竟然不支持这个.
PS: Real的编解码器该抛弃了, x264+NeroAAC就是目前完美的编码组合.


IP属地:北京1楼2008-01-10 19:34回复
    嗯...压RMVB已经成习惯了,还有没意识到近几年x264的快速发展(商业化的real编码器的发展很早就停滞了).
    不过目前已经有一些压缩组开始用X264来代替同码率的RMVB了.
    另外,现在一些低端显卡都开始支持H264硬解码了,real的一直都是软解码.

    试验用"-q 30"参数压缩一个rmvb格式静态场景比较多的动画,结果从471kbps压缩成85kbps,画质降低幅度不大 -_-!


    IP属地:北京4楼2008-01-10 21:27
    回复
      我还要补充一句: 我测试用的x264参数比较高端,8个参考帧,最多连续16个B帧,启用所有的4x4/8x8块分析...P4-2.5G上压缩平均只有4fps.


      IP属地:北京5楼2008-01-10 21:45
      回复
        说x264压的效果不好,原因都不在x264本身,而是如下可能:
        1.所用的x264编码器版本不够新.
        2.参数没设置好,最好先懂得参数的基本用法,至少知道哪些参数才能发挥x264的长处.
        3.片源不好,或者针对片源的解码器不好.


        IP属地:北京8楼2008-01-11 18:44
        回复
          x264编码我使用mencoder命令行方式(暂时没有找到很好的GUI).
          工具的下载地址:
          http://oss.netfarm.it/mplayer-win32.php
          (MPlayer/MEncoder svn rev xxxxx)
          x264编码的参数设置:
          qp=30:bframes=16:b_pyramid:brdo:weight_b:bime:frameref=8:mixed_refs:deblock=1,1:me=umh:subq=6:trellis=2:nofast_pskip:8x8dct:nopsnr:nossim:partitions=all:threads=auto


          IP属地:北京13楼2008-01-17 11:10
          回复
            用过MeGUI,缺点:
            1.编码速度感觉比Mencoder慢,可能是因为解码用了DirectShow的缘故.
            2.从RMVB转成X264时会造成影音不同步,原因是RMVB的fps不固定,而Mencoder可以强制复制帧以保证固定fps.不知道MeGUI如何解决.
            3.必须安装.NET Framework,启动速度慢;StaxRip好像也需要,不明白为什么都要借助这个,真的有必要么?

            现在Mencoder更新速度也很快,重要的是不必依赖DirectShow来解码了.
            而且x264的各种选项Mencoder几乎都有,所以我就不直接用官方x264编码器了.


            IP属地:北京15楼2008-01-23 00:19
            回复
              只可惜Mencoder是命令行模式的,没发现很好的GUI.
              国内的一些Mencoder的frontend都对x264支持的不够好,输出不能选择mp4封装.
              而Mencoder还不支持HE-AAC编码,所以只好用Mp4Box手动封装.


              IP属地:北京16楼2008-01-23 00:25
              回复
                从功能上看ffmpeg好像是MEncoder的子集.
                二者的编码器差不多,但Mencoder内置和外置了大量解码器,而ffmpeg内置解码器不多但可以依靠DirectShow.

                用java写Mencoder前端很正常,至少还能跨平台,而用.NET写理由就不多了,
                可能愿意写frontend的都不是专业程序员.

                MediaCoder我也用过,初次用感觉还不错,但后来就发现bug比较多,支持的许多编码器没有必要,其中很多是鸡肋.详细设置还必须安装FireFox...


                IP属地:北京20楼2008-01-23 12:27
                回复
                  原来D版都走前沿尖端啊 - -!


                  IP属地:北京23楼2008-01-26 19:18
                  回复
                    RealNetworks好像也开源了不少代码.
                    Real有自己的编解码器作为核心竞争力,在H.264普及之前可以说非常优秀.
                    Adobe总是买别人的解码器.


                    IP属地:北京25楼2008-01-27 00:22
                    回复
                      开发前端程序不难,但比较麻烦,实用性未必比批处理方式好.


                      IP属地:北京30楼2008-01-29 10:06
                      回复
                        用x264压缩src.avi到dst.264(视频流)
                        mencoder.exe src.avi -mc 0 -nosound -of rawvideo -ovc x264 -ofps 30 -vf harddup -o dst.264 -x264encopts qp=30:bframes=16:b_pyramid:brdo:weight_b:bime:frameref=8:mixed_refs:deblock=1,1:me=umh:subq=6:trellis=2:nofast_pskip:8x8dct:nopsnr:nossim:partitions=all:threads=auto

                        压缩src.wav到dst.mp4
                        neroaacenc -q 0.15 -if src.wav -of dst.mp4


                        IP属地:北京32楼2008-01-30 17:32
                        回复
                          48kbps可以,如果对音质要求不高,32kbps也不错.
                          前者对应q=1.8左右,后者对应q=1.3左右,当然这个值可以灵活掌握.


                          IP属地:北京37楼2008-01-31 10:18
                          回复
                            37楼修正一下: 分别是q=0.18和q=0.13

                            我喜欢用mp4box封装成mp4格式,而且NeroAAC生成的音频流本身已经封装成mp4了,直接加入视频流即可.


                            IP属地:北京40楼2008-01-31 13:13
                            回复
                              尚未发现mencoder能生成wav文件,好像只可以生成raw音频.
                              不过mplayer可以输出成wav,百度上搜一下可以找到其命令行.

                              MP4Box下载:
                              http://www.afterdawn.com/software/video_software/video_tools/mp4box.cfm


                              IP属地:北京46楼2008-02-03 10:59
                              回复