搜索 社区服务 统计排行 帮助
  • 2193阅读
  • 23回复

AVS如何加logo?

楼层直达
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
格式是gif,请问怎样加?
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 23楼 发表于: 2004-03-29
引用
最初由 skywalker 发布


上面有很多参数.........
你说的是哪一个..........??

成功是指已经可以成功的fadein fadeout了吗?


上面的大部分都不明白,麻烦你一一解答(我有时间等>_
是,已经成功了
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 22楼 发表于: 2004-03-29
引用
最初由 Kyo.Tokio 发布


sky,现在已经成功完成test,但我想问一下上面的参数是什么意思,能详细说明一下吗?


上面有很多参数.........
你说的是哪一个..........??

成功是指已经可以成功的fadein fadeout了吗?

live id: liusu119@hotmail.com
email: liusu119@gmail.com
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 21楼 发表于: 2004-03-29
引用
最初由 skywalker 发布
function Logosimple(clip clip, clip top,int startFrame, int endFrame, int hor, int verticle, float blurthresh, int fadein, int fadeout)
{

Default (hor, 0)
Default (verticle, 0)
Default (fadein, 0)
Default (fadeout, 0)


top2=top.blur(blurthresh).blur(blurthresh).blur(blurthresh).RGBAdjust(255,255,255,1)
beg = clip.trim(0, startFrame-fadein-1)
Fin = clip.trim(startFrame-fadein, startFrame-1)
filter = clip.trim(startFrame,endFrame)
Fout = clip.trim(endFrame+1, endFrame + fadeout)
end = clip.trim(endFrame+fadeout+1,0)


overlayClip = top.trim(0, endFrame - startFrame)
overlayClipin = top.trim(0,fadein)
overlayClipout = top.trim(0,fadeout)
maskClipin = top2.trim(0,fadein)
maskClipout = top2.trim(0,fadeout)

maskClipout = maskClipout.FadeOut(maskClipout.Framecount())
maskClipin = maskClipin.FadeIn(maskClipin.Framecount())


filter = overlay(filter, overlayClip, x=hor, y=verticle,mask = top2, mode="blend", opacity=1,pc_range=true,output="yv12")
Fin = overlay(Fin, overlayClipin, x=hor, y=verticle,mask = maskClipin, mode="blend", opacity=1,pc_range=true,output="yv12")
Fout = overlay(Fout, overlayClipout, x=hor, y=verticle,mask = maskClipout, mode="blend", opacity=1,pc_range=true,output="yv12")


final = beg + Fin+ filter + Fout + end
return final

}


sky,现在已经成功完成test,但我想问一下上面的参数是什么意思,能详细说明一下吗?
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 20楼 发表于: 2004-03-29
第一个没有问题,第二个在谈出的时候出现边缘模糊的情况
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 19楼 发表于: 2004-03-28
淡入淡出的脚本.....
格式: logo, 起始,结束, x,y, 边缘控制,淡入的帧数, 淡出的帧数
Logosimple(top,500,600,100,100,0,100,100)


function Logosimple(clip clip, clip top,int startFrame, int endFrame, int hor, int verticle, float blurthresh, int fadein, int fadeout)
{

Default (hor, 0)
Default (verticle, 0)
Default (fadein, 0)
Default (fadeout, 0)


top2=top.blur(blurthresh).blur(blurthresh).blur(blurthresh).RGBAdjust(255,255,255,1)
beg = clip.trim(0, startFrame-fadein-1)
Fin = clip.trim(startFrame-fadein, startFrame-1)
filter = clip.trim(startFrame,endFrame)
Fout = clip.trim(endFrame+1, endFrame + fadeout)
end = clip.trim(endFrame+fadeout+1,0)


overlayClip = top.trim(0, endFrame - startFrame)
overlayClipin = top.trim(0,fadein)
overlayClipout = top.trim(0,fadeout)
maskClipin = top2.trim(0,fadein)
maskClipout = top2.trim(0,fadeout)

maskClipout = maskClipout.FadeOut(maskClipout.Framecount())
maskClipin = maskClipin.FadeIn(maskClipin.Framecount())


filter = overlay(filter, overlayClip, x=hor, y=verticle,mask = top2, mode="blend", opacity=1,pc_range=true,output="yv12")
Fin = overlay(Fin, overlayClipin, x=hor, y=verticle,mask = maskClipin, mode="blend", opacity=1,pc_range=true,output="yv12")
Fout = overlay(Fout, overlayClipout, x=hor, y=verticle,mask = maskClipout, mode="blend", opacity=1,pc_range=true,output="yv12")


final = beg + Fin+ filter + Fout + end
return final

}

live id: liusu119@hotmail.com
email: liusu119@gmail.com
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 18楼 发表于: 2004-03-28
引用
最初由 Nonebo 发布
top = directshowsource("s:\sub\a.grf",fps=23.976,audio=false)

这行他有说 cannot determine the duration of the video ..

我查看了一下 directshowsource 的文档, 并没有看到任何关于 周期的设置 ..


bmp的文件名是数字吗?
如果是字幕或其他的, directshowsource就会不认..........

引用
最初由 Kyo.Tokio 发布


请问这部分是否是淡入淡出设置?设置淡入时间、持续时间、淡入时间是那个参数?


这里只有淡入或淡出, 要淡入淡出持续时间的功能还没加入.......
先测试一下能不能工作.........
另外我看了一下.......
logo.vdf是可以去掉单色的背景的...........

我这个方法的优点是可以让使用者自己建立一个文件来决定哪一部分透明哪一部分不透明, 哪一部分透明多少............

live id: liusu119@hotmail.com
email: liusu119@gmail.com
级别: 侠客
注册时间:
2002-12-26
在线时间:
0小时
发帖:
366
只看该作者 17楼 发表于: 2004-03-28
是 fade out 和 fade in ?
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 16楼 发表于: 2004-03-28
引用
最初由 skywalker 发布


function Logosimple(clip clip, clip top,int startFrame, int endFrame, int hor, int verticle, float blurthresh, bool "fadeout")
{

Default (hor, 0)
Default (verticle, 0)
Default (fadeout, true)
Default (fadeout, 0)


top2=top.blur(blurthresh).blur(blurthresh).blur(blurthresh).RGBAdjust(255,255,255,1)
beg = clip.trim(0, startFrame-1)
filter = clip.trim(startFrame,endFrame)
end = clip.trim(endFrame+1,0)
overlayClip = top.trim(0,endFrame-startFrame)
maskClip = top2.trim(0,endFrame-startFrame)
maskClip = (fadeout == true) ? maskClip.FadeOut(maskClip.Framecount()) : maskClip.FadeIn(maskClip.Framecount())
filter = overlay(filter, overlayClip, x=hor, y=verticle,mask = maskClip, mode="blend", opacity=1,pc_range=true,output="yv12")
final = beg + filter + end
return final

}


请问这部分是否是淡入淡出设置?设置淡入时间、持续时间、淡入时间是那个参数?
级别: 侠客
注册时间:
2002-12-26
在线时间:
0小时
发帖:
366
只看该作者 15楼 发表于: 2004-03-28
top = directshowsource("s:\sub\a.grf",fps=23.976,audio=false)

这行他有说 cannot determine the duration of the video ..

我查看了一下 directshowsource 的文档, 并没有看到任何关于 周期的设置 ..
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 14楼 发表于: 2004-03-28
那提高tolerence 不行吗?

live id: liusu119@hotmail.com
email: liusu119@gmail.com
edl
级别: 风云使者
注册时间:
2003-01-24
在线时间:
155小时
发帖:
4649
只看该作者 13楼 发表于: 2004-03-28
忙事情好久没来POP技术区了,今天来,发现这个帖子,收获不小^^
不过偶问一个,很奇怪,每次我用AVS什么的导入图片,不管什么格式,本来想KEY掉的颜色,总是会剩下一些KEY不掉的..很让人郁闷,边界是很sharp的,都是PS做的绝对边界分明的图片,tolerance 数值设置为0。但是就是边界KEY不干净 T.T 。

http://weibo.com/edl945
http://3cnc.taobao.com

像小强一样…活下去…文能提笔控萝莉,武能床上定人妻;进可欺身压正太,退可提臀迎众基
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 12楼 发表于: 2004-03-28
最终解决方案........
只需要一个背景全黑的logo就行了......

top = directshowsource("55.grf",fps=23.976,audio=false) # 读入logo
#读入avi或其它主视频文件
avisource("xxx.avi")

#调用logo的脚本
Logosimple(top,fadeout=no, 10,200,100,100,0)


#logo 的主脚本 第一个是logo的名称 , 然后是起始帧, 结束帧, X轴, Y轴, 最后是边缘控制的强度. fadeout 是false的时候就是fade in, 反之则是fade out.
#边缘控制的强度是控制logo的边缘往外延伸的程度, 正常是0, 一般只有在logo内部有黑线的时候需要提高.

function Logosimple(clip clip, clip top,int startFrame, int endFrame, int hor, int verticle, float blurthresh, bool "fadeout")
{

Default (hor, 0)
Default (verticle, 0)
Default (fadeout, true)
Default (blurthresh, 0)


top2=top.blur(blurthresh).blur(blurthresh).blur(blurthresh).RGBAdjust(255,255,255,1)
beg = clip.trim(0, startFrame-1)
filter = clip.trim(startFrame,endFrame)
end = clip.trim(endFrame+1,0)
overlayClip = top.trim(0,endFrame-startFrame)
maskClip = top2.trim(0,endFrame-startFrame)
maskClip = (fadeout == true) ? maskClip.FadeOut(maskClip.Framecount()) : maskClip.FadeIn(maskClip.Framecount())
filter = overlay(filter, overlayClip, x=hor, y=verticle,mask = maskClip, mode="blend", opacity=1,pc_range=true,output="yv12")
final = beg + filter + end
return final

}

live id: liusu119@hotmail.com
email: liusu119@gmail.com
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 11楼 发表于: 2004-03-28
我已经发现原因了........
directshowsource只能读用数字命名的bmp,jpg(可能还有其它的)文件.....
比如123.bmp
用字母命名就不行了(奇怪).....
比如aaa.bmp
而且必须通过grf文件来读...........
奇怪的是gif文件用数字命名也读不了..........
现在继续研究中........


edit:
终于弄明白了.........
暂时我只试过bmp(有alpha channel 的好像可以更简单的做到, 不过我手上没有有alpha channel文件)........
一般来说背景是同一种颜色的比较好........
先把你要overlay的那段trim出来........
后面再用directshow source 来读.....
注意bmp文件名必须是数字......
用要graphedit先生成一个grf文件...........
在graphedit中去掉最后的video renderer.........

然后再自己创建一个mask文件, 就是刚才的那个, 不过要把中间图像的部分填上白色, 背景涂成黑色.........
用同样的方法建立一个grf文件.........

然后几用下面的avs script:

bg =avisource("xxx.avi").trim(xxx,xxx)

top = directshowsource("666.grf",fps=23.976,audio=false)
top2 = directshowsource("777.grf",fps=23.976,audio=false)

overlay(bg, top, x=50, y=20,mask = top2, mode="blend", opacity=1,pc_range=true,output="yv12")

测试用的文件:
http://www-personal.umich.edu/~liusu/test/overlay.rar

截图:



live id: liusu119@hotmail.com
email: liusu119@gmail.com
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 10楼 发表于: 2004-03-28
你先试试用directshowsource能不能读gif文件吧........
原来我是过是可以的........
不过后来avs升级到了现在的版本........
不能读取图片了, 也有可能是我哪里设定错了.......

你试试这个能不能读......
directshowsource("c:\1.gif",1,audio=false)

live id: liusu119@hotmail.com
email: liusu119@gmail.com
快速回复

限150 字节
上一个 下一个