综合介绍
FoleyCrafter 是一个由 OpenMMLab 开发的开源项目,旨在为无声视频生成生动且同步的音效。该项目利用先进的人工智能技术,通过分析视频内容,生成与之语义相关且时间同步的音效,从而增强视频的真实感和情感深度。FoleyCrafter 的目标是为电影、游戏等领域提供高质量的音效解决方案,提升观众的视听体验。
自动合成配音工作流:https://openart.ai/workflows/t8star/foleycrafter/wZyBSeaa2lvgU3c3NlcH
功能列表
- 视频到音频生成:根据视频内容生成语义相关且同步的音效。
- 文本提示音效生成:通过文本提示生成特定场景的音效。
- 时间对齐:确保生成的音效与视频内容时间同步。
- Gradio 界面:提供用户友好的界面,方便用户进行音效生成操作。
- 开源代码:提供完整的代码库,方便开发者进行二次开发和定制。
使用帮助
安装流程
- 准备环境:
- 安装 Conda 环境:
conda env create -f requirements/environment.yaml
- 激活环境:
conda activate foleycrafter
- 安装 Git LFS:
conda install git-lfs
,然后运行git lfs install
- 安装 Conda 环境:
- 下载检查点:
- 运行
inference.py
自动下载检查点,或手动下载并放置在checkpoints
目录下。
- 运行
- 启动 Gradio 界面:
- 运行
python app.py --share
启动 Gradio 界面。
- 运行
使用流程
- 视频到音频生成:
- 运行
python inference.py --save_dir=output/sora/
,将生成的音频文件保存在指定目录。
- 运行
- 时间对齐:
- 运行
python inference.py --temporal_align --input=input/avsync --save_dir=output/avsync/
,确保生成的音效与视频内容时间同步。
- 运行
- 文本提示音效生成:
- 运行
python inference.py --input=input/PromptControl/case1/ --seed=10201304011203481429 --prompt='noisy, people talking' --save_dir=output/PromptControl/case1_prompt/
,根据文本提示生成特定场景的音效。
- 运行
详细操作步骤
- 准备环境:
- 下载并安装 Conda:https://docs.conda.io/en/latest/miniconda.html
- 克隆项目代码:
git clone https://github.com/open-mmlab/foleycrafter.git
- 进入项目目录:
cd foleycrafter
- 按照上述步骤安装依赖并配置环境。
- 下载检查点:
- 下载并放置检查点文件,确保目录结构如下:
└── checkpoints ├── semantic │ ├── semantic_adapter.bin ├── vocoder │ ├── vocoder.pt │ ├── config.json ├── temporal_adapter.ckpt │ └── timestamp_detector.pth.tar
- 启动 Gradio 界面:
- 运行
python app.py --share
启动 Gradio 界面,用户可以通过浏览器访问界面进行操作。
- 运行
- 生成音效:
- 根据需要选择不同的生成模式(视频到音频、时间对齐、文本提示),运行相应的命令生成音效文件。
通过以上步骤,用户可以轻松上手使用 FoleyCrafter,为无声视频添加生动且同步的音效,提升视频的视听体验。 /n