TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua

 找回密码
 新人加入
查看: 7094|回复: 4
打印 上一主题 下一主题

[其他代码] ASS对白时间轴文件转TCAS (附完整工程) [复制链接]

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

跳转到指定楼层
楼主
发表于 2011-10-17 14:22:41 |只看该作者 |倒序浏览
完整工程: tcas_conv.rar
  1. from tcaxPy import *

  2. def tcaxPy_Init():
  3.     global _Fs
  4.     global Font
  5.     global FontOut
  6.     _FontFileName = GetVal(val_FontFileName)
  7.     _FaceID       = GetVal(val_FaceID)
  8.     _Fs           = GetVal(val_FontSize)
  9.     Font = InitFont(_FontFileName, _FaceID, _Fs, GetVal(val_Spacing), GetVal(val_SpaceScale), MakeRGB(255, 255, 255), 0, 0)
  10.     FontOut = InitFont(_FontFileName, _FaceID, _Fs, GetVal(val_Spacing), GetVal(val_SpaceScale), MakeRGB(0, 0, 0), 1, 0)

  11. def tcaxPy_Fin():
  12.     FinFont(Font)
  13.     FinFont(FontOut)

  14. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):

  15.     ASS_BUF = []
  16.     TCAS_BUF = []

  17.     ass_main(ASS_BUF, SubL(_start, _end), pos(_x, _y - _Fs) + color1('FFFFFF') + color3('000000') + bord(1), _txt)  # 对比

  18.     dx = _x - int(_a / 2 + 0.5)         # 一个固定操作, 将an5的坐标转换为an7
  19.     dy = _y - int(_Fs / 2 + 0.5)        # ASS特效默认采用an5坐标, TCAS特效则采用an7坐标

  20.     PIX_t = TextPix(Font, _txt)
  21.     PIX_o = TextPix(FontOut, _txt)
  22.     tcas_main(TCAS_BUF, PIX_t, 10 * _start, 10 * _end, dx, dy, 1)
  23.     tcas_main(TCAS_BUF, PIX_o, 10 * _start, 10 * _end, dx, dy, 0)

  24.     return (ASS_BUF, TCAS_BUF)
复制代码
说明:
关于TCC文件, k mode要设为syl, tcaxpy init 与 tcaxpy fin 要设为true
关于SYL文件, 就是普通的ASS时间轴文件(不包含任何特效代码), 之后再在每句对白前加上{\k0}, 可以使用记事本的替换功能, 将",,", 替换成",,{\k0}", (不包含引号)


Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

沙发
发表于 2011-10-17 14:51:30 |只看该作者
补上截图

空白视频

真实视频

Rank: 4

板凳
发表于 2011-10-17 20:52:42 |只看该作者
尚未深入了解 。。不知道这个具体是干什么用的

Rank: 1

地板
发表于 2011-10-18 16:12:45 |只看该作者
不是很明白这个功能有什么用,能详细解释一下么,milk大,谢谢~

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

5#
发表于 2011-10-18 19:17:36 |只看该作者
ddreamt 发表于 2011-10-18 16:12
不是很明白这个功能有什么用,能详细解释一下么,milk大,谢谢~


就目前来说用处不大, 因为TcasFilter的DirectShow接口尚未成熟,
以后可以用TCAS替代ASS作为外挂字幕使用 (没啥太大优势, 主要是不需要字体文件, 防止用户对文件进行修改等).

p.s. TCAS主要还是应用在特效字幕制作上的, 这个例子可以当成是最基本应用, 实际应用可参考 http://www.tcax.org/forum.php?mod=viewthread&tid=131

您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-11-23 11:10

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH