跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 浅色
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • 深色
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(LCZ-Blue)
  • 不使用皮肤
  • LCZ-Green
  • LCZ-Blue
  • LCZ-Black
折叠
品牌标识

抡锤者

首页 版块 标签 硬件 AI 广场
  1. 主页
  2. 版块
  3. AI音视频画图
  4. Local Subtitle Tool - 用来把影片自动制作成可编辑的多语言字幕

Local Subtitle Tool - 用来把影片自动制作成可编辑的多语言字幕

已定时 已固定 已锁定 已移动 AI音视频画图
lmstudio本地模型
3 帖子 2 发布者 96 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • imbiplaza ASUSI 离线
    imbiplaza ASUSI 离线
    imbiplaza ASUS
    至尊王者
    编写于 最后由 编辑
    #1

    本地字幕工具

    Youtube Video

    local_subtitle_tool.zip

    这是我自制的使用本地影片和剧本,建立与剧本一致的翻译字幕。本工具使用 faster-whisper 提取语音时间点,并使用本机 LM Studio 模型进行剧本匹配和翻译。它会生成可编辑的 SRT、ASS,以及已烧录字幕的 MP4;媒体内容不会传送到云端。

    功能重点

    • 拖放影片,并可输入、粘贴或拖放 .txt / .docx 剧本。
    • 为任意选定的来源语言与目标语言生成带时间码的字幕。
    • 可自行输入任何目标语言,也可使用紧凑的 Eng / Chi / Jp / Kor / Mel / India / Thai / 繁体 快捷按钮。
    • 读取 LM Studio 目前已加载的模型清单。
    • 在依照原始影片长宽比例显示的首帧预览上,直接拖动字幕位置。
    • 调整字体、字号、文字颜色、描边、描边颜色和粗体。
    • 选择自动建立 MP4,或先以手动模式编辑 SRT 后再输出。
    • 编辑已生成的 SRT 或 ASS 后,重新输出 MP4。
    • 手动保存及重新开启字幕工作项目 JSON 档。
    • 工作完成后可选择卸载 LM Studio 模型以释放模型 VRAM(不会强制清除系统 RAM)。

    系统需求

    • Windows
    • Python 3.11 或更高版本
    • 已安装 FFmpeg,并已加入 PATH
    • 已安装 LM Studio,加载指令模型并启动本地服务器

    安装 Python 套件:

    pip install -r requirements.txt
    

    若要将依赖安装在本工具私有的 vendor 文件夹,而不影响共享 Python 环境,请使用:

    pip install --target .\vendor -r requirements.txt
    

    所选 Whisper 模型会在首次使用时下载。使用 NVIDIA GPU 时,请在 GUI 选择 cuda 和 float16;使用 CPU 时请选择 cpu 和 int8。

    启动方式

    双击 run_subtitle_gui.bat,或执行:

    python subtitle_gui.py
    

    请在 LM Studio 启动本地服务器。默认地址为:

    http://127.0.0.1:1234/v1
    

    在应用程式中按 Load models,即可选择目前已加载的模型。

    使用流程

    1. 将影片拖到 Video 面板,或双击该区域浏览并选择影片。
    2. 粘贴剧本,或将 .txt / .docx 文件拖到 Script 面板。
    3. 选择来源语言、目标翻译语言及 LM Studio 模型。目标语言可任意输入,也可按 Eng、Chi、Jp、Kor、Mel、India、Thai 或 繁体。
    4. 在首帧预览上拖动示例字幕,并设置字幕样式。
    5. 选择输出模式:
      • **自动:**建立 SRT / ASS 后,立即建立已烧录字幕的 MP4。
      • **手动:**SRT 建立后暂停,编辑字幕文字或时间码,再选择 Save and render MP4。
    6. 处理完成后可使用 Preview result、Edit SRT 或 Edit ASS。

    输出文件

    文件会输出到应用程式旁的 output 文件夹。每次工作都会使用原影片名称加上时间戳,因此不会覆盖较早的输出。

    例如,名为 demo.mp4 的影片可能产生:

    demo_20260831_143012_input_script.txt
    demo_20260831_143012_asr_raw_zh.srt
    demo_20260831_143012_script_matched_zh.srt
    demo_20260831_143012_translated_English.srt
    demo_20260831_143012_translated_English_styled.ass
    demo_20260831_143012_translated_English_subtitled.mp4
    demo_20260831_143012_alignment.json
    demo_20260831_143012_subtitle_job.json
    

    English 来自 Translate to 输入的目标语言。所有翻译输出均使用 translated_<语言> 格式;例如输入 中文 时,将产生 translated_中文.srt、translated_中文_styled.ass 和 translated_中文_subtitled.mp4。Windows 文件名不支持的字符会自动改为 _。

    *_subtitle_job.json 会保存工作设定。使用 Open subtitle job 可手动恢复项目;应用程式启动时不会自动开启上一次项目。

    命令列使用

    GUI 会调用 subtitle_pipeline.py,也可直接从命令列执行:

    python subtitle_pipeline.py `
      --video "C:\Videos\demo.mp4" `
      --script "C:\Videos\script.txt" `
      --output ".\output" `
      --model "your-lm-studio-model-id" `
      --source-language zh `
      --target-language English
    

    说明

    • 剧本是字幕文字的依据;语音转写主要用于提供时间码。
    • 发布前请检查人名、界面名称、时间点和翻译内容。
    • LM Studio 的卸载操作只会释放所选模型,不会强制清理系统 RAM。

    https://lcz.me/project/dcs

    1 条回复 最后回复
    2
    • terryT 离线
      terryT 离线
      terry
      超级版主
      编写于 最后由 编辑
      #2

      我弟挺能折腾的 ,直接让agent自己折腾不好吗?

      油管:https://www.youtube.com/@抡锤者

      imbiplaza ASUSI 1 条回复 最后回复
      0
      • terryT terry

        我弟挺能折腾的 ,直接让agent自己折腾不好吗?

        imbiplaza ASUSI 离线
        imbiplaza ASUSI 离线
        imbiplaza ASUS
        至尊王者
        编写于 最后由 编辑
        #3

        @terry
        因为所有agent 还不能够精准做到我想要的东西。。。

        我是一个很懒惰的人,我先开头把自己的习惯写成skill....
        以后再真正丢给agent...

        https://lcz.me/project/dcs

        1 条回复 最后回复
        1

        你好!看起来您对这段对话很感兴趣,但您还没有一个账号。

        厌倦了每次访问都刷到同样的帖子?您注册账号后,您每次返回时都能精准定位到您上次浏览的位置,并可选择接收新回复通知(通过邮件或推送通知)。您还能收藏书签、为帖子顶,向社区成员表达您的欣赏。

        有了你的建议,这篇帖子会更精彩哦 💗

        注册 登录
        回复
        • 在新帖中回复
        登录后回复
        • 从旧到新
        • 从新到旧
        • 最多赞同


        • 登录

        • 登录或注册以进行搜索。
        • 第一个帖子
          最后一个帖子
        0
        • 版块
        • 最新
        • 标签
        • 热门
        • 用户
        • 群组