diff options
author | garret <garret@airmail.cc> | 2021-09-30 00:23:28 +0100 |
---|---|---|
committer | garret <garret@airmail.cc> | 2021-09-30 00:37:09 +0100 |
commit | 04a61982e82a5df1cb2ec77a5d9752782a7c41e0 (patch) | |
tree | 35ec751a28b717a7cc6158f84357408173339bff /macros/scenebleed.lua | |
parent | 2a9e07ff9a5f7084d3e2e54ff5d065f9b0a93591 (diff) | |
download | aegisub-scripts-04a61982e82a5df1cb2ec77a5d9752782a7c41e0.tar.gz aegisub-scripts-04a61982e82a5df1cb2ec77a5d9752782a7c41e0.tar.bz2 aegisub-scripts-04a61982e82a5df1cb2ec77a5d9752782a7c41e0.zip |
macro folder
the beginning of becoming like every other cartel-aproved script repo in existence
Diffstat (limited to 'macros/scenebleed.lua')
-rw-r--r-- | macros/scenebleed.lua | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/macros/scenebleed.lua b/macros/scenebleed.lua new file mode 100644 index 0000000..c0d3908 --- /dev/null +++ b/macros/scenebleed.lua @@ -0,0 +1,35 @@ +script_name="Scenebleed Detector"
+script_description="marks possible scenebleeds with an effect"
+script_author="garret"
+script_version="2021-07-14"
+
+function main(sub, sel)
+ local thresh = aegisub.frame_from_ms(500)
+ local bleedstring = "bleed"
+ -- tried to make config file work, failed, so shit's hardcoded
+
+ local keyframes = aegisub.keyframes()
+ local bleed_count = 0
+ for j,i in ipairs(sel) do
+ line = sub[i]
+ local start_frame = aegisub.frame_from_ms(line.start_time)
+ local end_frame = aegisub.frame_from_ms(line.end_time)
+ for index, frame in ipairs(keyframes) do
+ if end_frame > frame and end_frame < frame + thresh or start_frame < frame and start_frame >= frame - thresh then
+ -- off the kf, but not by more than the threshold
+ if line.effect == "" then
+ line.effect = bleedstring
+ else
+ line.effect = line.effect.."; "..bleedstring
+ end
+ bleed_count = bleed_count + 1
+ sub[i] = line
+ end
+ end
+ end
+ aegisub.log(bleed_count.." scenebleeds found.")
+ aegisub.set_undo_point(script_name)
+ return sel
+end
+
+aegisub.register_macro(script_name, script_description, main)
|