txt テキスト ファイルに従って、ファイルは自動的に計算され、おおよその srt 字幕形式で生成されます。これは、ビデオ クリップにインポートしてワンクリックで吹き替えを生成するのに便利です。
- 指定されたtxtファイル内のテキストを読み取ります
- テキストを複数の文に分割する
- 空の文を削除する
- 各文の長さを計算する
- srtファイルを保存します
import os
import re
def to_srt(file_path):
# 读取指定txt文件中的文本
with open(file_path, 'r', encoding='utf-8') as f:
text = f.read()
# 将文本分成多个句子
sentences = re.split(r'[。!~?]', text)
# 去除空句子
sentences = [s.strip() for s in sentences if s.strip()]
# 计算每个句子的持续时间
end_time = 0
srt = ''
for i, sentence in enumerate(sentences):
start_time = end_time + 2
start_time_str = "{:02d}:{:02d}:{:02d},{}".format(int(start_time // 3600), int((start_time % 3600) // 60), int(start_time % 60), "000")
duration = len(sentence) * 0.25
end_time = start_time + duration
end_time_str = "{:02d}:{:02d}:{:02d},{}".format(int(end_time // 3600), i