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

标题: 关于TCAX自定义Python脚本编写函数的调用 [打印本页]

作者: aristotll    时间: 2016-7-8 12:49:36     标题: 关于TCAX自定义Python脚本编写函数的调用

本帖最后由 四月一日 君寻 于 2018-2-11 09:46 编辑
  1. def tcaxPy_Init()
  2. def tcaxPy_Fin()
  3. def tcaxPy_Main()
复制代码
这些函数具体是啥时候运行的啊?

我认为TCAX是把这些Python脚本当类似嵌入的lua用的.是这样的吧...

然后对于我一个普通的python脚本foo.py 例如我python foo.py这样是可以在cmd上运行的

那TCAX怎么达到类似的效果呢,可以这样运行:
  1. python TCAX自定义Python脚本名字 参数
复制代码
,因为需要debug 导入第三方模块, 或者类似之类的东西 我不想运行一个exe, 而想利用Python的解释器,来运行自己编译的脚本,可以达到这样的效果吗...

问题有点乱, 希望海涵

个人对Python还是有普通的理解(所以看自带的Python类库还是能理解的),但 CPP之类的理解不深, 看TCAX的源码无力, 希望有理解深的人给我解答,

万分感谢!


作者: 面麻    时间: 2016-7-8 14:41:34

第三方模块在 py 脚本里面 import 即可。
虽然对我 TCAX 的机制了解也不多,但是个人认为 TCC 文件里面的信息,就是运行 python 的关键。
作者: aristotll    时间: 2016-7-8 21:24:54

面麻 发表于 2016-7-8 14:41
第三方模块在 py 脚本里面 import 即可。
虽然对我 TCAX 的机制了解也不多,但是个人认为 TCC 文件里面的信 ...

因为Python全局模块的原因,我是倾向于用pip之类的来安装的,我想知道TCAX对Python的调用方式
然后我也不懂TCAX是怎么调用Python的, 是普通调用还是神马的...
作者: 面麻    时间: 2016-7-9 20:07:07

aristotll 发表于 2016-7-8 21:24
因为Python全局模块的原因,我是倾向于用pip之类的来安装的,我想知道TCAX对Python的调用方式
然后我也不 ...

TCAX 不影响你用 Python 进行的其它开发。
就像在 TCAX 里面使用 magick 和 cairo 模块,都是在 py 脚本里面 import。
等一段时间,可能 TCAX 开发者会给出回答吧,最近他工作比较忙。
作者: milkyjing    时间: 2016-7-11 19:15:39

python是一种解释型语言。需要通过解释器执行。windows下就是一个dll。换句话说,只要有该模块,任何程序都可以执行py脚本。python安装包除了解释器外,还打包进了编辑器,ide,常用库,核心库。等。直接安装比较省事。tcax是一个集成了python解释器的工具。可以调用py脚本执行一些任务。这些脚本与py直接调用并无区别。

详细可看 http://www.tcax.org/forum.php?mo ... &extra=page%3D1
作者: milkyjing    时间: 2016-7-11 19:16:39

面麻 发表于 2016-7-8 14:41
第三方模块在 py 脚本里面 import 即可。
虽然对我 TCAX 的机制了解也不多,但是个人认为 TCC 文件里面的信 ...

正解
作者: milkyjing    时间: 2016-7-11 19:19:09

脚本写法可以参考 http://www.tcax.org/forum.php?mo ... &extra=page%3D2
作者: milkyjing    时间: 2016-7-11 23:24:27

源代码可以参考



RIXE\tcax\trunk\src\alpha\tcax\tcax.c

tcax_entry

那几个用户定制接口, 相关的主要是

_tcax_use_user_func



调用顺序大概是

main --> tcax_entry --> _tcax_use_user_func --> (根据脚本配置), 回调

def tcaxPy_Init()
def tcaxPy_Fin()
def tcaxPy_Main()




欢迎光临 TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua (http://tcax.org/) Powered by Discuz! X2