Kdenlive支持四种字幕添加方式:一、用Whisper/Vosk语音识别自动生成带时间戳SRT;二、用标题工具配合波形图手动校准;三、导入外部UTF-8编码SRT文件并校正偏移;四、结合SAM模型实现动态跟随字幕。

如果您在Kdenlive中尝试为视频添加字幕,但发现手动输入耗时费力,则可借助其内置的语音转文字功能自动生成带时间戳的SRT字幕。以下是实现该功能的具体操作路径与多种可行方法:
一、通过语音识别对话框启用Whisper或Vosk引擎
该方法利用Kdenlive集成的Python接口调用本地语音识别模型,支持离线运行且不依赖网络,保障音频隐私安全。Whisper适用于高精度多语言场景,Vosk则更适合轻量级快速响应需求。
1、确保已安装对应AI依赖:执行pip install -r data/scripts/whisper/requirements-whisper.txt(Whisper)或安装Vosk所需包。
2、在时间轴上选中含语音的音频轨道或视频轨道。
3、点击顶部菜单栏“项目”→“语音转文字”,或使用快捷键Ctrl+Shift+S唤出SpeechDialog对话框。
4、在对话框中选择识别引擎(Whisper/Vosk)、目标语言、是否启用自动标点及静音检测阈值。
5、点击“开始识别”,等待处理完成,系统将自动生成SRT字幕文件并插入新字幕轨道。
二、使用标题工具配合音频分析手动同步字幕
当语音识别结果存在断句不准或背景噪音干扰导致错误率偏高时,可先获取粗略文本,再结合波形图人工校准时间轴。此方式无需额外模型部署,兼容所有Kdenlive版本。
1、右键时间轴空白区域,选择“添加字幕轨道”创建专用轨道。
2、点击工具栏“标题工具”(快捷键T),在时间轴上点击欲添加字幕的位置。
3、在弹出编辑框中粘贴已通过外部工具(如实时语音转写服务)生成的带时间戳文本。
4、逐条双击字幕片段,在属性面板中手动调整入点与出点,使其对齐音频波形中的语音段落。
5、启用“显示音频波形”选项(右键轨道→显示波形),辅助判断发音起止位置。
三、导入外部SRT文件并映射至字幕轨道
该方法适用于已用其他工具(如影忆、FFmpeg + whisper.cpp 或在线转写服务)生成标准SRT格式字幕的情况,可跳过Kdenlive内部识别环节,直接复用已有成果。
1、确认SRT文件编码为UTF-8且时间格式符合00:00:01,000 --> 00:00:04,500规范。
2、点击顶部菜单“项目”→“导入文件”,选择该SRT文件。
3、导入后,SRT将出现在项目箱中作为“字幕素材”。右键该素材→“属性”,检查帧率匹配设置是否与工程一致。
4、将项目箱中的SRT素材拖拽至已创建的字幕轨道任意位置。
5、若出现时间偏移,选中全部字幕片段,右键→“移动所有字幕”,输入全局偏移毫秒值进行校正。
四、启用Segment Anything Model辅助字幕区域定位
当需为特定说话人或画面中某人物单独添加动态跟随字幕时,可结合SAM遮罩功能锁定语音源所在画面区域,避免字幕误覆盖关键视觉内容。
1、在视频轨道上定位到首帧需标注的语音起始画面。
2、点击工具栏“自动遮罩”按钮,加载SAM模型(需提前配置src/pythoninterfaces/saminterface.h所依赖的torch/torchvision环境)。
3、在预览窗口中使用鼠标左键点击说话人面部区域,右键添加排除区以屏蔽背景干扰。
4、点击“生成遮罩”,获得Alpha通道蒙版后,切换至字幕轨道,在遮罩区域内拖动字幕素材边界框。
5、启用“字幕随遮罩移动”选项(位于字幕属性面板“动画”分页),使字幕始终锚定于识别对象位置。

















