# meu8quicker **Repository Path**: anydev/meu8quicker ## Basic Information - **Project Name**: meu8quicker - **Description**: M3U8 Quicker 是一个基于 Tauri + Rust + React + TypeScript 构建的桌面应用,用于下载、管理与播放 M3U8 视频,支持 Windows - **Primary Language**: JavaScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://www.oschina.net/p/meu8quicker - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 5 - **Created**: 2026-05-07 - **Last Updated**: 2026-05-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # M3U8 Quicker

M3U8 Quicker icon

**M3U8 Quicker** 是一个基于 `Tauri + Rust + React + TypeScript` 构建的桌面应用,用于下载、管理与播放 `M3U8` 视频,支持 Windows、macOS 和 Linux。 项目同时包含一个可选的 浏览器 扩展:自动检测网页中 `M3U8` 视频,一键快速新建下载任务并预填下载信息。 ![下载主界面](./doc/img/download_main.png) ## 功能特性 - 支持下载 `M3U8` 格式的视频 - 支持多线程下载提高下载速度(可设置并发数) - 支持 AES-128 / AES-192 / AES-256 加密流的密钥拉取与解密 - 支持边下边播、暂停/继续下载(断点续传)、失败分片重试 - 自动合并ts和转mp4格式 - 支持多音轨(视频、音频、字幕分离的m3u8视频)下载 - 可设置代理 - 集成工具: - 合并 ts - ts 转 mp4 - 本地m3u8转mp4 - FFmpeg功能:集成了分析视频、格式/编码转换等操作 - 安装浏览器扩展 - 支持普通视频下载:mp4/mkv/avi/wmv/flv/webm/mov/rmvb - 支持批量下载 - 支持视频预览图 修改记录:见 [CHANGELOG.md](./CHANGELOG.md) ## 使用说明 ### 安装 可在 [GitHub Releases](https://github.com/Liubsyy/M3U8Quicker/releases) 页面下载对应的桌面安装包或发行文件,下方文件链接可直接下载: | 系统 | 文件 | 说明 | | :--- | :--- | :--- | | Windows **Windows** | **x64**:[安装包](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_windows_x64_setup.exe) \| [免安装包](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_windows_x64.zip)
**x86**:[安装包](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_windows_x86_setup.exe) \| [免安装包](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_windows_x86.zip) | 大多数电脑选 x64
32 位系统选 x86 | | MacOS **MacOS** | **Apple Silicon**:[安装包](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_macos_aarch64.dmg) \| [应用包压缩](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_macos_aarch64.app.tar.gz)
**Intel**:[安装包](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_macos_x64.dmg) \| [应用包压缩](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_macos_x64.app.tar.gz) | M芯片选 Apple Silicon
Intel 芯片选 Intel | | Linux **Linux** | **安装包**:[deb](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_linux_amd64.deb) \| [rpm](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_linux_x86_64.rpm)
**免安装**:[AppImage](https://github.com/Liubsyy/M3U8Quicker/releases/latest/download/M3U8.Quicker_1.0.8_linux_amd64.AppImage) | Ubuntu/Debian/Linux Mint选deb
Fedora/RHEL/CentOS Stream/openSUSE选rpm | MacOS 首次安装时如果遇到“无法打开”或“应用已损坏”之类的权限提示,可按下面方式处理: - “系统设置 -> 隐私与安全性”中找到被拦截的应用,点击“仍要打开” - 如果仍被拦截,可在终端执行 `xattr -rd com.apple.quarantine /Applications/M3U8\ Quicker.app` 后重新打开 安装完成后首次启动应用,如果需要通过浏览器快速新建下载任务,可继续在应用内打开“工具 -> 安装浏览器扩展”查看引导。 ### 新建下载 在主界面点击“新建下载”,填写 `M3U8` 地址后即可创建任务。 如果资源需要额外请求头(可选),可以在附加 Header 中填写,例如: ```text referer:https://example.com origin:https://example.com ``` ![新建下载](./doc/img/newtask.png) 下载前可查看视频预览图 ![视频预览](./doc/img/video_preview.png) ### 下载中 任务创建后会进入下载列表,下载过程中支持以下操作: - 可手动暂停正在下载的任务 - 已暂停的任务可继续恢复下载,支持断点续传 - 下载失败的分片可重试下载失败分片 - 下载中的任务可直接打开播放器,边下边看 - 不再需要的任务可取消或移除 下载列表会持续显示任务状态、下载进度、下载速度等信息,便于随时查看当前下载情况。 ![下载中](./doc/img/download_ts.png) ### 播放 - 下载中的任务支持直接打开播放器,便于边下边看 - 下载中若跳转到未下载分片进度时,优先下载当前播放进度分片 - 已完成任务支持播放最终文件 ![播放窗口](./doc/img/playvideo.png) ### 设置 设置面板当前支持: - 主题切换 - 代理开关与代理地址 - 下载并发数量 - 下载限速 - 下载完成后是否删除临时 ts 目录、自动转换为 mp4 - FFmpeg下载和管理 ### 浏览器扩展(可选) 安装浏览器扩展后,网页中会自动扫描出`m3u8`链接和视频地址,右上角会出现一个按钮`M3U8 Quicker`,点击后唤起桌面应用新建下载任务,并自动带入 `url`、`referer`、`origin`、`user-agent`。 > 安装扩展引导:打开M3U8 Quicker-> 工具 -> 安装浏览器扩展,按引导可安装Chrome扩展、Firefox扩展和Microsoft Edge扩展。 ![Chrome 扩展安装引导](./doc/img/chrome-extension.png) 使用限制: - 不会自动传递 `Cookie` - 无法可靠读取 `HttpOnly` Cookie ## 开发与构建 ### 技术栈 - 前端:`React 19`、`TypeScript`、`Vite 8`、`Ant Design 6` - 桌面端:`Tauri 2` - 后端逻辑:`Rust` ### 环境要求 - Node.js:建议使用较新的 LTS 版本 - Rust:最低 `1.88` ### 目录结构 - `src/`:React 前端界面与页面逻辑 - `src-tauri/`:Tauri 桌面端与 Rust 后端实现 - `browser-extension/`:可选的浏览器扩展源码(`chrome/` 和 `firefox/` 子目录) - `test-hls-server/`:独立的 Rust 本地测试服务,用于把视频切成 `m3u8 + ts` - `public/`:静态资源 ### 本地开发 #### 1. 安装依赖 ```bash npm install ``` #### 2. 启动桌面应用调试 ```bash npm run tauri dev ``` ### 常用命令 | 命令 | 说明 | | --- | --- | | `npm install` | 安装前端依赖 | | `npm run dev` | 启动前端开发服务器 | | `npm run preview` | 预览前端构建产物 | | `npm run tauri dev` | 启动桌面应用开发模式 | | `npm run lint` | 检查前端代码规范 | | `npm run build` | 执行 TypeScript 检查并构建前端 | | `npm run tauri build` | 构建桌面应用安装包 | | `cargo check --manifest-path src-tauri/Cargo.toml` | 检查 Rust / Tauri 侧代码 | | `cargo test --manifest-path src-tauri/Cargo.toml` | 运行 Rust 单元测试 | ### 打包与资源说明 - 应用名称:`M3U8 Quicker` - 应用标识:`com.liubsyy.m3u8quicker` > 桌面应用打包时会把仓库根目录下的 `browser-extension/` 一并作为资源打入安装包,因此安装后的应用仍然可以为扩展安装引导提供目标目录。 > 当前仓库和默认打包配置不会直接把 `FFmpeg` 二进制预置进安装包;如用户在应用内下载或自行配置 `FFmpeg`,该部分组件适用其各自的上游许可证与分发条件。 ## License - 本仓库源码基于 Apache License 2.0 开源,详见仓库根目录下的 `LICENSE` 文件。 - 本项目运行时可使用的 `FFmpeg`、系统已安装的 `FFmpeg` 以及应用内下载的第三方 `FFmpeg` 二进制,均适用其各自许可证,不因本仓库采用 `Apache-2.0` 而改变。 - 第三方许可与说明请参见仓库根目录下的 `THIRD_PARTY_NOTICES.md`。