最近看《越狱》和《天赐》挺上瘾,天天压在PSP里看。总是觉着家里的机器压片子让我等着闹心,遂对他进行了升级和优化,在此把我的一些想法和大家分享一下。技巧和方法之类的网上也有一些,不过总结到一起的似乎不多,暂且算我抛砖引玉吧。为很多不堪忍受龟速压片儿的战友们做一点力所能及的事情。废话不多说,往下看…
提升视频压缩速度无外乎两种方法:“来软的” 和 “来硬的”。
先说来“软”的:
方法:优化编码器的设置参数
原理:在画质和速度之间找平衡
俗话说得好工欲善其事必先利其器,TotalVideo Converter 3.11是不二选择。
傻瓜式的操作,能够更方便地转换成我们所需要的视频文件。
设定参数选项,可以在提升压缩速度的同时,还保证画面质量。个人认为特别是在移动设备里真的必要苛求那一点点所谓的完美画质。
通常在TotalVideo Converter 3.11中使用默认设置,选用每一项压缩中的nomal选项就可以在画质和速度上得到比较好的平衡。
1、
尽量选择VBR可变码率,以减小视频尺寸,多耗费的CPU计算资源微乎其微。
2、
如果要在移动设备上播放的话尽量选择不同编码器的速度优先模式。
3、
对于XVID格式,尽量选择1 Pass Constant bibrate,选择Mutipass或者2 pass虽然可以得到更加准确额色彩,看却要付出成倍的压缩时间。在移动设备大多是65536色的屏幕上显得得不偿失。
上面的方法都只是在“投机取巧”,就像一部车想要跑得快,可以少坐几个人,也可以更换更大排量的发动机。之前的优化就好比少坐几个人,那么要想获得根本性的速度提升,还得来硬的!
再来说说“硬”的:
方法:优化现有硬件,升级关键硬件。
原理:提升与压缩相关的硬件性能。
影响压缩速度的三大件儿
第一件:硬盘
影响原因:硬盘的任务是把要进行压缩的视频文件读出来,并将压缩好的视频文件保存起来。就像一个人要把身边儿一堆苹果都咬一口,需要一只手拿过来完好的苹果,咬一口,用另外一只手把咬过的苹果放到一边。想想如果只有一个硬盘会怎样?CPU干等着硬盘慢慢地把文件存好了再把新的素材取出来。要压缩的源文件来不及拿过来,再快的CPU也只有干着急的份儿。
优化方法:
1、
两手干活:使用两块硬盘,一块放要压缩的文件,另一块方要压缩好的文件;
2、
两条腿跑:用两块相同的硬盘组RAID 0也是一个不错的选择。
第二件:内存
影响原因:大家都知道内存是为了解决CPU和硬盘等外置存在的速度差而存在的一种缓存技术。它预先从硬盘把CPU下一步要处理的内容缓存起来。即使是RAID 0这种一秒钟突发读取速度在百兆以上的存储系统,和内存动辄几个G的数据吞吐能力比起来也是几个数量级的差异。
一般压缩软件在内存中都会有Buffer(缓存区)把CPU下一步要压缩的视频内容和压缩好的内容统统缓存起来,然后和硬盘慢慢交换数据,让CPU可以全力以赴的工作,所以内存的速度和稳定都很重要。
优化方法:
1、
内存的稳定压倒一切:建议如果内存没问题的话,在BIOS里的内存参数建议选择by SPD。让内存工作在内存厂商建议的参数下。
2、
有双通道条件的朋友一定要打开。两条腿走路嘛。
3、
对于有一定素质的内存,我们可以对其适当的压榨。记住,大多数时候CAS延迟(行列转换时间)的设置甚至比内存的工作频率对内存的性能影响更大。建议在保留内存额定频率的前提下减少一级CAS。比如:从CAS 2.5到CAS 2.0.。如果可以稳定工作,那么恭喜!你赚到了!
第三件:CPU
以上说的两大件其实只是辅助作用,而cpu性能的提升才是视频压缩的王道。我下面都以intel的处理器举例子,不是因为我是Ifan,而是我确实对AMD的不熟悉,自家的机器最近一两年用的都是intel的cpu,所以对intel的处理器比较有感性认识,望诸位afan嘴下留人。
通过上面的优化,相信CPU家门口儿等待压缩的视频数据已经堆积如山了。剩下的就是视频压缩速度的决定者CPU大显身手的时候了。可以说CPU的性能决定了整台机器的压缩处理能力等级。
影响原因:CPU是最终把带压缩数据,按照压缩指令,经过艰辛的计算,得到预期压缩数据的关键部件。CPU就好比做菜的大厨子,配菜师和打下手儿的只能减少大厨等待而浪费的时间,最终菜肴的制作速度和质量完全取决于大厨的能力。
优化方法:决定CPU速度的有三个因素:架构,频率,指令集。
挑选架构:这个十分重要,大家都知道双核的比单核的快。同频率的酷睿(Core2 Duo)比“笨死”(奔4)快。就好比武大打兴奋剂也跑不过刘翔一样。先不说竞技水平,腿就没人家长。架构可以说是CPU的先天条件,挑选的时候一定要注意。Intel最新出的45nm烤土豆要比同频率的旧架构酷睿大约快10%频率,这个就是小腿儿倒腾的频率,就好比武大跑着一定可以超过走着的刘翔一样。虽然腿短,可咱身残志坚啊。换句话说架构差不多的情况下,频率决胜负。对于现在主流的酷睿来说,不超频还真是屈才了,一般情况下,增加核心电压,随便一块酷睿都可以超频30%以上。只要在BIOS里动动外频,微调一下内存频率(保持内存与CPU外频的同步,必要时可牺牲CAS值),3成的性能提升唾手可得。新出的45nm烤土豆更是夸张到可以轻松提升50%的频率。只要主板不是太差,已经有高人用45nm烤土豆提升了1倍以上的频率。
指令集:用来优化算法,把一堆典型的复杂的指令,用预选定制的简单指令替换,从而打到减少计算量,提升计算速度的目的。就好比跑步的时候抄近道儿。指令集从MMX,SSE一路发展到最新的SSE4,AMD也发展出了增强型3D Now!
影响原因:视频压缩的算法一般是比较规则的复用性极强的循环算法。如果CPU可以识别这些算法,用更高效的指令替代繁荣的指令,完成同样的工作,那么效率自然会高很多。指令集就是这些让CPU更会“偷懒儿”的法则。更新的指令集让CPU变得更加聪明,更会“偷懒儿”
优化方法:
1、
尽量选择采用最新指令集的处理器。比如酷睿的SSE3为视频压缩最了部分优化,发展到45nm烤土豆的SSE4就对视频压缩做了专门的优化。其效果可以达到比同频率”土豆”快50%的程度。
zol的测试结果
2、
使用正确的软件,以支持最新的指令集。
在一些新的压缩软件的设置选项中我们通常可以找到上图所示的指令集选项,一定要把自己处理器所支持的选项全部画勾。
[ 本帖最后由 niehf 于 2008-2-3 21:38 编辑 ] |