into tmp dir
This commit is contained in:
parent
c3a5aae64a
commit
5208ad5f1e
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,6 +1,7 @@
|
|||||||
*.mp4
|
*.mp4
|
||||||
*.vtt
|
*.vtt
|
||||||
*.txt
|
*.txt
|
||||||
|
tmp/
|
||||||
logs/
|
logs/
|
||||||
.idea
|
.idea
|
||||||
venv
|
venv
|
38
main.py
38
main.py
@ -11,9 +11,17 @@ WORD_BREAK = 60
|
|||||||
|
|
||||||
MAX_ITER = 0
|
MAX_ITER = 0
|
||||||
SHOULD_REMOVE_TEMPS = False
|
SHOULD_REMOVE_TEMPS = False
|
||||||
SHOULD_CUT_VIDEOS = False
|
SHOULD_CUT_VIDEOS = True
|
||||||
SHOULD_COPY_CODEC = False
|
SHOULD_COPY_CODEC = False
|
||||||
|
|
||||||
|
# FINAL_TITLE = "plastic"
|
||||||
|
# DE_VIDEO = "https://www.youtube.com/watch?v=mhmpeIyG0uM"
|
||||||
|
# EN_VIDEO = "https://www.youtube.com/watch?v=RS7IzU2VJIQ"
|
||||||
|
#
|
||||||
|
# FINAL_TITLE = "atomic_bombs"
|
||||||
|
# DE_VIDEO = "https://www.youtube.com/watch?v=NBeeRVkTeJg"
|
||||||
|
# EN_VIDEO = "https://www.youtube.com/watch?v=JyECrGp-Sw8"
|
||||||
|
|
||||||
FINAL_TITLE = "fusion_power"
|
FINAL_TITLE = "fusion_power"
|
||||||
DE_VIDEO = "https://www.youtube.com/watch?v=lj4IC70kDIU"
|
DE_VIDEO = "https://www.youtube.com/watch?v=lj4IC70kDIU"
|
||||||
EN_VIDEO = "https://www.youtube.com/watch?v=mZsaaturR6E"
|
EN_VIDEO = "https://www.youtube.com/watch?v=mZsaaturR6E"
|
||||||
@ -50,37 +58,37 @@ def cut_videos(idx, en_start, en_end, de_start, de_end, en_txt, de_txt):
|
|||||||
print("cut_{:02d}: en: {:6.2f} -> {:6.2f}, de: {:6.2f} -> {:6.2f}".format(
|
print("cut_{:02d}: en: {:6.2f} -> {:6.2f}, de: {:6.2f} -> {:6.2f}".format(
|
||||||
idx, en_start, en_end, de_start, de_end,
|
idx, en_start, en_end, de_start, de_end,
|
||||||
))
|
))
|
||||||
with open('concat_{}.txt'.format(idx), 'w+') as f:
|
with open('tmp/concat_{}.txt'.format(idx), 'w+') as f:
|
||||||
f.write('file de_{}.mp4\n'.format(idx))
|
f.write('file de_{}.mp4\n'.format(idx))
|
||||||
f.write('file en_{}.mp4\n'.format(idx))
|
f.write('file en_{}.mp4\n'.format(idx))
|
||||||
f.write('file de_{}.mp4\n'.format(idx))
|
f.write('file de_{}.mp4\n'.format(idx))
|
||||||
run_os_cmd("ffmpeg -y -i en.mp4 -ss {en_start} -to {en_end} en_{idx}.mp4 2>logs/01_ffmpeg_cut_en_{idx}.log".format(
|
run_os_cmd("ffmpeg -y -i en.mp4 -ss {en_start} -to {en_end} tmp/en_{idx}.mp4 2>logs/01_ffmpeg_cut_en_{idx}.log".format(
|
||||||
en_start=en_start, en_end=en_end, idx=idx))
|
en_start=en_start, en_end=en_end, idx=idx))
|
||||||
run_os_cmd("ffmpeg -y -i de.mp4 -ss {de_start} -to {de_end} de_{idx}.mp4 2>logs/01_ffmpeg_cut_en_{idx}.log".format(
|
run_os_cmd("ffmpeg -y -i de.mp4 -ss {de_start} -to {de_end} tmp/de_{idx}.mp4 2>logs/01_ffmpeg_cut_en_{idx}.log".format(
|
||||||
de_start=de_start, de_end=de_end, idx=idx))
|
de_start=de_start, de_end=de_end, idx=idx))
|
||||||
if SHOULD_COPY_CODEC:
|
if SHOULD_COPY_CODEC:
|
||||||
run_os_cmd(
|
run_os_cmd(
|
||||||
"""ffmpeg -y -f concat -safe 0 -i concat_{idx}.txt -c copy deende_{idx}.mp4 2>logs/02_ffmpeg_concat_{idx}_copy.log""".format(
|
"""ffmpeg -y -f concat -safe 0 -i tmp/concat_{idx}.txt -c copy tmp/deende_{idx}.mp4 2>logs/02_ffmpeg_concat_{idx}_copy.log""".format(
|
||||||
idx=idx))
|
idx=idx))
|
||||||
else:
|
else:
|
||||||
run_os_cmd(
|
run_os_cmd(
|
||||||
"""ffmpeg -y -f concat -safe 0 -i concat_{idx}.txt deende_{idx}.mp4 2>logs/02_ffmpeg_concat_{idx}_nocopy.log""".format(
|
"""ffmpeg -y -f concat -safe 0 -i tmp/concat_{idx}.txt tmp/deende_{idx}.mp4 2>logs/02_ffmpeg_concat_{idx}_nocopy.log""".format(
|
||||||
idx=idx))
|
idx=idx))
|
||||||
en_txt_spl = '\n'.join(textwrap.wrap(en_txt, WORD_BREAK, break_long_words=False))
|
en_txt_spl = '\n'.join(textwrap.wrap(en_txt, WORD_BREAK, break_long_words=False))
|
||||||
de_txt_spl = '\n'.join(textwrap.wrap(de_txt, WORD_BREAK, break_long_words=False))
|
de_txt_spl = '\n'.join(textwrap.wrap(de_txt, WORD_BREAK, break_long_words=False))
|
||||||
text = "{}\n\n\n{}".format(de_txt_spl, en_txt_spl)
|
text = "{}\n\n\n{}".format(de_txt_spl, en_txt_spl)
|
||||||
with open('text_{}.txt'.format(idx), 'w+') as f:
|
with open('tmp/text_{}.txt'.format(idx), 'w+') as f:
|
||||||
f.write(text)
|
f.write(text)
|
||||||
run_os_cmd(
|
run_os_cmd(
|
||||||
"""ffmpeg -y -i deende_{idx}.mp4 -vf drawtext="textfile=text_{idx}.txt: fontcolor=white: fontsize={fontsize}: box=1: boxcolor=black@0.5: boxborderw=5: x=(w-text_w)/2: y=(h-text_h)/2" -c:a copy deende_{idx}_s.mp4 2>logs/03_ffmpeg_sub_{idx}.log""".format(
|
"""ffmpeg -y -i tmp/deende_{idx}.mp4 -vf drawtext="textfile=tmp/text_{idx}.txt: fontcolor=white: fontsize={fontsize}: box=1: boxcolor=black@0.5: boxborderw=5: x=(w-text_w)/2: y=(h-text_h)/2" -c:a copy tmp/deende_{idx}_s.mp4 2>logs/03_ffmpeg_sub_{idx}.log""".format(
|
||||||
idx=idx, text=text, fontsize=FONT_SIZE))
|
idx=idx, text=text, fontsize=FONT_SIZE))
|
||||||
if SHOULD_REMOVE_TEMPS:
|
|
||||||
run_os_cmd("rm en_{iter}.mp4 de_{iter}.mp4 concat_{iter}.txt text_{iter}.txt".format(iter=idx))
|
|
||||||
|
|
||||||
|
|
||||||
def download_vids_and_subs():
|
def download_vids_and_subs():
|
||||||
if SHOULD_REMOVE_TEMPS:
|
if SHOULD_REMOVE_TEMPS:
|
||||||
run_os_cmd("rm en.mp4 de.mp4 subs.en.vtt subs.de.vtt")
|
run_os_cmd("rm en.mp4 de.mp4 subs.en.vtt subs.de.vtt")
|
||||||
|
run_os_cmd("mkdir -p logs")
|
||||||
|
run_os_cmd("mkdir -p tmp")
|
||||||
run_os_cmd("""youtube-dl -f worst --output="de.%(ext)s" {}""".format(DE_VIDEO))
|
run_os_cmd("""youtube-dl -f worst --output="de.%(ext)s" {}""".format(DE_VIDEO))
|
||||||
run_os_cmd("""youtube-dl -f worst --output="en.%(ext)s" {}""".format(EN_VIDEO))
|
run_os_cmd("""youtube-dl -f worst --output="en.%(ext)s" {}""".format(EN_VIDEO))
|
||||||
run_os_cmd(
|
run_os_cmd(
|
||||||
@ -131,26 +139,26 @@ def time_subs():
|
|||||||
|
|
||||||
|
|
||||||
def concat_all_videos(max_iters):
|
def concat_all_videos(max_iters):
|
||||||
with open('concat.txt', 'w+') as f:
|
with open('tmp/concat.txt', 'w+') as f:
|
||||||
for idx in range(max_iters):
|
for idx in range(max_iters):
|
||||||
f.write('file deende_{}_s.mp4\n'.format(idx))
|
f.write('file deende_{}_s.mp4\n'.format(idx))
|
||||||
if SHOULD_COPY_CODEC:
|
if SHOULD_COPY_CODEC:
|
||||||
run_os_cmd(
|
run_os_cmd(
|
||||||
"""ffmpeg -y -f concat -safe 0 -i concat.txt -c copy {final_title}.mp4 2>logs/04_ffmpeg_all_copy.log""".format(
|
"""ffmpeg -y -f concat -safe 0 -i tmp/concat.txt -c copy {final_title}.mp4 2>logs/04_ffmpeg_all_copy.log""".format(
|
||||||
final_title=FINAL_TITLE))
|
final_title=FINAL_TITLE))
|
||||||
else:
|
else:
|
||||||
run_os_cmd(
|
run_os_cmd(
|
||||||
"""ffmpeg -y -f concat -safe 0 -i concat.txt {final_title}.mp4 2>logs/04_ffmpeg_all_nocopy.log""".format(
|
"""ffmpeg -y -f concat -safe 0 -i tmp/concat.txt {final_title}.mp4 2>logs/04_ffmpeg_all_nocopy.log""".format(
|
||||||
final_title=FINAL_TITLE))
|
final_title=FINAL_TITLE))
|
||||||
if SHOULD_REMOVE_TEMPS:
|
if SHOULD_REMOVE_TEMPS:
|
||||||
run_os_cmd("rm concat.txt")
|
run_os_cmd("rm -r tmp/")
|
||||||
for idx in range(MAX_ITER):
|
for idx in range(MAX_ITER):
|
||||||
run_os_cmd("rm deende_{idx}.mp4".format(idx=idx))
|
run_os_cmd("rm deende_{idx}.mp4".format(idx=idx))
|
||||||
run_os_cmd("rm deende_{idx}_s.mp4".format(idx=idx))
|
run_os_cmd("rm deende_{idx}_s.mp4".format(idx=idx))
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
download_vids_and_subs()
|
# download_vids_and_subs()
|
||||||
max_iters = time_subs()
|
max_iters = time_subs()
|
||||||
concat_all_videos(max_iters)
|
concat_all_videos(max_iters)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user