
MediaSeg
MediaSeg 是一款稳定、本地优先的 macOS 实用程序,它使用 ffmpeg/ffprobe 和 AI 辅助的、基于目标的大小调整策略,将大型 MP4/WEBM 媒体文件分割成可上传的分块,并保持质量,分块大小可配置。
https://github.com/exaedge/MediaSeg?ref=producthunt&utm_source=aipure

产品信息
更新于:2026年06月23日
什么是 MediaSeg
MediaSeg 是一款轻量级 macOS 工具(Apple Silicon),旨在帮助您将长篇媒体分解为较小的文件,以适应 NotebookLM 和其他受大小限制的工作流的常见上传限制。它完全在本地文件上运行,专注于可靠性和质量保存,在自动创建的输出文件夹中生成按顺序命名的分块。MediaSeg 提供用于快速自动化的 CLI 和带有拖放、输出文件夹选择和会话日志的 PySide6 GUI,它依赖于本地安装的 ffmpeg/ffprobe 进行探测和分割。
MediaSeg 的主要功能
MediaSeg 是一个本地优先的 macOS 实用程序(适用于 Apple Silicon),它将大型媒体文件分割成可供上传的块,并在可能的情况下保留质量。它使用 ffmpeg/ffprobe 进行探测和分割,旨在将每个块保持在可配置的大小限制(默认为 200MB)内,并进行目标范围优化(通常为限制的 90%–98%),并生成组织整齐的输出文件夹,其中包含按顺序命名的文件。它提供 CLI 和 PySide6 GUI,支持拖放、日志和依赖项检查,专为将长视频准备用于 NotebookLM 等有大小限制的工具的工作流程而设计。
本地优先媒体分割: 完全在设备上处理文件(无云端),将大型视频分割成适合上传限制的较小块,同时尝试保留原始质量。
质量保留分割策略(尽可能流复制): 优先使用 ffmpeg 流复制模式(-c copy)以避免重新编码并保持原始质量,当无法实现精确目标时,回退到最佳有效块大小。
可配置的块大小与优化: 允许您设置最大块大小(默认为 200MB),并将块大小优化到目标范围(约为限制的 90%–98%),同时强制执行硬上限。
GUI + CLI 工作流程: 包括用于脚本和自动化的 CLI,以及带有拖放、输出文件夹选择、活动状态和可折叠会话日志的 PySide6 桌面 GUI。
支持 WEBM 转换路径的格式: 支持 MP4 和 WEBM 输入;WEBM 在分割前进行转换(注意 macOS VideoToolbox 支持转换),承认可能更高的 CPU/时间成本。
有组织的输出和可预测的命名: 自动创建带时间戳的输出文件夹和顺序文件名(例如,TrainingVideo_001.mp4、_002.mp4),以便于跟踪和上传。
MediaSeg 的使用场景
AI 工具上传准备(NotebookLM 及类似工具): 将长录音分割成符合大小要求的块,以适应 AI 分析、摘要或知识工作流程的严格上传限制。
企业培训与赋能分发: 将大型培训课程分解为可管理的部分,用于内部门户、LMS 上传或电子邮件/DM 分发,其中存在文件大小限制。
教育讲座发布: 将冗长的讲座捕获分割成更小的文件,用于学校平台或学生共享,保持质量不变和组织一致。
播客/视频制作交接: 当平台或传输工具对每个文件施加限制时,为协作者、审阅者或客户创建可供上传的部分。
合规/归档打包: 将大型录音(会议、审计、事件审查)准备成标准化块大小,用于限制单个对象大小的存储系统。
优点
本地处理可保护隐私并避免云依赖。
设计旨在尽可能通过避免重新编码来保留质量(ffmpeg 流复制)。
灵活的用户体验:CLI(自动化)和 GUI(拖放),带有有用的日志记录和依赖项检查。
可预测的输出组织(带时间戳的文件夹,顺序命名)简化了上传和跟踪。
缺点
平台限制:macOS (Apple Silicon),要求 macOS 15+ 和 Python 3.13+。
依赖外部依赖项(ffmpeg/ffprobe 必须已安装并可在 PATH 中找到)。
输入格式支持目前有限(MP4/WEBM;MOV/MKV/仅音频正在计划中)。
WEBM 工作流程可能由于分割前的转换而较慢且更占用 CPU。
如何使用 MediaSeg
1) 获取 MediaSeg: 从 https://github.com/exaedge/MediaSeg/releases/latest 下载最新版本(或从 https://github.com/exaedge/MediaSeg 克隆仓库)。
2) 确认您的系统符合要求: 使用运行 macOS 15 Sequoia 或更高版本且安装了 Python 3.13+ 的 Apple Silicon Mac。
3) 创建并激活虚拟环境(推荐): 在 MediaSeg 文件夹中运行:`python3 -m venv .venv`,然后运行 `source .venv/bin/activate`。
4) 安装 GUI 依赖项 (PySide6): 运行:`pip install PySide6`。
5) 安装 FFmpeg(包括 ffprobe): 通过 Homebrew 安装:`brew install ffmpeg`。MediaSeg 依赖于 `ffmpeg` 和 `ffprobe` 在您的 PATH 中可用。
6) 验证 FFmpeg 工具是否可用: 在终端中,确认这两个命令都有效:`ffmpeg -version` 和 `ffprobe -version`。
7) 使用 CLI 分割视频(默认 200MB 分块): 运行:`python3 mediaseg.py "/path/to/video.mp4"`。MediaSeg 将创建一个输出文件夹和顺序分块文件。
8) 使用 CLI 和自定义最大大小分割视频: 运行:`python3 mediaseg.py "video.mp4" --max-size 130` 以将分块大小限制在 130MB 以下。
9) 了解支持的输入和 WEBM 行为: 支持的输入:MP4 和 WEBM。WEBM 文件在分割前会进行转换(转换可能需要更长时间并占用更多 CPU)。
10) 运行 GUI: 使用 `python3 mediaseg_gui.py` 启动桌面应用程序 UI。
11) 使用 GUI 分割媒体: 将文件拖放到窗口中,设置分块大小限制,如果需要,选择一个输出文件夹,然后单击“开始分割”。
12) 如果 GUI 中禁用了分割,请修复依赖项: 如果缺少 `ffmpeg`/`ffprobe`,MediaSeg 会显示警告并禁用“开始分割”。使用 GUI 菜单 `Help > Setup ffmpeg` 并确保工具已安装并在 PATH 中。
13) 查找您的输出文件: MediaSeg 会生成一个带时间戳的输出文件夹,例如 `TrainingVideo_20260614-101523/`,其中包含顺序文件,例如 `TrainingVideo_001.mp4`、`TrainingVideo_002.mp4` 等。
14) (可选) 从源代码构建 macOS 应用程序: 对于可分发的应用程序,运行 `./build_public.sh`(输出 `dist/MediaSeg.app`)或 `./build_private.sh`(输出 `dist/MediaSeg.app` 和 `dist/MediaSeg.dmg`)。注意:构建不捆绑 ffmpeg;目标 Mac 必须在 PATH 中包含 `ffmpeg`/`ffprobe`。
15) 故障排除并提供反馈: 如果您遇到问题,请查看 GUI 帮助菜单(例如,“常见问题”),并在 https://github.com/exaedge/MediaSeg/issues 上打开一个 GitHub Issue,提供应用程序版本、macOS 版本、重现步骤以及会话日志(如果可用)。
MediaSeg 常见问题
MediaSeg 是一个本地 macOS 实用程序,它将大型媒体文件分割成可供上传的块,同时尽可能地保持质量。











