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

AVS如何加logo?

楼层直达
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
格式是gif,请问怎样加?
级别: 侠客
注册时间:
2003-02-19
在线时间:
0小时
发帖:
659
只看该作者 1楼 发表于: 2004-03-25
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 2楼 发表于: 2004-03-25
xlogo只支持BMP
级别: 骑士
注册时间:
2003-08-12
在线时间:
1小时
发帖:
957
只看该作者 3楼 发表于: 2004-03-26
花园有tct66的教程
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 4楼 发表于: 2004-03-26
引用
最初由 堕天地狱 发布
花园有tct66的教程


都是bmp的
级别: 版主
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2803
只看该作者 5楼 发表于: 2004-03-27
想了一下.....
试试directshowsoucre() converttoyv12() 加 loop()
然后再resize, overlay到画面上..........
具体细节看avs的说明书吧.......

live id: liusu119@hotmail.com
email: liusu119@gmail.com
级别: 骑士
注册时间:
2003-08-12
在线时间:
1小时
发帖:
957
只看该作者 6楼 发表于: 2004-03-27
引用
最初由 Kyo.Tokio 发布


都是bmp的


有動態的
不過要先將gif轉成AVI
级别: 版主
注册时间:
2002-12-02
在线时间:
0小时
发帖:
3002
只看该作者 7楼 发表于: 2004-03-27
還是建議调用 Logo.vdf 這個是 VirtualDub 的插件

至於 Xlogo.dll 這個插件
自己用的結果始終不成功,也搞不清楚問題所在 ?? (試了幾個圖檔,所以也不知是否為其要求較嚴格)

所以此時可用 Logo.vdf 試試,其參數有較完整的控制

花園 ZhenGod 有教學

级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 8楼 发表于: 2004-03-27
引用
最初由 weilai 发布
還是建議调用 Logo.vdf 這個是 VirtualDub 的插件

至於 Xlogo.dll 這個插件
自己用的結果始終不成功,也搞不清楚問題所在 ?? (試了幾個圖檔,所以也不知是否為其要求較嚴格)

所以此時可用 Logo.vdf 試試,其參數有較完整的控制

花園 ZhenGod 有教學


weilai,我要强调VirtualDub 的插件只支持bmp,bmp只是
JPG、TIF、PNG等非无边的图片格式,GIF则可以无边的图片格式原理和AI、EPS、WMF、PDF、PSD一样。我做的是从AI转成GIF的,但不是动态图片,只是图片边缘不是正方形或长方形的(比如说是圆形,像你的头像一样,但不是动态,而是静态),所以Logo.vdf是不可行的。还有Xlogo也是只支持BMP,这个也可以否决。
级别: 骑士
注册时间:
2003-08-24
在线时间:
1小时
发帖:
938
只看该作者 9楼 发表于: 2004-03-27
引用
最初由 skywalker 发布
想了一下.....
试试directshowsoucre() converttoyv12() 加 loop()
然后再resize, overlay到画面上..........
具体细节看avs的说明书吧.......


skywalker君请详细说说吧,说到avs我真是不怎么会。
比如说我有一个1.gif的图片,路径是c:\1.gif,size是200X80 px,想在video的第六秒-第10秒之间持续出现4秒、淡入淡出等效果,坐标是(500,200),那应该怎样写,请详细说说。
级别: 版主
注册时间:
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
级别: 版主
注册时间:
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
只看该作者 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
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
只看该作者 14楼 发表于: 2004-03-28
那提高tolerence 不行吗?

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

限150 字节
上一个 下一个