首页
/ 2025全新VideoLingo接口指南:从字幕切割到AI配音的全流程调用

2025全新VideoLingo接口指南:从字幕切割到AI配音的全流程调用

2026-02-04 05:22:42作者:邓越浪Henry

你还在为视频本地化效率低下而烦恼吗?手动处理字幕切割、翻译、配音耗时费力,且难以保证质量。本文将详细介绍VideoLingo的核心功能接口,帮助你一键实现Netflix级别的视频本地化处理。读完本文,你将能够:

  • 掌握视频下载与预处理的自动化流程
  • 理解语音识别与字幕生成的关键接口
  • 学会多语言翻译与配音合成的实现方法
  • 配置个性化参数以优化处理效果

核心功能模块概览

VideoLingo作为一款全自动视频本地化工具,其核心功能模块涵盖了从视频下载到最终配音合成的完整流程。以下是主要功能模块的架构图:

graph TD
    A[视频下载] --> B[语音识别]
    B --> C[字幕切割]
    C --> D[多语言翻译]
    D --> E[字幕生成]
    E --> F[配音合成]
    F --> G[视频合成]

主要功能模块分布在项目的core/目录下,每个模块对应一个关键处理步骤。同时,config.yaml文件提供了丰富的参数配置选项,允许用户根据需求进行个性化设置。

视频下载与预处理接口

视频下载是整个流程的第一步,VideoLingo提供了灵活的接口支持多种视频来源和格式。核心实现位于core/_1_ytdlp.py文件中。

主要功能函数

  • download_video_ytdlp(url, save_path='output', resolution='1080'): 下载指定URL的视频,支持自定义保存路径和分辨率
  • find_video_files(save_path='output'): 查找下载目录中的视频文件,返回唯一视频路径

使用示例

from core._1_ytdlp import download_video_ytdlp, find_video_files

# 下载视频
url = "https://example.com/video.mp4"
download_video_ytdlp(url, resolution=720)

# 获取下载的视频路径
video_path = find_video_files()
print(f"下载的视频路径: {video_path}")

参数配置

视频下载的相关参数可以在config.yaml中配置:

# *Default resolution for downloading YouTube videos [360, 1080, best]
ytb_resolution: '1080'

# Supported upload video formats
allowed_video_formats:
- 'mp4'
- 'mov'
- 'avi'
- 'mkv'
- 'flv'
- 'wmv'
- 'webm'

语音识别与字幕切割接口

语音识别模块负责将视频中的音频转换为文本,并进行时间轴对齐。核心实现位于core/_2_asr.py文件中。

主要功能函数

  • transcribe(): 执行完整的语音识别流程,包括音频提取、分割和转录

语音识别流程

  1. 视频转音频:从视频中提取原始音频
  2. 音频分离:使用Demucs进行人声分离(可选)
  3. 音频分割:将长音频分割为多个片段
  4. 音频转录:使用Whisper模型进行语音识别

配置选项

语音识别的相关配置可以在config.yaml中设置:

# Whether to use Demucs for vocal separation before transcription
demucs: true

whisper:
  # ["large-v3", "large-v3-turbo"]. Note: for zh model will force to use Belle/large-v3
  model: 'large-v3'
  # Whisper specified recognition language ISO 639-1
  language: 'en'
  # Whisper running mode ["local", "cloud", "elevenlabs"]. Specifies where to run, cloud uses 302.ai API
  runtime: 'local'

字幕切割

字幕切割模块负责将长文本分割为适合显示的字幕片段。相关实现位于core/_5_split_sub.py文件中。切割策略可以通过config.yaml中的参数进行调整:

subtitle:
  # *Maximum length of each subtitle line in characters
  max_length: 75
  # *Translated subtitles are slightly larger than source subtitles, affecting the reference length for subtitle splitting
  target_multiplier: 1.2

多语言翻译接口

翻译模块负责将原始字幕翻译成目标语言,并保持时间轴对齐。核心实现位于core/_4_2_translate.py文件中。

主要功能函数

  • translate_all(): 执行完整的翻译流程,包括文本分块、并行翻译和结果合并

翻译流程

  1. 文本分块:将长文本分割为适合翻译的小块
  2. 并行翻译:使用多线程提高翻译效率
  3. 结果合并:将翻译结果合并并与原始字幕对齐

配置选项

翻译相关的配置可以在config.yaml中设置:

# Language settings, written into the prompt, can be described in natural language
target_language: '简体中文'

# *Number of LLM multi-threaded accesses, set to 1 if using local LLM
max_workers: 4

示例代码

from core._4_2_translate import translate_all

# 执行翻译流程
translate_all()

配音合成接口

配音合成模块负责将翻译后的文本转换为自然语音,并与视频时间轴对齐。核心实现位于core/_10_gen_audio.py文件中。

主要功能函数

  • gen_audio(): 执行完整的配音合成流程,包括TTS生成、音频调整和合并

配音流程

  1. TTS生成:使用选定的TTS引擎生成语音片段
  2. 音频调整:调整音频速度以匹配视频时间轴
  3. 音频合并:将多个音频片段合并为最终配音

TTS引擎选择

VideoLingo支持多种TTS引擎,可在config.yaml中配置:

# TTS selection [sf_fish_tts, openai_tts, gpt_sovits, azure_tts, fish_tts, edge_tts, custom_tts]
tts_method: 'azure_tts'

# Azure configuration, 302.ai API only
azure_tts:
  api_key: 'YOUR_302_API_KEY'
  voice: 'zh-CN-YunfengNeural'

# Edge TTS configuration
edge_tts:
  voice: 'zh-CN-XiaoxiaoNeural'

音频速度调整

配音合成会自动调整音频速度以匹配视频时间轴,相关配置如下:

# *Audio speed range
speed_factor:
  min: 1
  accept: 1.2 # Maximum acceptable speed
  max: 1.4

配置文件详解

config.yaml是VideoLingo的核心配置文件,包含了所有功能模块的参数设置。以下是一些关键配置项的说明:

基本设置

display_language: "zh-CN"  # 界面显示语言
target_language: '简体中文'  # 目标翻译语言
demucs: true  # 是否使用Demucs进行人声分离
burn_subtitles: true  # 是否将字幕烧录到视频中

API设置

api:
  key: 'your-api-key'  # API密钥
  base_url: 'https://yunwu.ai'  # API基础URL
  model: 'gpt-4.1-2025-04-14'  # 使用的LLM模型

高级设置

# *Maximum number of words for the first rough cut
max_split_length: 20

# *Merge audio configuration
min_subtitle_duration: 2.5  # 最小字幕持续时间
min_trim_duration: 3.5  # 小于此值的字幕不分割
tolerance: 1.5  # 允许的时间误差

批量处理工具

对于需要处理多个视频的场景,VideoLingo提供了批量处理工具,位于batch/OneKeyBatch.bat。使用此工具可以自动处理多个视频文件,大大提高工作效率。

批量处理的详细说明可以参考batch/README.zh.md文件。

总结与展望

VideoLingo提供了从视频下载、语音识别、字幕切割、多语言翻译到配音合成的完整接口,实现了视频本地化的全流程自动化。通过灵活配置config.yaml文件,用户可以根据具体需求调整各个模块的行为,获得高质量的本地化视频。

未来,VideoLingo将继续优化现有功能,增加更多高级特性,如情感语音合成、多角色配音等,进一步提升视频本地化的效率和质量。

如果你在使用过程中遇到任何问题,或有功能改进建议,欢迎参考官方文档docs/pages/docs/introduction.zh-CN.md或查看项目源码获取更多帮助。

VideoLingo演示

登录后查看全文
热门项目推荐
相关项目推荐