# 影音工坊 **Repository Path**: deepin20/mediaforge ## Basic Information - **Project Name**: 影音工坊 - **Description**: 影音工坊 MediaForge:一站式音视频播放与下载工具,集成网络视频解析、在线播放、批量下载、剪贴板监控等功能,专为统信 UOS 及 Linux 桌面环境优化。 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-21 - **Last Updated**: 2026-08-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 影音工坊 MediaForge **一站式音视频播放与下载工具** 集成网络视频解析、在线播放、批量下载、剪贴板监控等功能,专为统信 UOS 及 Linux 桌面环境优化。 --- ## ✨ 功能亮点 - 🎬 **智能解析与播放** 支持 B站、YouTube、抖音等主流视频网站,自动提取视频流地址并内嵌 VLC 播放(可无缝切换外部 VLC 模式)。 - ⬇️ **灵活下载** 可解析视频格式列表,按需选择画质下载;支持批量 URL 队列和播放列表并行下载。 - 🖥️ **剪贴板监控** 自动检测剪贴板中的视频链接,一键快速播放或解析。 - 🍪 **Cookie 支持** 可导入浏览器 Cookie 文件,突破登录限制,提升解析成功率。 - 🎛️ **丰富播放控制** 倍速调节、音量控制、进度跳转、截图、音视频轨道切换、播放列表循环。 - 📋 **日志系统** 实时查看解析和播放日志,支持过滤和导出,便于排查问题。 - 📁 **全中文界面** 原生中文菜单、按钮和提示,操作直观。 --- ## 🚀 快速开始 ### 环境要求 - Python 3.8+ - VLC 媒体播放器(`sudo apt install vlc`) - FFmpeg(用于音视频合并,`sudo apt install ffmpeg`) - pip 包管理器 ### 安装与运行 ```bash # 1. 克隆或下载项目源码 git clone https://github.com/your-repo/mediaforge.git # 如有远程仓库 cd mediaforge # 2. 安装 Python 依赖 pip install -r requirements.txt # 3. 启动程序 python -m mediaforge.main ``` > 若提示缺少 `tkinter`,请安装 `python3-tk`(`sudo apt install python3-tk`)。 --- ## ⚙️ 配置说明 ### Cookie 设置(推荐用于 B站、抖音等) 1. 在浏览器中登录目标网站。 2. 安装浏览器扩展 **“Get cookies.txt LOCALLY”** 并导出 `cookies.txt` 文件(Netscape 格式)。 3. 在影音工坊中,进入 **“设置” → “Cookie”**: - 选择 **“来源”** 为 **“文件”**,浏览选择导出的 `cookies.txt`。 - 或选择 **“浏览器”** 并指定浏览器(Chrome/Firefox),程序自动提取(需关闭浏览器并安装 `browser_cookie3`)。 4. 点击 **“保存设置”**,之后解析的视频流将携带 Cookie。 ### 网络代理 在“设置”的“常规”中填写代理地址(如 `http://127.0.0.1:7890`),全局生效。 --- ## 📖 使用指南 ### 播放视频 1. 在顶部输入框粘贴视频链接(或点击“示例网站”快速体验)。 2. 点击 **“解析”**(若当前在“播放”标签页)等待解析完成,将自动下载并播放(网络视频会先下载合并为本地文件,首次较慢)。 3. 播放过程中可使用进度条、倍速、截图等功能。 ### 下载视频 1. 切换到 **“下载”** 标签页。 2. 输入或粘贴视频链接,点击 **“解析当前URL”**。 3. 格式列表显示后,选中所需格式(或启用“智能筛选”自动匹配)。 4. 点击 **“下载选中格式”** 或 **“下载最佳画质”**。 ### 批量任务 - 在 **“批量任务”** 标签页: - **URL 列表**:每行一个链接,点击“添加到队列”,后台顺序下载。 - **播放列表**:输入播放列表 URL,设置集数范围和并行数,点击“解析播放列表”后下载。 ### 剪贴板监控 点击工具栏的 **“监视剪贴板”** 开关,当复制到新的视频链接时,程序会自动填入 URL 并弹窗询问是否播放(静默模式可跳过确认)。 --- ## 🛠 故障排除 | 问题 | 建议解决方案 | |------|------------| | **解析成功但无声音** | B站视频流常为纯视频和纯音频分离,程序会自动下载合并。请确保已安装 FFmpeg。若仍无声,请检查系统音量或 VLC 音频输出设置。 | | **播放黑屏/无画面** | ① 检查 VLC 是否正常安装;② 在“设置”中尝试切换视频输出模块(`xcb_x11` / `xv` / `glx`),需修改 `player.py` 中的 `--vout` 参数;③ 程序会自动降级到外部 VLC 模式。 | | **Cookie 提取失败** | 关闭目标浏览器后重试;或手动导出 `cookies.txt` 并使用“文件”来源。 | | **yt-dlp 解析失败** | 更新 yt-dlp:`pip install --upgrade yt-dlp`;或尝试更换网络环境(某些地区需代理)。 | | **下载慢** | 在“设置”中增加分片线程数,或调整限速(不限速为 0)。 | --- ## 📁 目录结构 ``` mediaforge/ ├── core/ # 核心引擎(解析、下载、播放器封装) ├── ui/ # 界面组件(主窗口、各标签页、日志窗口) ├── models/ # 配置、历史、存档管理 ├── utils/ # 辅助工具(日志、剪贴板、异常等) ├── main.py # 程序入口 ├── requirements.txt └── README.md # 本文件 ``` --- ## 🤝 贡献 欢迎提交 Issue 和 Pull Request。改进建议包括: - 支持更多视频网站的解析 - 优化 UI 交互 - 增加下载进度条更精细的控制 --- ## 📄 许可证 本项目采用 **MIT 许可证**,详情见 [LICENSE](LICENSE) 文件。 --- ## 📧 联系 如有问题,请在本仓库提交 Issue,或联系开发者([your-email@example.com])。 --- **影音工坊 MediaForge** —— 让影音处理更简单。