『漫游』酷论坛>『影音数码技术学习交流』>[知识]AVS加载LOGO图片 ..
[知识]AVS加载LOGO图片淡入淡出的办法
jiu9wz@2010-03-15 21:48
V=DirectShowSource("F:\压缩临时\周杰伦&袁咏琳-画沙.vob").converttorgb32()
V2=ImageReader("logo1.png").converttorgb32()
V3=ImageReader("logo2.png").converttorgb32()
t1=v2.mask(v3).FadeIO(25)
F1=V1.trim(0,249)
F2=V1.trim(250,501).Layer(t1,"add",255,632,1)
F3=V1.trim(476,0)
Video=F1+F2+F3
return Video
以上代码是我加载LOGO的,但是遇到一个问题!FadeIO(25) 代码的淡出效果失败了,只有淡入,没有淡出哦。不知道那位朋友可以指点我一下啊!!我试过好多办法,也知道VD可以实现,但是我需要的是AVS的哦,而在AVS中我也通过修改Layer(t1,"add",255,632,1)的透明度实现,但是这个办法太麻烦了,得一帧一帧的修改,太罗嗦了修改Layer(t1,"add",255,632,1)透明度的办法如下:
a01=V1.trim(250,475).Layer(V2,"add",255,632,1)
a02=V1.trim(476,477).Layer(V2,"add",238,632,1)
a03=V1.trim(478,479).Layer(V2,"add",224,632,1)
a04=V1.trim(480,481).Layer(V2,"add",204,632,1)
a05=V1.trim(482,483).Layer(V2,"add",189,632,1)
a06=V1.trim(484,485).Layer(V2,"add",168,632,1)
a07=V1.trim(486,487).Layer(V2,"add",147,632,1)
a08=V1.trim(488,489).Layer(V2,"add",126,632,1)
a09=V1.trim(490,491).Layer(V2,"add",105,632,1)
a10=V1.trim(492,493).Layer(V2,"add",84,632,1)
a11=V1.trim(494,495).Layer(V2,"add",63,632,1)
a12=V1.trim(496,497).Layer(V2,"add",42,632,1)
a13=V1.trim(498,499).Layer(V2,"add",21,632,1)
a14=V1.trim(500,501).Layer(V2,"add",0,632,1)
我在想,AVS有没有倒着播放的插件呢?如果有的话,既然淡入可以使用,那么我们是不是可以把淡入倒着播放就能实现淡出?而这样的插件如何使用?
又或者可有人知道AVS开发团队的朋友,可以向他们请教吗?为何FadeOut的作用会失败?要如何才能是FadeOut的作用正常发挥出来呢!..........
我曾在安装一个软件“歌词字幕转换制作专家”时遇到提示某个系统文件过旧,询问我是否更新,我选择了是,然后发生一件事,FadeOut对源文件是视频的有效了,但是当加载图片LOGO时仍旧无效,让我郁闷了很久啊!
希望有兴趣的朋友能多多发表意见,也许我们之间能相互学习找到办法!如果您知道怎么做,那就更好不过了。
jiu9wz@2010-03-15 22:57
虽然没有人回答,但是我还是找到原因了,也许是运气,也许是我思考的回报!
解决办法如下:
V=DirectShowSource("F:\压缩临时\周杰伦&袁咏琳-画沙.vob").converttorgb32()
V2=ImageReader("logo1.png").converttorgb32()
V3=ImageReader("logo2.png").converttorgb32()
t1=v2.mask(v3).trim(0,251) .FadeIO(25)
F1=V1.trim(0,249)
F2=V1.trim(250,501).Layer(t1,"add",255,632,1)
F3=V1.trim(476,0)
Video=F1+F2+F3
return Video
仅仅是在FadeIO(25)的前面加上一个裁剪代码!为何呢?
我在思考的时候想过如果把需要加载的图片做成带透明通道的AVI的办法,于是我将图片写成了单独的AVS文件,
V2=ImageReader("logo1.png").converttorgb32()
V3=ImageReader("logo2.png").converttorgb32()
t1=v2.mask(v3)
return t1
于是我播放这个单独的图片视频,发现竟然有41秒那么长,呵呵,问题就出在这儿!
我们原先是先做了淡入淡出再覆盖到视频上的,可是一般的LOGO都不会显示41秒那么长,于是淡出的部分就被取消了覆盖,像我们上面的LOGO,只显示了10秒,相对于41秒来说是不是后面的31秒就没有显示了!
当然,在后面的淡出也就看不到了!
那么我们就先裁剪出10秒(LOGO显示多少秒就裁剪多少秒)再做淡入淡出吧,这样就......
呵呵成功了,
淡入淡出都出来了!当然,你还得装我前面提到的那个字幕软件,并且在提示你是否更新系统文件时选择是!!!安装完之后你就可以卸载掉那个软件了,我们的目的在于更新那个系统文件,而不在于那个软件本身!
如果你觉得我的知识对你有用,那就帮顶一个吧,我没什么要求了。
| TOP