Commit 9e4f7b39 authored by zhuguorui's avatar zhuguorui

修改bug

parent 40830af4
......@@ -530,6 +530,19 @@ def combine_video_with_subtitle(video_file, subtitle_file):
raise "combine_video_with_subtitle 给视频加字幕异常"
def format_sub_time(time_str):
time_str = time_str.replace('.', ',')
# 处理时间部分
if "," in time_str:
hours, minutes, seconds_milliseconds = time_str.split(":")
seconds, milliseconds = seconds_milliseconds.split(",")
formatted_time = "{:02d}:{:02d}:{:02d},{:03d}".format(int(hours), int(minutes), int(seconds), int(milliseconds[:3]))
else:
hours, minutes, seconds = time_str.split(":")
formatted_time = "{:02d}:{:02d}:{:02d},000".format(int(hours), int(minutes), int(seconds))
return formatted_time
def gen_subjson_from_subs(subs):
# 定义字典列表,用于存储每个字幕项的信息
subtitle_list = []
......@@ -537,8 +550,8 @@ def gen_subjson_from_subs(subs):
for i, subtitle in enumerate(subs):
subtitle_dict = {
'index': str(i+1),
'start': str(subtitle.start),
'end': str(subtitle.end),
'start': format_sub_time(str(subtitle.start)),
'end': format_sub_time(str(subtitle.end)),
'content': subtitle.content
}
subtitle_list.append(subtitle_dict)
......
......@@ -52,7 +52,7 @@ class Cutter:
segments = []
# Avoid disordered subtitles
subs.sort(key=lambda x: x.start)
# print(subs)
print(subs)
base, _ = os.path.splitext(fns['media'])
for x in subs:
v_start = 0.000 if x.index == 1 else x.start.total_seconds()
......@@ -84,6 +84,7 @@ class Cutter:
segments[-1]["video_end"] = media.duration - 0.5
# 切视频,并且将视频变化到新的长度,再合并新的音频
print(segments)
clips = [media.subclip(s["video_start"], s["video_end"]) for s in segments]
for i, clip in enumerate(clips, start=0):
# 先把 原clip 存下来
......
......@@ -133,7 +133,7 @@ class Transcribe:
f.write(srt.compose(subs).encode(self.args.encoding, "replace"))
# 生成字幕json
sub_json = utils.gen_subjson_from_subs(subs)
# print(sub_json)
print(sub_json)
return sub_json
def _save_md(self, md_fn, srt_fn, video_fn, is_auto_edit=False):
......
nohup gunicorn start:app -c ./gunicorn.conf.py > log.run 2>&1 &
\ No newline at end of file
nohup gunicorn start:app -c ../wmdigit_video_cut/gunicorn.conf.py > log.run 2>&1 &
#!/bin/sh
echo `date '+%Y-%m-%d %H:%M:%S'`
PID=$(ps -ef | grep wmdigit_video_cut | grep -v grep | awk '{print $2}')
if [ -n "$PID" ]; then
echo "kill app on $PID"
kill -9 $PID
fi
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment