{"id":51637099,"url":"https://github.com/yzfly/lightvideo","last_synced_at":"2026-07-13T15:30:59.993Z","repository":{"id":369397814,"uuid":"1289346080","full_name":"yzfly/lightvideo","owner":"yzfly","description":"轻影 LightVideo - FFmpeg 视频工具箱,拖进来就能用。视频压缩/转格式/合并/剪辑/AI自动字幕/录音转文字,内置引擎零依赖,本地AI不上传。Video toolbox powered by FFmpeg \u0026 SenseVoice: compress, convert, merge, trim, auto-subtitle, speech-to-text. Tauri + Vue3.","archived":false,"fork":false,"pushed_at":"2026-07-05T04:19:31.000Z","size":4984,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-05T06:10:51.662Z","etag":null,"topics":["asr","capcut-alternative","cross-platform","desktop-app","ffmpeg","gif-converter","linux","macos","sensevoice","sherpa-onnx","speech-to-text","subtitles","tauri","video-compression","video-converter","video-editor","vue3","windows"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yzfly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-07-04T16:23:12.000Z","updated_at":"2026-07-05T04:19:34.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/yzfly/lightvideo","commit_stats":null,"previous_names":["yzfly/lightvideo"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/yzfly/lightvideo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yzfly%2Flightvideo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yzfly%2Flightvideo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yzfly%2Flightvideo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yzfly%2Flightvideo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yzfly","download_url":"https://codeload.github.com/yzfly/lightvideo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yzfly%2Flightvideo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35427834,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-13T02:00:06.543Z","response_time":119,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asr","capcut-alternative","cross-platform","desktop-app","ffmpeg","gif-converter","linux","macos","sensevoice","sherpa-onnx","speech-to-text","subtitles","tauri","video-compression","video-converter","video-editor","vue3","windows"],"created_at":"2026-07-13T15:30:59.304Z","updated_at":"2026-07-13T15:30:59.980Z","avatar_url":"https://github.com/yzfly.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n![轻影 LightVideo](docs/screenshots/banner.png)\n\n**FFmpeg 视频工具箱 · 拖进来就能用**\n\n压缩、转格式、合并、剪辑、变速、加水印、AI 自动字幕、录音转文字——\n把最常用的视频处理做成一个干净的桌面应用，内置 FFmpeg 与本地语音识别，零依赖，下载即用。\n\n[![平台](https://img.shields.io/badge/平台-macOS%20%7C%20Windows%20%7C%20Linux-1664FF)](../../releases)\n[![Tauri](https://img.shields.io/badge/Tauri-2.0-FFC131?logo=tauri\u0026logoColor=white)](https://v2.tauri.app/)\n[![Vue](https://img.shields.io/badge/Vue-3-42b883?logo=vuedotjs\u0026logoColor=white)](https://vuejs.org/)\n[![License](https://img.shields.io/badge/License-MIT-green)](LICENSE)\n[![Release](https://img.shields.io/github/v/release/yzfly/lightvideo?color=1664FF\u0026label=下载)](../../releases)\n\n[下载安装](../../releases) · [功能一览](#十七个工具) · [从源码构建](#从源码构建) · [常见问题](#常见问题)\n\n\u003c/div\u003e\n\n---\n\n一切源于一条和 AI 一起发掘出来的指令：\n\n```bash\nffmpeg -i input.mp4 -c:v libx264 -preset medium -crf 23 output.mp4\n```\n\n它能在肉眼无损的画质下把视频压小 50%~90%。但不是每个人都愿意打开终端。**轻影把这条指令、以及 FFmpeg 最常用的能力，做成了一个拖进来就能用的桌面应用。**\n\n## 界面预览\n\n**视频压缩**——批量队列、实时进度、压缩前后对比一目了然：\n\n![视频压缩](docs/screenshots/compress.png)\n\n**录音转文字**——会议录音、语音备忘、播客，本地 AI 转成文字稿，不联网、不上传：\n\n![录音转文字](docs/screenshots/transcribe.png)\n\n**AI 自动字幕**——识别人声生成字幕，可输出 SRT 或直接烧录进画面：\n\n![自动字幕](docs/screenshots/asr.png)\n\n## 十七个工具\n\n| 分组 | 工具 |\n|------|------|\n| **视频** | 视频压缩（CRF 肉眼无损）· 压缩到指定大小（两遍编码，应对微信等平台限制）· 格式转换（秒级换容器 / 重编码）· 视频合并（同参数无损拼接）· 视频剪辑（无损快剪 / 帧级精准）· 视频变速（0.5×–3×，音调自动修正）· 视频倒放 |\n| **画面** | 旋转翻转 · 画面裁剪（比例居中裁剪）· 横竖屏适配（16:9 ⇄ 9:16，模糊背景铺满）· 加水印（位置 / 大小 / 透明度） |\n| **音频** | 提取音频（MP3/M4A/WAV/FLAC）· 音量调整 / 移除音轨 · 配背景音乐（混音 / 循环 / 淡出）· **录音转文字**（本地 AI，输出文字稿或带时间戳 SRT） |\n| **字幕** | 烧录字幕（SRT/ASS，中文字体自动适配）· **AI 自动字幕**（本地识别，中英粤日韩，生成 SRT 或直接烧录） |\n| **图像** | 视频转 GIF（调色板两阶段算法）· 视频截图 |\n\n通用能力：**批量队列**串行处理 · **实时进度**（百分比 / 速度 / 剩余时间）· **单帧效果预览**（水印 / 裁剪 / 字幕先看效果再开跑）· 输出**永不覆盖**原文件 · 失败一键重试。\n\n**关于 AI 能力**：语音识别使用 [SenseVoice](https://github.com/FunAudioLLM/SenseVoice)（FunASR 系）模型 + [sherpa-onnx](https://github.com/k2-fsa/sherpa-onnx) 运行时，纯本地推理，识别速度约为实时的 30 倍。模型（约 230MB）首次使用时自动下载（支持断点续传与国内镜像），之后完全离线——你的录音和视频永远不会离开你的电脑。\n\n## 下载使用\n\n前往 [Releases](../../releases) 下载对应平台的安装包：\n\n| 平台 | 安装包 |\n|------|--------|\n| macOS (Apple Silicon) | `LightVideo_x.x.x_aarch64.dmg` |\n| macOS (Intel) | `LightVideo_x.x.x_x64.dmg` |\n| Windows 10/11 | `LightVideo_x.x.x_x64-setup.exe` |\n| Linux | `LightVideo_x.x.x_amd64.AppImage` / `.deb` |\n\nmacOS 版本已签名并通过 Apple 公证，打开无任何安全提示。\n\n**三步上手**：选一个工具 → 拖入文件 → 点开始。就这样。\n\n## 从源码构建\n\n依赖：[Rust](https://rustup.rs/) stable、Node.js 18+\n\n```bash\ngit clone https://github.com/yzfly/lightvideo.git \u0026\u0026 cd lightvideo\n\n# 1. 安装依赖\nnpm install \u0026\u0026 npm install --prefix frontend\n\n# 2. 下载静态 FFmpeg 与语音识别运行时 (打进应用的 sidecar 二进制)\n./scripts/download_ffmpeg.sh\n./scripts/download_asr_runtime.sh\n\n# 3. 开发调试（热重载）\nnpm run dev\n\n# 4. 构建安装包\nnpm run build\n```\n\n发布：推送 `v*` 标签即触发 GitHub Actions 自动构建四平台安装包。\n\n## 技术架构\n\n- **外壳**：[Tauri v2](https://v2.tauri.app/) —— 原生 WebView，安装包小、内存占用低\n- **界面**：Vue 3 + Vite —— 亮色系设计，拖拽交互\n- **编码内核**：FFmpeg 以 [sidecar](https://v2.tauri.app/develop/sidecar/) 形式内置静态构建\n- **语音识别**：sherpa-onnx 静态 CLI + SenseVoice int8 模型 + Silero VAD，纯本地推理\n- **工具注册表**：`frontend/src/tools.js` 声明式定义每个工具的参数、校验与 ffmpeg 命令构建——**新增一个工具只需登记一个对象**，欢迎 PR\n\n```\nfrontend/            Vue 3 界面 + 任务调度 (src/backend.js) + 工具注册表 (src/tools.js)\nsrc-tauri/           Tauri 外壳与少量 Rust 命令\nsrc-tauri/binaries/  静态 FFmpeg / sherpa-onnx sidecar (由 scripts/ 下载, 不入库)\nscripts/             sidecar 下载脚本、应用图标生成脚本\n.github/workflows/   多平台自动发布流水线\ndocs/                README 素材与截图 demo 模式 (?demo=\u003ctoolId\u003e)\n```\n\n## 常见问题\n\n**为什么有的视频压不小？**\n说明它已经用高效参数编码过了。CRF 编码保证\"质量恒定\"，不保证\"一定变小\"——遇到这种情况工具会如实告诉你。\n\n**语音识别的数据会上传吗？**\n不会。模型下载到本地后，识别全程离线运行，断网也能用。\n\n**无损快剪的切点为什么有偏差？**\n无损模式不重编码，切点只能落在关键帧上，可能偏差 1-2 秒；需要帧级精度时用「精准剪辑」。\n\n**和剪映是什么关系？**\n不是竞品。剪映赢在创作（时间轴、特效、转场），轻影赢在快——压缩、转格式、转文字这类\"不值得打开剪映\"的活儿，拖进来十秒出结果，还能批量。\n\n**支持 H.265 / AV1 吗？**\n当前以 H.264 为核心——兼容性最好，任何设备都能播。H.265 与硬件加速在路线图上。\n\n## 「轻」系列\n\n本地优先的轻工具家族，同样的设计语言，同样的零依赖：\n\n- 🎬 **轻影 LightVideo**（本项目）— FFmpeg 视频工具箱\n- 📄 [**轻卷 LightScroll**](https://github.com/yzfly/lightscroll) — 4MB 的 PDF 工具箱：阅读 / 防删除水印 / 加密解密 / 合并压缩\n\n## 许可\n\n本项目采用 [MIT](LICENSE) 协议开源，随便用。\n\n内置 [FFmpeg](https://ffmpeg.org/)（GPL，静态构建来自 [martin-riedl.de](https://ffmpeg.martin-riedl.de/) 与 [BtbN/FFmpeg-Builds](https://github.com/BtbN/FFmpeg-Builds)，以独立 sidecar 进程调用）与 [sherpa-onnx](https://github.com/k2-fsa/sherpa-onnx)（Apache-2.0）。FFmpeg 是 FFmpeg 项目的商标。\n\n## 作者\n\n**云中江树** · 微信公众号「云中江树」\n\n如果轻影帮你省了时间，点个 Star ⭐ 是最好的鼓励。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyzfly%2Flightvideo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyzfly%2Flightvideo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyzfly%2Flightvideo/lists"}