视频压制中,字幕属性(字体,颜色,位置等)设置。

1#    liangchai2008    
2009-11-6 22:32
首先看下ass字幕的基本格式:



ASS文件主要由三大部分组成:[Script Info]部分,[v4+ Styles]部分和[Events]部分,可能大家会看到有ASS和SSA两种字幕,它们只是采用了不同的标准,SSA采用V4标准,而ASS采用V4+标准,只是主要是参数顺序不同,它们的具体区别这里不讨论。

[Script Info]部分

最重要的两项是PlayResX和PlayResY,它实际上是按给定的PlayResX和PlayResY数值将屏幕按比例化分,屏幕的左上角坐标为(0,0),右下角坐标为(PlayResX数值,PlayResY数值).


[v4+ Styles]部分

Name -------给style一个唯一的名称,供[Events]部分引用指定style,如图中的Default,在[Events]使用*Default引用这一style。
Fontname -------所使用的字体
华文仿宋 楷体 等
大家可以看自己系统中的字体,XP下的系统字体在:C:\WINDOWS\Fonts。
Fontsize -------字体大小
PrimaryColour -------主要颜色(字幕的主要颜色)

&Hffffff   白  &H8080ff   浅红   
&H000000   黑  &H80ffff   浅黄   
&H0000ff   深红   &HFF8000   亮蓝
&H00ffff   深黄   &H80ff00   浅绿
&Hff0000   深蓝   &H00ff00   亮绿
&H008000   深绿   &Hff00ff   紫红(偏紫)
&H0080ff   橙  &H8000ff   紫红(偏红)
&Hff0080   紫  &Hffff00   浅蓝

SecondaryColour -------次要颜色(卡拉OK中变为的颜色)
OutlineColor -------字幕边框颜色(SSA为TertiaryColour)
BackColour -------阴影颜色
Bold -------粗体(0为关闭,-1为开启)
Italic -------斜体(0为关闭,-1为开启)
Underline -------下划线(0为关闭,-1为开启)
Strikeout -------删除线(0为关闭,-1为开启)
ScaleX -------横向缩放(默认是100就是100%的意识如果要变为原来的%20就是20)
ScaleY -------纵向缩放 (和ScaleX一样)
Spacing -------每个字间的距离   
Angle -------旋转
BorderStyle-------边框样式
Outline -------边框宽度
Shadow -------阴影距离
Alignment -------字幕出现的位置

   左 中 右
上 7 8 9
中 4 5 6
下 1 2 3
MarginL MarginR -------字幕距左右两边的距离,分别在右对齐,左对齐,时无效
MarginV -------字幕高度 下对齐时表示到底部的距离    上对齐时表示到顶部的距离    中对齐时无效
Encoding -------编码方式
134=GB2312(简体中文)136=CHINESEBIG5(繁体中文)1=DEFAULT(字幕自己选择)


[Events]部分

这部分参数没什么可讲的。我附件中有网上找来更详细的教程,有兴趣的可以看下,发这个帖子主要目的是解决一下bewarm 在帖子“[已经解决] 关于压制视频时添加字幕的问题”最后提出的字幕位置调整问题。


另外说下,如果只有srt字幕要在压制时做出ass的效果,可以编写与srt文件同名的style文件:





a.avs:


LoadPlugin ("E:\Program Files\AviSynth 2.5\plugins\VSFilter.dll")
DirectShowSource("E:\娱乐\视频\MV\高清视频\720\加州旅馆--Hotel California\加州旅馆--Hotel California.720p.mkv")
TextSub ("E:\娱乐\视频\MV\高清视频\720\加州旅馆--Hotel California\Hotel California.720p.srt")


Hotel California.720p.srt.style:


ScriptType: V4.00+
PlayResX:640
PlayResY:360
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,华文仿宋,20,&H00FFFFFF,&H00838383,&H00804000,&H005E5E5E,-1,0,0,0,100,115,0,0.00,1,3,2,2,10,10,10,1


2#    liangchai2008    
2009-11-7 08:34
主楼附件没贴好,这里再传下。
3#    小蚊子121    
2009-11-7 09:00
如果只用会声会影怎么做呢?
4#    liangchai2008    
2009-11-7 09:06
回复 3# 小蚊子121
会声会影我没用过,应该支持AVS脚本吧?
5#    小蚊子121    
2009-11-7 09:08
回复 4# liangchai2008


    我现在在用会声会影 哎 自己摸索吧 你如果有好的技巧帮忙告诉一下谢了 --
6#    萧萧2000    
2009-11-7 11:25
首先看下ass字幕的基本格式:
liangchai2008 发表于 2009-11-6 22:32

好专业,赞一下~
这个是用什么软件做的?
7#    liangchai2008    
2009-11-7 11:49
好专业,赞一下~
这个是用什么软件做的?



ass字幕只是文本文件,用记事本按格式写就行。avs脚本除了记事本,还得安装AviSynth 2.5支持,如果要从avs中为视频加字幕,还得有字幕加载插件VSFilter.dll。


avs脚本主要用途:


(1)视频转换软件不支持某些视频格式输入时,可以使用AVS脚本将视频由系统默认解码器解码后实时输入到视频转换软件,视频转换软件将认为它打开的是标准AVI视频。


(2)视频转换软件某些功能不能满足要求,比如MediaCoder对ass字幕支持不好,我们就可以使用avs的VSFilter.dll插件加载ass字幕。


顺便说下,会声会影在视频特效方面做得不错,但在视频压制方面不是很好。如果是做高清视频转换我比较喜欢用Canopus Pro Coder。
8#    bewarm    
2009-11-7 12:29
ass字幕只是文本文件,用记事本按格式写就行。avs脚本除了记事本,还得安装AviSynth 2.5支持,如果要从 ...
liangchai2008 发表于 2009-11-7 11:49

赞技术帝
不过用ffdshow压出来的视频质量比直接用mc压出来的稍微差一点
还有,一个如果视频是一个MP4的话,final codec播放器打不开avs...
9#    liangchai2008    
2009-11-7 12:50
回复 8# bewarm


ffdshow要求CPU比较高,参数太多,我还是喜欢MC的CUDA编码。MP4后缀的文件我这都能通过AVS加载。你的MP4直接播放正常吧?


 MP4播放器所支持的编码格式可以说是“乱中之乱”,除了PMC,由于硬件平台的没有统一的标准,软件系统也是由厂商自行设计,这是造成MP4播放器的解码兼容性和解码稳定性参差不齐的根本原因;另外,由MPEG-4编码体系洐生出来的格式很多,除PMC之外的MP4,解码兼容性和硬件有关,这就大大增加了解码的难度,视频格式本来就多例如AVI,ASF,MPG,WMV,再加上编码算法也多:MPEG-1,MPEG-2,MPEG-4,而大多MP4播放器所支持的MPEG-4编码,又有多种衍生的编码算法:DivX、XviD、H.263、 MS MPEG-4 3688 、 Microsoft Video1 、Microsoft RLE。
10#    bewarm    
2009-11-7 13:12
回复bewarm


ffdshow要求CPU比较高,参数太多,我还是喜欢MC的CUDA编码。MP4后缀的文件我这都能通过AV ...
liangchai2008 发表于 2009-11-7 12:50



对了那个cuda mencoder怎么加载才能成功,每次用都说错误的CUDA H.264参数
能上个截图吗?
跳转到第 Go