- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
VCB-Studio教程06:VapourSynth基础与入门
0.前言
BDRip压制的核心是批处理,会使用avs/vs对片源做预处理,是一个动漫ripper的入门。历史上,AviSynth是最早成体系的,为动漫Rip设计的非编。而VapourSynth在2014年初基本完善可用,现在逐步替代AviSynth。
想学习的人都会碰到这个问题:如果我只学一个,我该学哪个?如果我两个都学,我需要先学哪个?解答这个问题就需要先对比一下avs和vs的优劣:
avs落后,vs先进;
avs教程多,vs教程少;
avs支持广,vs支持窄;
avs不规范,vs规范;
avs入门简单,深入难,vs入门难,深入简单
……
VCB-Studio系列教程选择先介绍VS,原因在于,VS是现在vcb-s的主要产能,而且vs的规范性使得介绍基础知识的时候,更容易让初学者理解和掌握。
VapourSynth主页:/
官方使用文档:/doc/
在线词典:/
1.简单的vs脚本
在之前的教程中,我们有给过例子:
importvapoursynthasvs
importsys
importhavsfuncashaf
importmvsfuncasmvf
core=vs.get_core(threads=8)
core.max_cache_size=2000
source=00001.m2ts
ripped=SymphogearVol1-1.mkv
src16=core.lsmas.LWLibavSource(source,format=yuv420p16)
rip16=core.lsmas.LWLibavSource(ripped,format=yuv420p16)
res=core.std.Interleave([src16,rip16])
res=mvf.ToRGB(res,full=False,depth=8)
res.set_output()
作为Python的一个扩展,vs脚本本质上是Python的脚本。在最开始我们需要载入(import)各种库,除了必须的VapourSynth核心,还有mvf(mavensVapourSynthfunctions)和haf(holysVapourSynthfunctions)
core=vs.get_core(threads=8)
core.max_cache_size=2000
这两句是载入vs运行环境,并且指定最大使用线程数和内存(MB)
接下来的部分,vs主要依赖赋值语句完成。一个赋值语句的格式为:
变量=表达式
比如source,ripped,src16,res等就是变量。Python的变量不需要声明,自动会判断是视频系列(clip),整数(int),还是字符串(string)等类型。
表达式,则有多种形式:
.直接赋值,比如source=00001.m2ts,debug=True,res=dbed这种直接用值来给定的,值可以是具体的数值,值可以是具体的数值,也可以是其他的变量(比如res=dbed,dbed就是另一个变量);
.简单运算,比如strength=80/100,output_depth=debug?8:10这样的运算;
这里详细讲一下表达式A?B:C的计算。A叫做判断式,必须是一个布尔类型的表达式(只有True/False,或者1/0),B和C则是可能返回的值。
x=A?B:C等效于if(A)x=B;elsex=C;如果A成立,则x赋值为B,否则x赋值为C
比如说:
False?0:1返回的是1,因为判断式不成立,所以返回两个值中的后者
debug?8:10如果debug是True/1,则返回8,否则返回10
x10?10:x100?100:200是一个嵌套性的语句;拆开来看:
if(x10)return10;
elseif(x100)return100
elsereturn200
当x小于10的时候,返回10;当x在10-99的时候,返回100,否则,返回200
.函数赋值,res=core.std.Interleave([src16,rip16]),这句就是调用core.std.Interleave()这个函数,输入src16和rip16(严格来说,是它们用[]运算符,运算而出的结果,那就是它们的顺序组合),作为输入变量,来计算一个新的值。
最后,vs的输出,通过set_output()来完成。res.set_output()就是输出res这个值。
2.VS函数的调用
可以想
您可能关注的文档
- 74443-74444-LX3000e-User使用操作说明书手册-EN.pdf
- Cipherlab_RK25_Mobilcomputer_Aussendienst_EN_Part2使用操作说明书手册.pdf
- 21.施耐德伺服驱动-LXM32产品目录.pdf
- QuickScan_QD2300_EN操作说明书手册.pdf
- AfiniaLabel-L901-User使用操作说明书手册.pdf
- Magellan_800i_EN操作说明书手册.pdf
- 8200_用户操作说明书手册.pdf
- CipherLab_1600_EN使用操作说明书手册.pdf
- Magellan_1100i_EN操作说明书手册.pdf
- 8300_用户操作说明书手册.pdf
- [VCB-Studio][教程11]编码器参数研发方法.docx
- [VCB-Studio][教程19]AVS的多线程优化-MPP的使用.docx
- 药品研发与技术审评沟通交流办法.docx
- 生物制品注册分类及申报资料要求(试行).docx
- [VCB-Studio][教程10]x265 2.9参数设置.docx
- [VCB-Studio][教程27]8bit 低码率制作技巧.docx
- BSR-用户操作说明书手册-Datalogic-AV500-AV900-leistungsstarke-2D-Imager-EN.pdf
- oki-pro9000-使用操作说明书手册.pdf
- OKI-Pro-1050_使用操作说明书手册.pdf
- Zebra_TC70x_TC75x_使用操作说明书手册_Android_6.0_EN.pdf
最近下载
- 2024年广东省中学生生物联赛试题及答案解析.pdf
- 自动控制原理课后答案.pdf VIP
- 全国事业单位联考(A类综应)含解析.pdf VIP
- 《基于价值链理论的成本管理研究》.docx VIP
- 《土地的誓言》ppt课件.pptx VIP
- 中考语文说明文阅读专题训练练习题及答案及解析.doc VIP
- 水产品中兽药残留现状及检测分析研究进展.doc
- 2025年中考语文复习:小说答题技巧+练习题(含答案解析).pdf VIP
- 湖北省武汉市部分学校2024-2025学年高三上学期九月调研考试数学试卷 Word版含解析.docx
- 2025年全国高考体育单招考试语文卷试题真题(含答案).docx VIP
文档评论(0)