5.1 子视频命名优化
根据字幕内容命名子视频文件:
# 生成输出文件名,使用字幕内容(去掉特殊字符)
subtitle_text = sub.text.replace('\n', ' ').replace(':', '').strip()
output_file = os.path.join(output_dir, f"{i+1:03d}_{subtitle_text[:20]}.mp4")
5.2 字幕时间修正
有时字幕文件的时间可能不准确,可以引入时间偏移功能:
offset = 0.5 # 秒
start_time_seconds = sub.start.ordinal / 1000 + offset
end_time_seconds = sub.end.ordinal / 1000 + offset
5.3 重新编码视频
如果需要对剪辑视频重新编码,可以修改 FFmpeg 命令:
command = [
"ffmpeg",
"-i", video_path,
"-ss", start_time_str,
"-to", end_time_str,
"-c:v", "libx264", # 使用 H.264 编码
"-preset", "fast", # 编码速度
"-crf", "23", # 质量参数
output_file
]