關(guān)于在影片里加入圖片:
這個,就算是為我那個字幕教程中一直沒有解決的關(guān)于加載圖片的問題的回答吧。
首先,我要說的是:利用SSA或ASS來加載圖片,對圖片格式有著很嚴格的要求,好像是要求圖片要是“binary format”的,binary format是什么東西我也搞不清楚了(慚愧慚愧)...
然后,繼續(xù)剛才的話題,加載圖片,其實也可以通過VirtualDub/VirtualDubMod來實現(xiàn):具體操作就是在Video選單中選擇Filter然后Add,選擇其內(nèi)置的那個Logo濾鏡,[圖1]然后加載你想要的圖片(*.BMP或*.TGA格式),里面有些簡單的設(shè)置,我就不再一一說明了,只需要注意一點,如果要對加載的圖片設(shè)置Alpha值(透明度),首先要把影片的色彩空間改成RGB32。[見圖2]
接著,就是我這帖主要想說的內(nèi)容了:剛才說利用VD/VDM內(nèi)置的LOGO濾鏡就能完成圖片加載,但是有一個遺憾就是——VD/VDM不能進行REAL的編碼操作,所以要是有朋友想在壓制REAL格式時添加圖片LOGO就不能用VD/VDM內(nèi)置的濾鏡了。要解決這個問題也不難,利用***S和外置的VD濾鏡logo.vdf就能實現(xiàn)在***S中加載圖片,然后再壓制這個***S就能達到目的。
先給一個簡單的***S腳本的例子:
--------------------------------------------------------------------------------------------------
######################定義LOGO.VDF所在文件夾########################
global VirtualDub_plugin_directory = "E:\DVD2RM\Filter"
##########################加載待處理的影片##########################
***ISource("[OP][Memories Off 想い出にかわる君][Replaymachine].avi")
############################定義“VD_Logo”函數(shù)####################
function VD_Logo(clip clip, int "x", int "y", int "alpha", bool "transparent",
\ int "xr", int "xg", int "xb", int "tolerance", string "filename",
\ bool "animate", int "start", int "duration", int "loops",
\ int "fadeinlen", int "fadeoutend", int "fadeoutlen")
{
LoadVirtualdubPlugin(VirtualDub_plugin_directory+"\logo.vdf", "_VD_Logo", 1)
return clip._VD_Logo(default(x,0), default(y,0), default(alpha,128),
\ default(transparent,true)?1:0, default(xr,0), default(xg,0), default(xb,255),
\ default(tolerance,0), default(filename,VirtualDub_plugin_directory+"\Gundam SEED.bmp"),
\ default(animate,false)?1:0, default(start,0), default(duration,0), default(loops,0),
\ default(fadeinlen,0), default(fadeoutend,200), default(fadeoutlen,0))
}
###########################調(diào)用VD_Logo函數(shù)#########################
ConvertToRGB()
VD_logo(480, 10, 255, true, 255, 255, 255, 70, "Memories Off.bmp", true, 70, 0, 0, 50, 243, 50)
##################################################################
--------------------------------------------------------------------------------------------------
上面這個***S例子中的注釋已經(jīng)說明了該腳本各部分的作用了,下面我再對VD_Logo函數(shù)的參數(shù)再具體說一下:
function VD_Logo(clip clip, int "x", int "y", int "alpha", bool "transparent",
\ int "xr", int "xg", int "xb", int "tolerance", string "filename",
\ bool "animate", int "start", int "duration", int "loops",
\ int "fadeinlen", int "fadeoutend", int "fadeoutlen")
這個是在函數(shù)定義時聲明的格式,從中我們可以看到其中每個參數(shù)的具體含義,為了更形象,我還是在例子中說明:
-------------------------------------------------------------------
VD_logo(480, 10, 255, true, 255, 255, 255, 70, "bz.bmp", true, 20, 0, 0, 50, 243, 50)
480,10:
圖片出現(xiàn)在影片中的X、Y坐標位置;
255:
圖片的ALPHA值,即透明度,0為透明,255為不透明,變化范圍:0--255 (這個跟SSA字幕中剛好相反)
true, 255, 255, 255, 70:
設(shè)置圖片的透明通道: true/false 打開/關(guān)閉此功能;255, 255, 255 分別對應(yīng)紅(R)、綠(G)、藍(B)三色;7 為容差我理解為一些圖像處理軟件中(如PS)閥值的設(shè)定;本例中因為我使用的圖片的背景是白色的,而我不想要這個白色背景,所以用白色透明通道使其變?yōu)橥该魃耍?nbsp;
"bz.bmp":
這個沒什么多說的,就是我加載的圖片,(注意如果圖片跟***S不在同一目錄下,要把其全路徑都寫下來);
true:
這個true/false是用來打開序列的靜態(tài)圖片組成的動態(tài)效果的設(shè)置,序列圖片就是這樣的形式:Recu0001.bmp ,Recu0002.bmp ,Recu0003.bmp .....RecuXXXX.bmp,只要打開了動態(tài)效果,那么***S就會自動地從第一張圖片開始加載這個圖片序列;
20:
圖片出現(xiàn)時所在影片的幀數(shù);
0:
原函數(shù)定義為int "duration",持續(xù)時間(是針對圖像序列每張圖片持續(xù)的時間);
0:
原函數(shù)定義為int "loops"為循環(huán)次數(shù)(針對對圖像序列);
50:
定義為淡入動作所持續(xù)的幀數(shù)長度;
243:
圖片消失時所在影片的幀數(shù);
50:
定義為淡出動作所持續(xù)的幀數(shù)長度;
-------------------------------------------------------------------
以上就是所有參數(shù)的具體含義。
另外,在使用的時候的注意事項:
因為圖片只能在RGB色彩空間進行加載,所以必須使用ConvertToRGB()來轉(zhuǎn)換色彩空間;
加載圖片時必須保證是24位色的位圖(*.BMP),并