video_processing_service

GeekyWizKidMIT长期未更新

自动化视频处理服务,能从视频中提取音频、生成字幕并把字幕压回视频,省去手工剪辑和字幕对齐的麻烦。

Video Processing Service is an automated video processing service that supports extracting audio from videos, generating subtitles, and embedding subtitles into the video.

暂无版本204star34fork同步于 2026-11-07 07:33 UTC

怎么上手

由 README 提炼,执行前请确认
git clone https://github.com/GeekyWizKid/video_processing_service.git
cd video_processing_service
pip install -r requirements.txt
python app.py
硬件要求按 README 说明

README 未说明显存或 GPU 要求,仅注明 Python 版本 3.9.12

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

基于 Flask 的视频处理服务,自动完成音频提取、Whisper 字幕生成与字幕嵌入

自动化视频处理服务,能从视频中提取音频、生成字幕并把字幕压回视频,省去手工剪辑和字幕对齐的麻烦。

核心能力

  • 从视频中提取音频并保存为 WAV,支持自定义采样率
  • 调用 Whisper 模型自动生成中文及其他语言字幕
  • 用 FFmpeg 将字幕嵌入视频,输出带字幕的 MP4
  • 提供 Flask HTTP 接口,上传视频即返回下载链接

容易踩的坑

需自行安装 FFmpeg 并确保可被调用;Whisper 模型需首次运行时下载;服务默认监听 0.0.0.0:5000,需先创建 uploads 和 outputs 目录

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

0 个版本

暂无 release 数据(可能没有发版,或尚未同步)。

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Video Processing Service

    Slogan

    从此再无生番!

    项目介绍

    Video Processing Service 是一个用于自动化视频处理的服务,支持从视频中提取音频、生成字幕并将字幕嵌入到视频中的功能。

    该项目利用 FFmpeg 和 Whisper 等开源工具,提供高效、可扩展的处理流程,适用于各种视频和音频处理需求

    功能特性

    • 音频提取: 从视频中提取音频并保存为 wav 格式,支持自定义采样率
    • 字幕生成:使用 Whisper 模型自动生成字幕,支持中文和其他语言
    • 嵌入字幕:使用 FFmpeg 将生成的字幕嵌入到视频中,生成带有字幕的最终视频文件
    • 支持多种格式:支持常见的视频格式(如 MP4)及音频格式(如 WAV)

    项目结构

    video_processing_service/  
    ├── config/  
    │   └── paths.py                # 配置文件,定义文件路径和目录  
    ├── src/  
    │   └── video_processing.py     # 主要的视频处理逻辑  
    ├── uploads/                    # 上传的视频文件存储目录  
    ├── outputs/                    # 处理后的文件输出目录  
    │   ├── audio/                  # 提取的音频文件  
    │   ├── subtitles/              # 生成的字幕文件  
    │   ├── frames/                 # 视频帧  
    ├── app.py                       # Flask API 服务入口  
    └── requirements.txt            # 项目的依赖列表  
    

    安装及运行

    克隆项目

    git clone https://github.com/GeekyWizKid/video_processing_service.git
    
    cd video_processing_service
    

    创建虚拟环境并安装依赖

    注意:Python 版本 3.9.12,建议使用 Python 虚拟环境来隔离项目依赖。

    创建虚拟环境(可以使用 venv 或 conda)

    python -m venv venv
    
    Mac/Linux
    source venv/bin/activate
    
    Windows
    venv\Scripts\activate
    

    安装依赖

    pip install -r requirements.txt
    

    配置路径

    确保项目中的文件路径(如 uploads 和 outputs 文件夹)已创建。

    你可以根据需要修改 config/paths.py 文件中的路径配置。

    运行 Flask 服务

    python app.py
    

    注意: Flask 服务将在 http://0.0.0.0:5000 启动,你可以使用该服务进行视频上传和处理。

    使用 API

    测试服务,检查服务是否运行

    curl http://127.0.0.1:5000/test
    

    上传视频并处理

    使用 POST 请求上传视频,服务会自动提取音频、生成字幕并将字幕嵌入到视频中。

    请求示例

    curl -X POST -F "file=@path_to_video.mp4" http://127.0.0.1:5000/upload
    

    响应示例

    {
      "message": "视频处理完成",
      "download_url": "/download/85_1734421479_with_subtitles.mp4"
    }
    

    下载处理后的视频

    通过下载 URL 获取处理后的文件

    curl -O http://127.0.0.1:5000/download/85_1734421479_with_subtitles.mp4
    

    依赖

    • Flask:用于构建 API 服务
    • Whisper:OpenAI 的自动语音识别模型,用于生成字幕
    • FFmpeg:用于视频和音频处理

    贡献

    如果你想贡献代码,可以通过以下步骤:

    1. Fork 本项目
    2. 创建一个新的分支 (git checkout -b feature-branch)
    3. 提交更改 (git commit -am 'Add new feature')
    4. 推送到分支 (git push origin feature-branch)
    5. 创建一个新的 Pull Request

    贡献者

    许可

    该项目遵循 MIT 许可协议。