遇见数据集

X-Fun-Videos-Audios-Demo

收藏
魔搭社区2026-06-22 更新2026-07-15 收录
官方服务:

资源简介:

# X-Fun-Videos-Audios-Demo ## 目录 - [数据集简介](#数据集简介) - [数据集结构](#数据集结构) - [数据说明](#数据说明) - [数据处理脚本](#数据处理脚本) - [使用方法](#使用方法) - [注意事项](#注意事项) - [相关项目](#相关项目) ## 数据集简介 这是一个用于 **VideoX-Fun** 项目的视频音频训练演示数据集,包含17个视频音频对,适用于视频生成模型(特别是语音驱动视频生成)的训练和测试。 ## 数据集结构 ``` X-Fun-Videos-Audios-Demo/ ├── train/ # 训练视频目录 │ ├── 00000001.mp4 # 训练视频 (1280x720) │ ├── 00000002.mp4 │ └── ... (共17个视频) ├── wav/ # 音频文件目录 │ ├── 00000001.wav # 音频文件 (16kHz, 单声道) │ ├── 00000002.wav │ └── ... (共17个音频) ├── pose/ # 姿态控制视频目录 │ ├── 00000001.mp4 # 姿态视频 │ ├── 00000002.mp4 │ └── ... (共17个姿态视频) ├── metadata_origin.json # 原始元数据(不含音频路径) ├── metadata.json # 数据集信息(基础版) ├── metadata_add_width_height.json # 数据集信息(包含宽高信息) ├── process_json_add_width_and_height.py # 为元数据添加视频宽高信息 ├── process_json_extra_wav.py # 从视频中提取音频并生成元数据 ├── .gitattributes # Git LFS 配置文件 └── README.md # 本文件 ``` ## 数据说明 ### 视频信息 - **数量**: 17个训练视频 - **格式**: MP4 (H.264编码) - **分辨率**: 1280 x 720 (宽 x 高),16:9比例 - **内容**: 人物说话视频,包含口型和面部表情变化 ### 音频信息 - **数量**: 17个音频文件 - **格式**: WAV (PCM 16-bit) - **采样率**: 16000 Hz - **声道**: 单声道 - **内容**: 与视频对应的人声音频,主要为打招呼("hi")等简短语音 ### 标签描述 所有视频均使用详细的英文描述,包含: - 人物外貌特征(发型、服装、表情) - 动作描述(头部转动、嘴唇动作、手势) - 场景环境(背景、光线、氛围) - 语音内容(如 "hi", "hello" 等) ### 姿态控制视频(用于Wan-S2V) - **数量**: 17个姿态视频,与训练视频一一对应 - **格式**: MP4 - **用途**: 作为姿态控制条件输入 ### 元数据文件 #### metadata_origin.json 原始版本的元数据文件,包含: - `file_path`: 视频文件路径 - `text`: 视频标签描述 - `control_file_path`: 姿态控制视频路径 #### metadata.json 基础版本的元数据文件,额外包含: - `audio_path`: 音频文件路径 #### metadata_add_width_height.json 增强版本的元数据文件,额外包含: - `height`: 视频高度(720) - `width`: 视频宽度(1280) ## 数据处理脚本 本数据集提供两个 Python 脚本,用于数据预处理。 ### process_json_extra_wav.py 从视频文件中提取音频并保存为 16kHz 单声道 WAV 文件,同时在元数据 JSON 中添加 `audio_path` 字段。 **依赖安装**: ```bash pip install moviepy ``` **使用 base_dir 示例**: ```bash python datasets/X-Fun-Videos-Audios-Demo/process_json_extra_wav.py \ --input_file datasets/X-Fun-Videos-Audios-Demo/metadata_origin.json \ --output_file datasets/X-Fun-Videos-Audios-Demo/metadata.json \ --output_audio_dir datasets/X-Fun-Videos-Audios-Demo/wav \ --base_dir datasets/X-Fun-Videos-Audios-Demo \ --num_processes 4 ``` **参数说明**: - `--input_file`: 输入 JSON 文件路径(包含视频路径信息) - `--output_file`: 输出 JSON 文件路径(添加 audio_path 字段) - `--output_audio_dir`: 提取的音频文件保存目录 - `--base_dir`: 视频文件的基目录(当 JSON 中的 file_path 为相对路径时使用,会自动拼接) - `--num_processes`: 并行处理的进程数(默认为 CPU 核心数) --- ### process_json_add_width_and_height.py 读取图片或视频文件的分辨率,在元数据 JSON 中添加 `width` 和 `height` 字段。支持 JPG、PNG、MP4、AVI 等常见格式。 **依赖安装**: ```bash pip install Pillow opencv-python ``` **使用 base_dir 示例**: ```bash python datasets/X-Fun-Videos-Audios-Demo/process_json_add_width_and_height.py \ --input_file datasets/X-Fun-Videos-Audios-Demo/metadata.json \ --output_file datasets/X-Fun-Videos-Audios-Demo/metadata_add_width_height.json \ --base_dir datasets/X-Fun-Videos-Audios-Demo \ --num_processes 4 ``` **参数说明**: - `--input_file`: 输入 JSON 文件路径 - `--output_file`: 输出 JSON 文件路径(添加 width 和 height 字段) - `--base_dir`: 媒体文件的基目录(当 JSON 中的 file_path 为相对路径时使用) - `--num_processes`: 并行处理的进程数(默认为 CPU 核心数) **支持的文件格式**: - **图片**: .jpg, .jpeg, .png, .bmp, .webp, .tiff, .gif - **视频**: .mp4, .avi, .mov, .mkv, .flv, .wmv, .webm ### 典型处理流水线 先提取音频,再添加宽高信息: **场景 1:使用相对路径 + base_dir** ```bash # 步骤 1: 提取音频(指定视频基目录) python datasets/X-Fun-Videos-Audios-Demo/process_json_extra_wav.py \ --input_file datasets/X-Fun-Videos-Audios-Demo/metadata_origin.json \ --output_file datasets/X-Fun-Videos-Audios-Demo/metadata.json \ --output_audio_dir datasets/X-Fun-Videos-Audios-Demo/wav \ --base_dir datasets/X-Fun-Videos-Audios-Demo # 步骤 2: 添加宽高信息(指定媒体基目录) python datasets/X-Fun-Videos-Audios-Demo/process_json_add_width_and_height.py \ --input_file datasets/X-Fun-Videos-Audios-Demo/metadata.json \ --output_file datasets/X-Fun-Videos-Audios-Demo/metadata_add_width_height.json \ --base_dir datasets/X-Fun-Videos-Audios-Demo ``` **场景 2:使用绝对路径** ```bash # 步骤 1: 从视频中提取音频 python datasets/X-Fun-Videos-Audios-Demo/process_json_extra_wav.py \ --input_file datasets/X-Fun-Videos-Audios-Demo/metadata_origin.json \ --output_file datasets/X-Fun-Videos-Audios-Demo/metadata.json \ --output_audio_dir datasets/X-Fun-Videos-Audios-Demo/wav # 步骤 2: 添加视频宽高信息 python datasets/X-Fun-Videos-Audios-Demo/process_json_add_width_and_height.py \ --input_file datasets/X-Fun-Videos-Audios-Demo/metadata.json \ --output_file datasets/X-Fun-Videos-Audios-Demo/metadata_add_width_height.json ``` **性能提示**: - 对于大量文件,建议设置 `--num_processes` 为 CPU 核心数或略低 - 视频处理较耗时,可适当减少进程数避免内存溢出 ## 使用方法 克隆数据集到VideoX-Fun的datasets文件夹。 ```bash modelscope download --dataset PAI/X-Fun-Videos-Audios-Demo --local_dir ./datasets/X-Fun-Videos-Audios-Demo ``` 在 VideoX-Fun 的配置文件中指定数据集路径: ```bash export DATASET_NAME="datasets/X-Fun-Videos-Audios-Demo" export DATASET_META_NAME="datasets/X-Fun-Videos-Audios-Demo/metadata_add_width_height.json" NCCL_DEBUG=INFO ``` ## 注意事项 - 本数据集仅用于演示和测试目的 - 推荐使用 `metadata_add_width_height.json` 以获取完整的视频尺寸信息 - 视频和音频文件需保持一一对应关系 ## 相关项目 - [VideoX-Fun](https://github.com/aigc-apps/VideoX-Fun)

提供机构:
maas
创建时间:
2026-04-10
二维码
社区交流群
二维码
科研交流群
商业服务