[尝试贴]从零开始简单粗暴地压制
megui吧
全部回复
仅看楼主
level 15
bunny844 楼主
前言
在megui吧到处乱窜,总是被人误认为大神
其实那都是签到、初期提问、以及让人别用DSS水出来的
真正的大神是sherry22422、MeteorRain_1、猪栏有只牛等,小神终极百百,以及其他我拼不出来的ID、或暂时想不起来的诸位
以上4人教了我很多,虽然平均10句中有9句是我听不懂的,白费了他们一番教导
看到太多新人问由于DSS产生的问题,所以索性开个教学贴,也许有些依然是错误的,但至少能出个看起来还过的去的成品
另外我想说可能我依然还没入门megui,会内嵌真的不能算入门
2015年07月25日 03点07分 1
level 15
bunny844 楼主
先说一直被人诟病的AVSWriter
我觉得这款软件有一个好处就是AVS基础入门
说人话就是至少让人知道了avs的样子
贴吧里很随意地找了个范本来解读一下
LoadPlugin("E:\YPDY\AVSWriter\dll\VSFilter.DLL")
LoadPlugin("E:\YPDY\AVSWriter\dll\DGDecode.DLL")
LoadPlugin("E:\YPDY\AVSWriter\dll\DeComb.DLL")
LoadPlugin("E:\YPDY\AVSWriter\dll\TomsMoComp.DLL")
LoadPlugin("E:\YPDY\AVSWriter\dll\Gradfun2db.DLL")
LoadPlugin("E:\YPDY\AVSWriter\dll\UnDot.DLL")
——以上的诸行loadplugin就是加载各种滤镜,但如果把这些*.dll文件放在“\AviSynth 2.6\plugins”下,就完全可以省略
VSfilter.dll是字幕滤镜,有了它才能使用TextSub加载字幕(更高级的一点为VSFiltermod.dll,配合TextSubMod来使用)
另外5行老实说我不知道干吗的
DirectShowSource("E:\XZ\The.Last.Ship.S02E06.720p.HDTV.X264-DIMENSION[EtHD]\The.Last.Ship.S02E06.720p.HDTV.X264-DIMENSION.mkv",23.976,convertFPS=True)
——DirectShowSource,就是我们通常说的DSS,中文叫“多试试”(怎么可能),能用好这个的肯定能在微软技术部门谋得一席之地,相对VISTA\7\8而言,在XP环境下出错几率会少一些,至于原因么MR大神有指教过,我虽然理解了一点但(用自己的话就)表达不好,就以以“兼容性问题”为借口搪塞一下
ConvertToYV12()
——转换色彩空间,一般用不到
Crop(0,0,0,0)
——主要是切边用的,括号里为左上右下的顺序,(2,2,-2,-2)就是四条边皆切掉2个像素
AddBorders(0,0,0,0)
——与crop相反,是加,默认是加黑边
LanczosResize(1280,720)
——修改尺寸,建议是能整除16的偶数
TextSub("E:\XZ\The.Last.Ship.S02E06.720p.HDTV.X264-DIMENSION[EtHD]\S02E06.srt")
——这个不知道是干什么的
2015年07月25日 04点07分 2
DGDecode.dll,底下你有用到,和DGIndex一起的 DeComb.dll,好像是与反交错有关 TomsMoComp.dll 不知道干什么的 Gradfun2db.dll 做deband的 undot.dll,是降噪的,不过加不加也什么两样,似乎只能用于yv12,以前我在yv24下用,出现很神奇的效果 另外,resize滤镜自带裁剪,而且可以设为浮点(小数)
2015年07月25日 13点07分
2015年07月25日 13点07分
@787633258 自带剪裁我是知道的,只是这毕竟是从零开始的入门贴,不想教到那么”深“。浮点的意思是(1280,720,1.1,1.1,-1.1,-1.1)这样吗?
2015年07月25日 13点07分
@bunny844 应该是这样,我没用过
2015年07月25日 13点07分
level 15
bunny844 楼主
其实一般仅仅用于简单粗暴内嵌的AVS哪有那么长
列举一个比较万能的AVS
LoadPlugin("D:\software\MeGUI\tools\ffms\ffms2.dll")
LoadPlugin("D:\software\MeGUI\tools\avisynth_plugin\VSFilter.dll")
video=FFVideoSource("aa.mkv",fpsnum=30000,fpsden=1001).LanczosResize(1280,720).Textsub("aa.ass")
audio=FFAudioSource("aa.mkv")
AudioDub(video,audio)
第一行加载了ffms2.dll,是为了第三行和第四行能用FFVideoSource和FFAudioSource
第二行我不知道是干嘛用的
FFMS可以加载MKV、MP4、AVI,甚至包括部分FLV,有些不常见的格式都至少可以用来尝试一下
“fpsnum=30000,fpsden=1001”是指29.970帧率,23.976的话把30000换成24000,用来指定成品的帧率,不改变的话直接省略不写。另外我真的不知道那两个英文单词是啥意思
分辨率不修改的话也可以不写
所以在不改分辨率和帧率的情况下,可以缩减成这样
LoadPlugin("D:\software\MeGUI\tools\ffms\ffms2.dll")
LoadPlugin("D:\software\MeGUI\tools\avisynth_plugin\VSFilter.dll")
video=FFVideoSource("aa.mkv").Textsub("aa.ass")
audio=FFAudioSource("aa.mkv")
AudioDub(video,audio)
我会告诉你不加字幕的话还能再缩减吗?
最后一行是指视频音频混流,在这个例子中,没有这一行是会出错的
2015年07月25日 04点07分 3
忘了叮嘱一点,使用该模板千万不要自作聪明的分行,以及注意Textsub之前的小圆点
2015年07月25日 04点07分
@bunny844 把滤镜和avsi放到自动加载文件夹内,可以省去写loadplugin和import
2015年07月25日 09点07分
@787633258 我在上一层楼有写,还是谢谢
2015年07月25日 09点07分
@bunny844 不好意思,是我没仔细看
2015年07月25日 13点07分
level 15
bunny844 楼主
除了上面所说的FFMS,说一下常见格式的滤镜
LWLibavVideoSource("aa.mkv")
LSMASHVideoSource("aa.mp4")
AVIsource(“aa.avi”)
注意,不管是逗号、引号还是括号,均为半角英文
2015年07月25日 04点07分 4
楼主问一下,在什么样的情况下会用到这两种滤镜[疑问]
2016年03月17日 03点03分
@某只笨猴子 看到括号里的格式了吗
2016年03月17日 03点03分
回复 bunny844 :看到,可是在你上面我看到是用ffs的滤镜,所以我不是很明白什么情况用这两种滤镜
2016年03月17日 03点03分
@某只笨猴子 ffms滤镜比较万能,相对来说也比较平庸
2016年03月17日 04点03分
level 15
bunny844 楼主
说一下改帧率的滤镜
以下这段话应该就是复制的逝雪大神的原话
AssumeFPS(改参数滤镜)
ChangeFPS(插帧滤镜)
ConvertFPS(blending滤镜-blend是模糊功能)
assumefps不改变总帧数,调整的是帧间隔时间,视频时长改变
changefps抽取或添加帧,不改变时长,改变总帧数,由于一段内的几帧帧间画面被改变,会出现卡顿。convertfps计算两帧差值生成融合帧,不改变时长,改变总帧数,由于一些帧是计算出来的,会出现某帧虚影边缘模糊等现象。所以逐行画面fps不要蛋疼的去动它
两种表达方式,以29.970为例
AssumeFPS(30,1,true)
AssumeFPS(30000,1001)
2015年07月25日 04点07分 5
level 15
bunny844 楼主
现在说一下什么是帧率、码率、分辨率
eh……
大陆请自行百度,大陆以外请谷歌或当地合法的搜索引擎
善用搜索引擎是学习各种技能的好方法
2015年07月25日 04点07分 6
那个我下载了你分享的 ''00-Temp'' 里面plugins压缩包里的插件,然后我在MeGUI 32位中使用正常,我换到MeGUI 64位之后不是有效的32位程序就是无法加载插件什么的,这些插件是不能兼容64位的MeGUI吗@bunny844
2017年04月06日 10点04分
@贴吧用户_Q73NDJE 不清楚,我win8.1是可以用的
2017年04月06日 10点04分
@bunny844 另外发帖问,也许有人能帮到你
2017年04月06日 10点04分
MeGUI 64位里面内置的DSS是可以用的,不过在类似 【E:\megui-core-2690-X64\tools\avs\plugins】 这样的路径里面,32位的在【C:\Program Files (x86)\MeGUI_tieba\tools\avisynth_plugin】这样的路径里
2017年04月06日 10点04分
level 6
说实话压制这东西没办法做到简单粗暴....
除非二压别人的压制源
就算是不玩EP自己去处理 DVD HDTV BD 这些东西需要补的知识太多了最常见的就是隔行扫描到逐行扫描
很多人都知道1080P的分辨率是1920*1080 但是并不知道这个P的含义
假如遇到的是1080I的视频 用处理1080P的所谓的模版那不是作死是什么?
要压制视频 首选还是要了解片源和了解自己的需求 也就是想把这个片源处理成什么样
一句话隔行扫描必须死(好在4K标准下已经没有隔行扫描了)
2015年07月25日 05点07分 8
忘了这里还有位大神。我们对“简单粗暴”的定义稍微有点不同,我是指不处理比如噪点之类的画质原因。我没考虑过解释P或I,因为我解释不来,对于反交错我还没说到,慢慢来吧,你看标题里有“尝试贴”的字样。还是要谢谢指教
2015年07月25日 05点07分
@bunny844 最近被某些片源真心恶心到了 怎么玩都难受的那种
2015年07月25日 05点07分
@日野茜🌞 我突然想到一个问题,1080p只能是16比9吗,4比3,18比9的不行吗,,,2160×1080算不算1080p
2018年11月18日 03点11分
@一个路过的人B 算,1080P只要高是1080即可,这个你可以查一下1080P
2018年11月18日 03点11分
level 15
bunny844 楼主
8楼大神提到了P和I的概念
我简单的理解就是1080P是逐行扫描视频,1080I是隔行扫描视频
这俩概念请自行百度
隔行常见于TS、DVD、BD等片源,但常见不等于全是
另外也有遇到过明明标有P却实际是I、或反过来的情况,所以强调具体片源具体分析
反交错略高级,再议
2015年07月25日 05点07分 9
level 15
bunny844 楼主
megui关于音频的剪辑方法也还是有的
工具--avs切割器--选定切割区间--保存为clt文件
工具--音频切割器
这样操作就是无损切割
另外选定切割区间需要轴知识
一个好的压制一定至少也是个熟练的时间轴
轴压不分家
2015年07月25日 05点07分 11
有什么好方法无损提取WMV的音轨吗?多谢。
2016年08月03日 00点08分
@🌈流年电影 eac3to。换另一个置顶看更新过的教程
2016年08月03日 00点08分
大佬我用meigui压缩视频过后,视频声音会变大,求大佬解答一下,万分感谢,我用的是meigui2112版,万分感谢
2024年01月30日 05点01分
@喂喂一笑了之 无法解答;我猜你用程序写的avs,用的directshowsource滤镜
2024年01月30日 08点01分
level 15
bunny844 楼主
关于AVS的部分讲了很多很多,因为这部分非常非常地重要,不会用avs将至少在megui这个软件的使用上困难重重寸步难行
而megui部分想说明的部分就很快了
2015年07月25日 05点07分 12
level 15
bunny844 楼主
编码设置“配置”
编码模式需要勾选“显示高级设置”才会有那么多项可选
我以主楼所提到的大神们的名义推荐const.quality模式,默认选23
常用的编码模式有两种,auto2pass和const.quality,简单说一下区别
auto2pass——恒定码率,默认为2000,就是不管什么画面,一律喂平均2000码率,具体理论我不懂,比较直观地体现就是一部电视剧或动漫,每一集的体积都是一样的(比如200M),那肯定是auto2pass做出来的
const.quality——恒定质量,大神们俗称crf,会根据实际画面的需要来喂码率,画面激烈的就多喂一点,平静的就少喂一点,电视剧每一集的体积都不同,甚至会差别很大。crf取值范围为0-50(但megui是18-26),数值越低画质越高,具体取值多少根据画面、经验(以及欲望)决定,比如水着PV我就会强行给高一点什么的……
思考:一个人一袭白色长裙原地不动的抒情慢歌,和一群人五颜六色不同的衣服劲歌热舞,所需要的码率会是一样的吗?
两者的综合比较:
同一个片源用auto2pass-2000码率来压制,那码率就会是2000,甚至可能片源都没有那么高地码率
而如果用crf23来压制,码率有可能是1500,也有可能是2500,但绝不可能超越片源地码率
补充一点
每一次的压制都是有损的,码率无法补足,只要不扩大尺寸,码率只会随着压制次数的增多而越来越小
2015年07月25日 05点07分 13
用crf23是有可能超过片源的
2015年07月25日 09点07分
@787633258 每次有损压缩质量都会下降,不代表每次码率都会下降
2015年07月25日 09点07分
@787633258 质量下降和码率是什么关系?我真没碰到过crf23超过片源的,具体说说
2015年07月25日 09点07分
同一次编码中码率低了,质量下降的多(其它参数合适)。 第一次编码与(第一次编码结果为片源的)第二次编码相比,第二次质量必然低于第一次,但码率大小不一定。比如第一次压渣了,画面中出现大量类似碎玻璃(不知道这样自描述准不准确)状的东西,再第二次编码中,它们都会被认为是细节,而且它们很复杂。
2015年07月25日 12点07分
level 15
bunny844 楼主
一键编码时,记得要选择“没有目标的大小”
关于这个也可以在megui的选项配置中进行设置以一劳永逸
不选这个的话,10M视频也可以给你压制到200M
2015年07月25日 05点07分 14
不是一键编码,是自动编码
2015年07月25日 12点07分
@bunny844 你搞错了吧?选没有目标大小才会把10M压成200M的吧!
2016年12月28日 13点12分
@葬爱Xy 原理我讲不清,信不信随你
2016年12月28日 22点12分
@bunny844 我选了没有目标大小之后4g文件变成50多G,吓得我赶紧关了[黑线]
2016年12月29日 09点12分
level 15
bunny844 楼主
反交错这事情太复杂了,视觉效果就是有横纹(我喜欢称之为百叶窗)——也许这么表述是错的,具体请自行百度“交错”或“反交错”等
5烂2用肉眼不太容易看出来,需要megui预览逐帧浏览,表现形式为3帧好、2帧坏——在坏的那一帧会有横纹)
帧帧烂就容易的多了,尤其是在画面人物有明显动作的时候,逐帧观看是每一帧都坏
以下这段话是我直接复制的(经过整理的部分的)大神的原话:
MeGUI默认的反交错方案是IVTC
这种方案的特点就是每5帧删去1帧,所以帧率就从30变成24,29.970变成23.970
avs脚本中,tfm().tdecimate()就是做IVTC的滤镜
如果要保持住30,就在tdecimate里指定参数hybrid=3
tfm要加载TIVTC,QTGMC要加载QTGMC。后者要另下
tivtc是dll后缀,load加载,qtgmc后缀是avsi,import加载
hybrid——强制转换帧率
1=24
2貌似没有
3=30
MPEG2-ts用dgindex,avc-ts用dgnv,没有n卡用LwLibavVideoSource,都是非常好的source
tfm+tdecimate是做ivtc的,qtgmc是做deinterlace的。如果你的源是24t的,做ivtc。如果源是30i的,做deinterlace
2015年07月25日 05点07分 15
@ykyx1090884 这个不懂,mode是什么的mode,满足mode条件后,hybrid=2得出什么帧率呢
2015年07月25日 13点07分
hybrid=2时要指定mode大于1,否则会出错。mode是什么不太清楚,其他的请参考 www.nmm-hd.org/doc/TIVTC 和该网址的外链
2015年07月25日 13点07分
hybrid是混合,例如30fps混合后变成24fps。赋值1或2,效果相同,但不能使用相同值的mode
2015年07月25日 13点07分
@ykyx1090884 好的,谢啦
2015年07月25日 22点07分
level 15
bunny844 楼主
DVD一般都是5烂2的,BD我不清楚
DVD要在镜像里找到vob文件并分辨出其中的主要视频文件,而BD则去找m2ts文件,TS文件就是其本身
没有N卡的用dgindex进行分析(在megui\tools\下),有N卡的用dgindexNX(需要破解)
dgindex分析vob文件,并且在分析前就可以对多段vob进行一起添加,整理好先后顺序,确认勾选上audio(一般是默认,不愿意分析提取就去掉),选择”save project and demux Video“进行分析
会得到若干文件,比如音频文件、d2v纯视频文件,索性文件等
AVS例子:
LoadPlugin("D:\software\Megui\tools\dgindex\DGDecode.dll")
DGDecode_mpeg2source("D:\Temp\Megui\140527てもでもの涙 (松冈 森保)\140527.d2v", info=3)
tfm().tdecimate()
——这个例子默认为5烂2的交错类型
dgindexnx得到的不是d2v,而是dgi,别的没看出有啥区别
DGSource("aa.dgi")
qtgmc(preset="fast",fpsdivisor=2)
——这个例子默认为帧帧烂的交错类型。qtgmc默认翻倍,如果视频源是29.970的话,fpsdivisor=1就是49.940(可以省略不写,默认为1),fpsdivisor=2就是回到29.970
至于哪个好么,我不清楚,反正如果是寻常番组的话,我肯定会写2,如果是水着PV的话,我肯定会写1……
2015年07月25日 06点07分 16
59.940
2015年07月25日 09点07分
@787633258 的确,我乘错了,谢谢
2015年07月25日 09点07分
@亲亲我猴 不是ts本身有错,就是dgindex不支持你这个ts的视频格式;而你又没有N卡的话,那就只能用LWL了
2016年09月04日 12点09分
@亲亲我猴 另外明明置顶的置顶有更新版,还带图文说明的
2016年09月04日 12点09分
level 15
bunny844 楼主
另外不管是DVD还是TS,都会遇到另一个视频比率问题,sar值
体现在于播放的时候看起来是16:9,而查看视频信息则是4:3
比如看起来是1920:1080的,视频信息是1440:1080
再比如看起来是848:480的,视频信息是640:480
sar有正规的处理方法,有一行公式
源高x目标比率(比如16:9)=源宽xSAR
1080x16/9=1080xSAR,求SAR的值(以分数表示)
这个我真的不在行,所以不多说了
我说的是另一个变通方法——但前提记得这个方法是错误的处理方法
就是在AVS里强行更改为视觉尺寸,好处是配字幕时不用再考虑比例问题了——16:9的字幕在4:3的视频里,字体的视觉效果会被压扁,受影响的应该还不止这个
坏处是增大了码率,很多信息点都是被计算出来的
强调一下,这是个错误地方法,虽然我一直都是这么干的……
2015年07月25日 06点07分 17
忘了说了,先反交错,再改尺寸
2015年07月25日 06点07分
level 15
bunny844 楼主
最后说一下加logo的问题
对于刚接触megui和avs的人来说就要加logo,只能说无知者无畏了
我刚接触的时候也有过这个念头,但也只是研究尝试了随意玩玩
用avs当然可以加,但这个方法太复杂了,教一个相对简单很多的
https://tieba.baidu.com/p/2706704635
用外挂的方式内嵌静态图片logo,Vmoe组的大神们玩起特效来可是很厉害的!
2015年07月25日 06点07分 18
@by_心动 有,很难,不会
2016年07月01日 22点07分
level 15
bunny844 楼主
我觉得差不多了
坐等真·大神们修正,如果觉得没什么大问题的话还请直接置顶
总是回答同样的问题,的确没什么耐心了
2015年07月25日 06点07分 19
2015年07月25日 06点07分
level 15
bunny844 楼主
补充两点有关AVS的运用
AVS是按照顺序来进行的
比如必须先写VSFilter.dll再写TextSub
反过来则报错,不能加字幕,认不出什么是TextSub
另外关于#的运用
“#”之后所有的文字都不会系统读取,比如你可以在“#"后写“国足解散”
#可以作为备注,或暂时不被加载来对比效果等
看如何活用了
2015年07月25日 06点07分 20
似乎avs读到return cilp 就不会往下读,前段时间我遇到过
2015年07月25日 13点07分
@787633258 avs是逆向求数据,return做为输出接口从这里向上方语句请求数据。
2015年07月26日 07点07分
@sherry22422 学习到了,感谢
2015年07月26日 09点07分
level 8
关于3楼的 “fpsnum=30000,fpsden=1001”
fpsnum= fps numerator帧率分子
fpsden= fps denominator帧率分母
24000/1001约等于23.976
30000/1001约等于29.970
60000/1001约等于59.940
[url]http://参考资料: http://avisynth.nl/index.php/FPS[/url]
2015年07月25日 13点07分 21
这个补充的好,学到了,谢谢
2015年07月25日 13点07分
1 2 3 4 尾页