分页: 2 / 6

Re: avs4x264mod v0.6 laa(支持非8-bit的avs输入,可自定义x264_64.exe路径)

发表于 : 2011-12-02 17:21
06_taro
avs4x264的本意是直接把32位的avs输出给64位的x264用的,用法太过于简单所以没有任何文档。

用法就是把64位的x264命名为x264_64.exe,放在avs4x264的同一个目录下。然后把你想用的x264命令行里x264.exe直接改成avs4x264,其他什么都不用动就行了。

譬如你用32位的x264时用这样的命令:

代码: 全选

x264.exe --preset medium --tune animation --crf 23 --output output.mkv input.avs
用avs4x264时,改成

代码: 全选

avs4x264.exe --preset medium --tune animation --crf 23 --output output.mkv input.avs
只要avs4x264的文件夹里有x264_64就可以压了,其他什么都不用改。

只不过官方版的avs4x264有一些问题,尤其是高bit压制的时候,所以我修改了一下,除了修复了一些问题,增加了一些功能之外,顺便让avs4x264可以自定义x264_64.exe的路径而已。可以直接替换avs4x264,因为不自定义路径时默认仍然用x264_64,只有通过--x264-binary "E:\x264.exe"或者-Lx264这样的指令时才会改成你自定义的。

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-03 20:03
264768502
话说taro到底在编译里改了啥? 导致XP和2003的x86系统都用不了了...

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-03 20:42
06_taro
小草试试这三个呢……

http://nmm.me/6z
http://nmm.me/70
http://nmm.me/71


暫時無解,換Server 08 r2吧……

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-12 9:22
julseven9920
擷取.JPG
昨天壓一個影片 跳出這個錯誤 {:cat_12}
再壓一次一樣壓到85%錯誤...

系統是WIN7 64BIT AVS 2.6
使用置頂編譯版 x264_64_tMod-8bit-420

麻煩幫忙解答

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-13 8:49
fansge
264768502 写了:话说taro到底在编译里改了啥? 导致XP和2003的x86系统都用不了了...
x86的系统不能运行x64的x264.exe,没必要用这

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-13 9:38
06_taro
julseven9920 写了:
擷取.JPG
昨天壓一個影片 跳出這個錯誤 {:cat_12}
再壓一次一樣壓到85%錯誤...

系統是WIN7 64BIT AVS 2.6
使用置頂編譯版 x264_64_tMod-8bit-420

麻煩幫忙解答
這種錯誤沒debug信息的話可能性有一大堆
不過最常見的大概是內存超出了,試試減小一下SetMemoryMax的值
因為這個set只是設定avs runtime所用的內存上限,不包括avs調用的dll使用的內存上限。但是就算是laa版,avs runtime+dll的總共內存上限只有4GB,如果dll佔用得多的話就應該減小avs的。
譬如1080如果你用了MCTD+LumaDBL,然後裡面開大量的外部dll,有時候只能SetMemoryMax(1536)甚至1024,而如果是全內部函數,甚至SetMemoryMax(3072)都不會爆。

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-23 1:22
06_taro
Test build:
--Add pipe-mt
--Add affinity/x264-affinity
--Changeable pipe buffer

Download: NMM-HDGitHubMediaFire

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-23 3:50
rshadow
06_taro 写了:Test build:
--Add pipe-mt
--Add affinity/x264-affinity
--Changeable pipe buffer

Download: NMM-HDGitHubMediaFire
这个pipe-mt和mp_pipeline的用途一致吗?
avs4x264mod.exe --pipe-mt --pipe-buffer 1024 --preset slow --output test.mkv" "input.avs"
鄙人是这样写bat的……OTL……求正确写法
--x264-affinity <cpu> Set Process Affinity for x264
--affinity <cpu> Set Process Affinity for the piper
这两个完全看不懂该怎么用 {:cat_18}

其实鄙人连MP_pipeline还没学会怎么弄就是了……

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-24 2:19
-o-o-304-o-o-
rshadow 写了:
06_taro 写了:Test build:
--Add pipe-mt
--Add affinity/x264-affinity
--Changeable pipe buffer

Download: NMM-HDGitHubMediaFire
这个pipe-mt和mp_pipeline的用途一致吗?
avs4x264mod.exe --pipe-mt --pipe-buffer 1024 --preset slow --output test.mkv" "input.avs"
鄙人是这样写bat的……OTL……求正确写法
--x264-affinity <cpu> Set Process Affinity for x264
--affinity <cpu> Set Process Affinity for the piper
这两个完全看不懂该怎么用 {:cat_18}

其实鄙人连MP_pipeline还没学会怎么弄就是了……
看下自带的example.avs,然后照猫画虎不就行了么(拖

Re: avs4x264mod-0.6.2-git-r43(7e0284f)【增加--seek-mode】

发表于 : 2012-01-24 9:55
msg7086
我来解释一下这次的分线程pipe和affinity吧
之前avs4x264的管道模型是直接把avs的数据直接送往x264。

兹玛丽,如果x264的处理速度慢于avs,就会出现avs线程卡住的情况。

由于在一些比较高的参数上,比如MCTD配合slower+,avs时快时慢,x264也时快时慢,就会出现浪费cpu周期的情况。虽然我们可以让avs和x264抢空余cpu资源,但这样做仍然会降低运行速度。这又要提到单线程多核心运行效率问题了。

在多核CPU上,将线程固定在单个核心上可以大大加快运行效率。典型的应用场景是neroaacenc/qaac/avs2avi等单线程资源密集型程序,将CPU核心限制在单核以后,要比不限制 (也就是在4个或者6个核心上跑来跑去) 要快1倍,甚至更多。因此,将avs固定在其中一个核心上,可以提升不少的压制速度。

对于普通的6核CPU来说,设定 x264.threads=6,affinity=32,x264-affinity=31 就会变成如下的效果:
CPU0= 1 - x264
CPU1= 2 - x264
CPU2= 4 - x264
CPU3= 8 - x264
CPU4=16 - x264
CPU5=32 - AVS
其中31来自1+2+4+8+16。

这种分配的最大问题就是avs和x264如果不能完全吃完CPU资源的话就会产生时间片的浪费,因此现在在两者之间引入一个大缓冲区,并用一个旁路线程来将缓冲器的内容发送给x264。
即 avs -> (multi-thread pipe buffer) -> x264.exe
pipe-buffer将是每帧的大小×缓冲帧数。缓冲超过1半的时候会开始减缓缓冲,填满的时候将等待直到x264吃掉一些为止。
需要注意的是,程序本身没有内存占用判定的功能,(谁来写一个吧?)因此请自行调整设定至在32位进程边界以内,以免爆内存。
对于一般的AVS脚本,其常规占用在1G左右,那么对于720p的视频,应尽可能不要超过700左右(2G边界)或者2000左右(4G边界)。(关于LAA的部分,FIXME)