lua脚本【免费】半自动对轨工具 - 针对有声书的对轨任务

关与有人把我30块的小脚本改了改就买了150+
我感觉还是免费吧
这东西其实不难

脚本界面
image

脚本介绍

##脚本:AAA_duitraT-1
##作者:N7 QQ:2077655532
##本脚本针对有声书的对轨任务
##脚本所有文件放在同一文件夹内
##脚本包括文件
config.txt 参数配置文件
N7_acpack-v1.2.lua 动作函数模块
N7_GUI-v1.3.lua 窗口函数模块
Read_Me.txt 说明文件
AAA_duitraT-1.lua 运行脚本文件 <-在reaper里加载此文件

##########################################################################

###适配画本格式
格式说明:
文件格式需要:UTF-8 筛选过的HTML文本文件。(word另存为筛选过的HTML,然后用记事本另存为UTF-8)
!!章节名要用标题样式,且必须包含“第”和(“章”或“集”)
!!【角色】名要用【】括起来。
!!【角色】台词要染上背景颜色。
!!每段只能有一个【角色】。
!!【角色】台词后分段,不能有旁白或其他角色。
!!如果在【角色】前有文字(超过15个字符),该部分算在旁白。

##########################################################################

##脚本功能介绍--更新至v1.5.4

--配置文件: config.txt <-可自定义
--显示板1: 显示当前光标处的区间名称及相对时间。
--分割: 左键按cue分割选中音频(支持wav,AU打标mp3,rp[xmp]打标mp3);右键呼出动态分割。
--区间: 左键按光标位置,为光标之前,前一个区间之后的音频建立区间,命名格式[001]仅识别阿拉伯数字;右键将剪切板内容【间隔为换行】,批量重命名光标之前(包含光标所在)的区间。
--标志: 左键为选中片段染色,并在片段名称中添加当前所设置的标志字符;右键恢复默认染色,并清除片段名称中的标志字符。
--替换: 将工程中含有当前标志字符的片段,按顺序替换为选中片段,根据替换片段长度差异,移动后面的片段及区间。
--显示板2: 左键临时更改标志字符;右键统计工程中现有标志字符。
--半-读取轨道: 获取选中音频所在的轨道,并刷新last片段。
----半自动获取的轨道按钮: 左键移动轨道下一个片段,依据当前选中音频或上一个对轨音频,间距按瞬态;右键撤回。
--间隔: 临时修改预设时间。
--首、尾: 临时修改首尾空白预留时间。
--向后选择: 将光标位置后方的音频设为选中状态。
--L去 R来: 左键将选中音频后移10分钟;右键将选中音频飞到光标处。
--删首尾空白: 按源媒体峰值判定空白并余留设定的时间余量。
--设置灵敏度: 左键修改音量判定阈值(剪首尾空白用);右键呼出瞬态灵敏度窗口(对轨用)。
--响度: 呼出标准化窗口,用于标准化选中音频的音量或响度。
--自动1: 使用前请选中音频,画本格式见上方,音频分割好,放在命名为角色名的轨道上,以轨道名匹配画本中角色。
!!!【轨道名】作为对轨识别依据!!!不能有符号!!!不能被多个音频名称包含。
--自动2: 输入空格分割的角色开口顺序,自动抓取光标后方、对应轨道的音频对轨。
--归鞘: 将选中音频移动到后方音频之前,后方无音频则后移10min。
--剑来: 将选中轨道的光标后一个音频移动到光标位置。
--藏柜: 将光标后没有音频的轨道隐藏起来。
--显轨: 显示全部轨道。
--准备按钮: 将选中音频:按照轨道名摆放,分割,删首尾空白。
--]]

##########################################################################

版本号:1.5.4
#切割增加支持MP3文件的cue识别(AU格式&rp中XMP格式)。
#增加呼出动态分割功能。
#增加对齐按钮,将选中音频对齐摆放到光标位置。
#增加区间批量重命名功能。
#半自动对轨转为获取选中音频轨道方式刷新轨道按钮,播放改为默认。
#间隔123作用于同接同、旁白接角色、角色接旁白。
#增加响度按钮呼出标准化窗口。
#增加瞬态灵敏度呼出功能。
#增加归鞘/剑来按钮,方便对音频位置及顺序调整。
#增加了隐藏光标后无对象的轨道与显示全部轨道的按钮,方便对轨视图显示。
#增加准备按钮,将音频按名称调整到相应轨道,分割,并删除首尾空白。
#自动对轨后修改区间名称加上章节名。
#替换功能新增:改变 所在区间里 的音频间距。

##########################################################################

下载
AAA_duiguiT_001.zip (53.2 KB)

致谢

首先要感谢DSY大佬的开源GUI库,我修改了源代码,并改成了库的形式。

其次我要感谢安涂声同志,他在我开发新版本的路上提供了很多建设性建议,并提供了一些功能的开源代码及测试材料,同时还积极地帮我测试脚本功能。

还有我要感谢宇智波止水同志,他对于自动化的实现提出了许多畅想,虽然我还没写出来,但是他的想法总是能带给我很多灵感。

开发过程:

一个月前我在B站发了一个30块的开源小脚本,后来安涂声找到我,提出修改一版并加入一些新功能,然后可以卖出198的高价,198可是个好价钱,可以吃好几顿饭,于是我答应了他。


image

关与一机一码的实现我在查找API的过程中遇到过,就是reaper的ExtState三兄弟,get,set,has,通过写入和查找键值来判定是否注册过,配合机器码和激活码的计算可以实现一机一码的功能。

但是我还不能确定机器码的获取函数应该用什么样的形式,所以要感谢安涂声提供了这段代码。


为了实现瞬态的对轨判定,他还向我提供了他写的对轨脚本的源代码,向我展示了他的实现思路。



由于我之前的是用移动编辑光标移动来控制间隔,不好实现瞬态,于是我将思路调整为增加一个变量记录移动的音频块,通过每次对轨访问当前选中的音频块,如果没有就启用last,如果没有last就启用光标位置来实现减少对光标的依赖。
瞬态则采用reaper自带功能,通过对音频块设为选中状态,然后用光标放到首尾,向音频块瞬态移动,记录光标位置,获取完成后将光标放回原位,实现对音频首尾瞬态位置的采集,再通过和设定间距的计算,算出音频块的位置并经行移动。

关与mp3分割的实现:
其实是借鉴了DSY佬的mp3分割脚本三件套的源代码,但是由于我卸载的AU,所以只能用reaper导出的带标记mp3文件测试了,但是由于reaper和AU写的mp3标记格式并不一样(这点可以用记事本打开mp3文件,在文件前端找到标记的记录格式)我不确定我写的判定能否成功识别AU的MP3标记,所幸安涂声提供了AU的MP3文件给我测试。

关与归鞘和剑来:
实际上是搜索选中轨道上,位置大于光标位置的音频,break,将音频移动到光标来,或者将前一个音频移动到后一个音频前,当后面没音频就直接后移。

关与区间重命名:
读取剪切板(这个API在SWS里)然后\n分割,修改区间的名字。









关与代码的混淆:
安涂声向我介绍了LuaObfuscator项目,可以将lua脚本加密成难以理解的代码,可惜我没能登录,所以使用了其他的混淆工具经行代码的加密,虽然这花费了我30块钱买一个月卡。
GitHub - jkusner/LuaObfuscator: A lua obfuscator originally designed for Garry's Mod's "glua" but should work for most regular scripts.

Lua 工具箱 (luatool.cn)

关与脚本为什么变成免费的:

因为我原来的定价是30,一顿饭钱,想着提供源代码,你可以自己定制一些东西,大家可以交个朋友,在这之前我其实卖出过2份的。

但是……开源总会有些代价





在此之后我就已经决定不再开源了。




写完之后,定价198,我要求100,但是可能我还是太贪心了吧。








但是近期我关注到安涂声将售卖他更改了那个30块开源的脚本,并开出150+的价钱,我决定还是免费公开,这样对得起之前买了我的30块小脚本的两位朋友,也能平复我的情感,虽然这可能让他觉得这对不起他的付出,但我同样也是付出过的,我觉得就算我收费也无法使我和他分的公平,不如造福大家,希望通过这个脚本也能让更多人了解到reaper这个宿主软件。

所以这是个瓜贴?还是个资源贴呢?
哈哈哈哈哈哈哈哈

4 Likes

菩萨!! :sparkling_heart: :+1: :+1: :+1: :+1:

二编了,爆出了一个小瓜哈哈哈,加上了致谢,还是非常感谢DSY佬,安涂声,和Q名叫宇智波止水的朋友提供的帮助的。

国内的开源气氛我只能说是令人失望的,具体到某一个reaper群体的用户更是恶劣,免费的脚本马上就成为了某某教学班的赠品,要是开源的话更是随手就在界面上添上自己名字扮演作者了。曾经我很看不起混淆加密这种手段,觉得太脏了,用luac编译足够了,现在看还是天真了,周围是一群环伺的狼,应该怎么脏怎么来

1 Like

工具箱里可以免费反编译luac,我觉得不混淆还是太简单了,拦不住有心人,不过开源的代码可以编译成二进制的,虽然可能需要随lua编译器版本更迭,但是据说编译速度会更快(?)/笑哭

快不快没感觉出来,被反编译的速度就确实很快

:rofl:确实哈哈哈哈

luac反编译2秒钟的事儿 :rofl:我都改成混淆加密了

进来吃瓜 :joy:

目前有能用的免费的混淆工具吗?我试了六七款了,除了楼主说的收费的,其他的混淆完reaper根本无法运行

那个github的据说能用,但是我使用说需要登录才能(但是我没翻墙,登录页面加载不出)另外这个工具箱价格还算比较便宜,我感觉还是可以采用的。可能还有其他混淆工具,不过许多工具需要其他编译器(如python或者Java),我并没有接触过那些语言,所以就用了这个工具箱。

image
这个就是,我在用的,(LuaObfuscator - Playground)不过使用之前最好先转存字节码在去混淆,不然容易报错,国外的网站,有时需要翻墙

ZYJ_转字节码.lua (13.4 KB)

1 Like

我试过了,reaper运行不了

转存字节码是什么意思?是有工具去做这一步吗?LuaObfuscator - Playground这个我也试过,也是失败,但我是直接用源码去做混淆的

多多少少有点不要脸了哈哈哈

:pray:感谢大佬,为半自动对轨开启了开源时代,必须赞一下,感谢大佬

不好意思,没看全,好像没开源,哈哈,还是很感谢

/笑哭,这个是闭源的,不再开源了,如果有不懂的我倒是可以介绍脚本实现思路,但不会再提供源码了

1 Like

好的,大佬,感谢