Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

YouDub是一个开源工具,旨在自动化地将优质的YouTube视频进行翻译和配音,以便将其搬运到中文互联网上。该工具使用了AI语音识别技术将音频转换为文本,然后通过大语言模型将文本翻译成中文,最后通过AI声音克隆技术将中文转换为音频。这样,我们就可以创建出具有原始YouTuber音色的中文配音视频。

License

Notifications You must be signed in to change notification settings

breakcount/YouDub

Repository files navigation

YouDub: 优质视频中文化工具

请移步 YouDub-webui

请移步 YouDub-webui

请移步 YouDub-webui

目录

简介

YouDub 是一个创新的开源工具,专注于将 YouTube 等平台的优质视频翻译和配音为中文版本。此工具融合了先进的 AI 技术,包括语音识别、大型语言模型翻译以及 AI 声音克隆技术,为中文用户提供具有原始 YouTuber 音色的中文配音视频。更多示例和信息,欢迎访问我的bilibili视频主页。你也可以加入我们的微信群,扫描下方的二维码即可。

主要特点

  • AI 语音识别:有效转换视频中的语音为文字。
  • 大型语言模型翻译:快速且精准地将文本翻译成中文。
  • AI 声音克隆:生成与原视频配音相似的中文语音。
  • 视频处理:集成的功能实现音视频的同步处理。

安装与使用指南

  1. 克隆仓库:

    git clone https://github.com/liuzhao1225/YouDub.git
  2. 安装依赖: 进入 YouDub 目录并安装所需依赖:

    cd YouDub
    pip install -r requirements.txt

    如果出现 paddlespeech 相关的依赖错误,可以访问 PaddleSpeech 官方网站 获取安装指南。

    默认安装为 CPU 版本的 PyTorch 如果你需要手动安装特定 CUDA 版本的 PyTorch,可以参考以下步骤: 首先,根据你的环境和 PyTorch 的版本,从 PyTorch 官方网站 获取适用的安装命令。例如,如果你的 CUDA 版本是 11.8,你可以使用如下命令安装 PyTorch:

    pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
  3. 环境设置

    在运行程序之前,需要进行以下环境设置:

    环境变量配置:将 .env.example 文件改名为 .env,并填入相应的环境变量。以下是需要配置的环境变量:

    • OPENAI_API_KEY: OpenAI API 的密钥,一般格式为 sk-xxx
    • MODEL_NAME: 使用的模型名称,如 'gpt-4' 或 'gpt-3.5-turbo'。对于翻译任务,使用 'gpt-3.5-turbo'足够了。'gpt-4'太贵了,一天干了我一百多刀。
    • OPENAI_API_BASE: 如果你使用的是 OpenAI 官方的 API,可以将此项留空。如果你有自己部署的支持 OpenAI API 的大模型,可以填入相应的 OpenAI API 访问的 base_url。
    • HF_TOKEN: 如果使用 speaker diarization 功能,需要提供你的 Hugging Face token,并同意 pyannote's speaker diarization agreementHF_TOKEN 可以在 Hugging Face 设置 中获取。
    • APPIDACCESS_TOKEN: 如果使用火山引擎的 TTS,需要提供火山引擎的 APPID 和 ACCESS_TOKEN,此项可能需要付费。

    TTS 设置:如果不希望使用付费的火山引擎 TTS,可以在 main.py 中将 from youdub.tts_bytedance import TTS_Clone 改为 from youdub.tts_paddle import TTS_Clone,但这可能会影响生成效果。

  4. 运行程序: 使用以下命令启动主程序:

    python main.py --input_folders /path/to/input1 /path/to/input2 --output_folders /path/to/output1 /path/to/output2 --diarize
    

    这个命令将会处理在/path/to/input1/path/to/input2路径下的视频文件,并将处理后的视频文件存储在/path/to/output1/path/to/output2路径下。--diarize选项可以开启视频文件的声纹分割功能。

    请注意,--input_folders--output_folders参数都接受多个文件夹路径,每个路径之间用空格隔开。同时,输入文件夹和输出文件夹的数量必须相同,否则程序会报错。

    例如,如果你有两个输入文件夹和两个输出文件夹,你可以这样运行程序:

    python main.py --input_folders /path/to/input1 /path/to/input2 --output_folders /path/to/output1 /path/to/output2
    

    如果你只有一个输入文件夹和一个输出文件夹,你可以这样运行程序:

    python main.py --input_folders /path/to/input --output_folders /path/to/output
    

    如果你想在处理视频文件时开启声纹分割功能,你可以添加--diarize选项:

    python main.py --input_folders /path/to/input --output_folders /path/to/output --diarize
    

    如果在从 huggingface 下载模型时报错,你可以在 .env 文件中添加:

    HF_ENDPOINT=https://hf-mirror.com
    

使用步骤

  • 准备需要翻译的视频文件并放置于输入文件夹。
  • 指定输出文件夹以接收处理后的视频。
  • 系统将自动进行语音识别、翻译、声音克隆和视频处理。

技术细节

AI 语音识别

目前,我们的 AI 语音识别功能是基于 Whisper 实现的。Whisper 是 OpenAI 开发的一款强大的语音识别系统,能够精确地将语音转换为文本。考虑到未来的效率和性能提升,我们计划评估并可能迁移到 WhisperX,这是一个更高效的语音识别系统,旨在进一步提高处理速度和准确度。

大型语言模型翻译

我们的翻译功能支持使用 OpenAI API 提供的各种模型,包括官方的 GPT 模型。此外,我们也在探索使用类似 api-for-open-llm 这样的项目,以便更灵活地整合和利用不同的大型语言模型进行翻译工作。

AI 声音克隆

声音克隆方面,我们目前使用的是 Paddle Speech。虽然 Paddle Speech 提供了高质量的语音合成能力,但目前尚无法在同一句话中同时生成中文和英文。在此之前,我们也考虑过使用 Coqui AI TTS,它能够进行高效的声音克隆,但同样面临一些限制。

视频处理

我们的视频处理功能强调音视频的同步处理,例如确保音频与视频画面的完美对齐,以及生成准确的字幕,从而为用户提供一个无缝的观看体验。

贡献指南

欢迎对 YouDub 进行贡献。您可以通过 GitHub Issue 或 Pull Request 提交改进建议或报告问题。

许可协议

YouDub 遵循 Apache License 2.0。使用本工具时,请确保遵守相关的法律和规定,包括版权法、数据保护法和隐私法。未经原始内容创作者和/或版权所有者许可,请勿使用此工具。

支持与联系方式

如需帮助或有任何疑问,请通过 GitHub Issues 联系我们。你也可以加入我们的微信群,扫描下方的二维码即可: WeChat Group

About

YouDub是一个开源工具,旨在自动化地将优质的YouTube视频进行翻译和配音,以便将其搬运到中文互联网上。该工具使用了AI语音识别技术将音频转换为文本,然后通过大语言模型将文本翻译成中文,最后通过AI声音克隆技术将中文转换为音频。这样,我们就可以创建出具有原始YouTuber音色的中文配音视频。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.6%
  • Batchfile 0.4%

AltStyle によって変換されたページ (->オリジナル) /