add scenebleed detector
This commit is contained in:
parent
c5e9acf3dc
commit
f8d82e44b9
|
@ -60,6 +60,10 @@ Replaces `--` with `—`.
|
||||||
|
|
||||||
I do not have an em-dash key on my keyboard.
|
I do not have an em-dash key on my keyboard.
|
||||||
|
|
||||||
|
### Scenebleed Detector
|
||||||
|
|
||||||
|
Finds scenebleeds in the selected lines, and marks them with an effect (`bleed`).
|
||||||
|
|
||||||
### tagstrip
|
### tagstrip
|
||||||
|
|
||||||
gets rid of tags (and comments) in the selected line(s)
|
gets rid of tags (and comments) in the selected line(s)
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
script_name="Scenebleed Detector"
|
||||||
|
script_description="marks possible scenebleeds with an effect"
|
||||||
|
script_author="garret"
|
||||||
|
script_version="2021-07-06"
|
||||||
|
|
||||||
|
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()
|
||||||
|
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
|
||||||
|
sub[i] = mark(line)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
aegisub.set_undo_point(script_name)
|
||||||
|
return sel
|
||||||
|
end
|
||||||
|
|
||||||
|
aegisub.register_macro(script_name, script_description, main)
|
Loading…
Reference in New Issue