当前位置: 主页 > 处理视频 > 视频转换教程 > 用AVS快速高效地将DVD压制为RMVB(2)

用AVS快速高效地将DVD压制为RMVB(2)

2008-12-22   互联网 / 未知 点击: 标签:rmvb AVS
  

(二) 合成
1
LoadPlugin("VSFilter.dll")
LoadPlugin("mpasource.dll")
video=AVISource("c:\1.avi",false).TextSub("c:\logo.ssa").VobSub("c:\1.idx").Lanczosresize(512,384) #定义了avi源、字幕、水印和画面大小
audio=mpasource("c:\1.mp3") #音频
AudioDub(video, audio)

为简便起见,以avi文件为例说明语法,但此例不推荐用,直接用压缩软件+ffdshow设置即可。原始avs加载了至少3个额外的滤镜,已略去!

该方法可以用于双语DVDRIP的压制,使用双语处理的软件提取自己要的声道即可,而不要再合并成avi了!

DTS音轨格式的可以用这个avs法压制
先根据中高级教程里的方法将DTS音频转换成wave格式,如放在e:\avi\目录里
avs可以这么写:
LoadPlugin("VSFilter.dll")
video=AVISource("c:\1.avi",false).TextSub("h:\avs\jrvs.ssa").VobSub("e:\avi\t1.idx")
audio=WAVSource("e:\avi\t1.wav")
AudioDub(video, audio)
如此可以不用再合并那么费事了!


2
LoadPlugin("VSFilter.dll")
b=directshowSource("e:\avs\cd1.avi").TextSub("e:\BBSLogo\logo.ssa").VobSub("e:\avs\cd1.idx").Lanczosresize(608,320)
c=directshowsource("e:\avs\cd2.avi").VobSub("e:\avs\cd2.idx").Lanczosresize(608,320)
final=b+c
return final
这个语法很好,直接将多CD的压制成一个rmvb,可以在一定程度上解决单CD码率过度错位。如分别1pass压制CD1和CD2可能会由于码率错位太大而使文件增大,但如果2个一起压制,则可能由于码率补偿,平均码率错位反而不大,而使文件大小减小。
请注意,这里自己可以将水印放在CD1上,而CD2不会显示(说明什么?呵呵!)

一般DTS的都要2CD以上,有时影片长度也不长,所以DTS的电影可以这么写avs压制
LoadPlugin("VSFilter.dll")
video=AviSource("e:\cd1.avi",false).Vobsub("e:\cd1.idx").TextSub("c:\logo.ssa")+AviSource("e:\cd2.avi",false).VobSub("e:\cd2.idx")
audio=wavSource("e:\cd1.wav")+wavSource("e:\cd2.wav")
AudioDub(video, audio)


3
双语的vcd分成单语来做
LoadPlugin("VSFilter.dll")
video=DirectShowSource("F:\mpge\*.dat").Levels(0,1.7,255,0,255).LanczosResize(480,360)
return GetChannel(video,2)

1 left channel
2 right channel ,一般是国语

据说这里的*.dat表示成批压制!

如果要求控制帧率,那么有句改成这个
video=DirectShowSource("F:\mpge\*.dat",fps=25)

4,双语rmvb的制作
a,双语DVDRIP压制成双语的rmvb
先用AVIMux_GUI来处理音频。右键点击提示另存为mp3即可
对于喜欢压制rmvb而门外与DVDRIP压制的朋友建议使用AVIMux_GUI来处理音频,更显轻松合理。

avs语法如下:

LoadPlugin("VSFilter.dll")
LoadPlugin("mpasource.dll")
video=AVISource("c:\1.avi",false).TextSub("c:\logo.ssa").VobSub("c:\1.idx")
R=MPASOURCE("e:\R.MP3")
L=MPASOURCE("e:\L.MP3")
stereo = MergeChannels(R,L)
return AudioDub(video, stereo)

双语VCD-rmvb的压制
avs语法如下
LoadPlugin("VSFilter.dll")
video=DirectShowSource("F:\mpge\*.dat").Levels(0,1.7,255,0,255).LanczosResize(480,360)
stereo=GetChannel(video,1,2)
return AudioDub(video,stereo)
注:不过双语VCD-rmvb可以直接使用压缩软件进行制作,声音码率使用44k以上的立体声即可。我这里是想加大点亮度,那么同时就放大、水印一起来好了,呵呵!

以上都是avi,都可以自动关联ffdshow,所以亮度可以在ffdshow里设置!但请同时去掉ffdshow的字幕和avisynth功能

顶一下
(0)
0%
踩一下
(1)
100%
精彩推荐