TorrentPlayer是一款免费开源的桌面应用,可以直接从BitTorrent网络流式播放视频与音频,无需单独的种子客户端、无需中转服务器,按下播放数秒内即可开始,拖动进度条到任意时间点通常在一秒内恢复播放。
- 项目名称:TorrentPlayer
- 核心功能:种子流式播放、任意位置即时跳转、智能后台下载队列、内置种子搜索、内置WireGuard与SOCKS5网络模式
- 适用平台:Windows、macOS、Linux
- 适用人群:影视与剧集观众、音乐播客听众、观看网络课程的学习者、注重隐私的种子使用者
- 资费模式:免费、开源(MIT或Apache-2.0双许可)、无订阅与广告
边下边播:种子像流媒体一样播放
传统种子工具从文件开头顺序下载,想看的部分往往需要等待。TorrentPlayer自研的流媒体引擎会优先请求播放位置的数据,再获取文件索引和按视频码率计算的前置缓冲窗口,无需等待完整下载。
即时跳转:拖到哪播到哪
跳转时引擎会取消不再紧急的请求,将新位置的数据块分配给最快的节点,并把最紧急的块同时向第二个节点请求,避免单个慢节点卡住播放。根据项目测量,快速链路下跳转恢复约0.3秒,公共种群中位数约0.7秒。
智能队列:后台提前下载
加入队列的内容在观看时于后台下载,正在播放的内容始终优先占用带宽;缓冲不足时其余任务会短暂暂停让路。队列按设定的顺序下载,支持拖动排序或按名称、大小、进度、速度等一次性排序。
内置搜索:按可看性排序结果
搜索结果按做种数、分辨率、来源质量、HDR以及内置播放器是否可播放等因素排序,并附带文件大小检查以识别虚假4K资源,成人分类默认排除。
音视频播放:杜比与DTS有声播放
支持MP3、FLAC、AAC/M4A/M4B、Ogg、Opus、WAV音频流式播放,字幕可自动匹配或手动加载。系统网页引擎无法解码的AC-3、E-AC-3、TrueHD与DTS音轨由内置FFmpeg在播放时转换为AAC,视频本身不做改动。
网络与隐私:三种连接模式与断网保护
支持直连(配合自有VPN应用)、应用内运行的WireGuard隧道(无需管理员权限)或SOCKS5代理。WireGuard与SOCKS5模式下内置断网保护:隧道断开时所有流量停止,不会回退到直连,隧道恢复后自动继续。
课程式整理:讲座按自然顺序排列
讲座视频按“第2讲”排在“第10讲”之前的自然顺序整理,一个种子内的视频在队列中呈现为一门课程,并可在播放前预览种子内的图片、文本和字幕。
核心优势与同类工具对比
TorrentPlayer的独特之处在于:跳转位置的数据优先获取、视频直接来自分享节点而无中转服务器、速度仅受种群限制、完全开源(包括流媒体引擎)、内置WireGuard与断网保护、无任何遥测。
| 对比维度 | TorrentPlayer | Stremio(种子插件) | WebTorrent Desktop | qBittorrent + VLC | Debrid/云服务 |
|---|---|---|---|---|---|
| 任意位置跳转播放 | 支持,跳转位置优先获取 | 支持 | 支持 | 不支持,仅按顺序播放 | 需服务先取回后才能播放 |
| 视频直接来自节点,无服务器 | 支持 | 经本地流媒体服务器 | 支持 | 支持 | 不支持,经服务商服务器 |
| 速度仅受种群限制 | 支持 | 支持 | 支持 | 支持 | 不支持,受套餐与提供商限制 |
| 免费且无需账号 | 支持 | 免费层、访客模式 | 支持 | 支持 | 不支持,付费方案 |
| 完全开源 | 支持 | 部分开源(流媒体服务器为专有) | 支持 | 支持 | 不支持 |
| 内置VPN(WireGuard)与断网保护 | 支持 | 不支持,需自备 | 不支持 | 仅代理与接口绑定 | 不适用 |
| 后台预下载队列 | 支持,与播放共享带宽 | 付费方案 | 不支持 | 仅作为下载客户端 | 云存储 |
| 无遥测 | 支持 | 不支持,依据隐私政策收集分析数据 | 不支持,有基础使用统计 | 未记录 | 未核查 |
在部分场景下其他工具更合适:Stremio和Kodi覆盖更多设备(电视、手机),VLC或mpv类播放器目前支持更多编码格式。
界面截图
适用场景与目标受众
- 影视与剧集观众:想跳过片头或直接定位到剧情中段的观众,可以借助即时跳转功能避免从头下载等待。
- 学生与自学者:观看种子形式的课程讲座时,可以借助自然排序与按顺序下载的队列,连续学习多讲内容。
- 音乐、播客与有声书听众:可以从种子直接流式播放专辑或有声书,曲目按顺序进入队列,无需先下载完整文件。
部署与搭建指南
从源码构建需要以下环境:Rust(最低支持1.90,工具链由rust-toolchain.toml固定,rustup会自动安装)、Node.js22或更新版本及npm,以及Tauri对应的系统依赖:Windows需MicrosoftC++BuildTools与WebView2(Windows11预装);macOS需XcodeCommandLineTools;Linux(Debian/Ubuntu)需安装WebKit与GStreamer相关开发包,GStreamer插件为运行时必需,缺少时音视频将无声或无法播放。
在Debian/Ubuntu系统上安装Tauri所需的系统依赖与GStreamer插件:
sudo apt install libwebkit2gtk-4.1-dev build-essential curl wget file libxdo-dev libssl-dev libayatana-appindicator3-dev librsvg2-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-gl gstreamer1.0-libav
将源码克隆到本地:
git clone https://github.com/torrentplayer/torrentplayer.git
npm命令均在前端目录中执行:
cd torrentplayer/ui
按锁定文件安装前端依赖:
npm ci
启动带热重载的开发环境:
npm run tauri dev
为当前平台构建优化的安装程序:
npm run tauri build
除源码构建外,也可以直接从Releases页面下载安装包:Windows10/11(x64)提供.msi与.exe(NSIS),macOS13+(AppleSilicon与Intel)提供.dmg与.app,Linux(x64)提供AppImage、.deb与.rpm。安装包附带SHA-256校验和、SBOM与构建来源证明,但尚未代码签名,WindowsSmartScreen与macOSGatekeeper在首次启动时会发出警告。Linux上建议使用包管理器安装.deb或.rpm,以自动带上GStreamer插件依赖:
sudo apt install ./TorrentPlayer_<version>_amd64.deb sudo dnf install ./TorrentPlayer-<version>-1.x86_64.rpm sudo zypper install ./TorrentPlayer-<version>-1.x86_64.rpm
真实体验与反馈
- 效率表现:根据项目内置基准工具torrentplayer-bench的测量,本地做种节点在8MiB/s链路下启动中位数0.35秒、跳转0.27秒;公共种群(约600节点)下启动1.2至2.8秒、跳转中位数0.70秒。
- 易用性表现:支持粘贴磁力链接、拖放种子文件或应用内搜索三种添加方式,搜索结果会标记“最佳选择”并预加载其开头片段,按下播放即可立即开始。
- 局限性:项目目前为早期预览版本,安装包尚未代码签名,首次启动会触发WindowsSmartScreen或macOSGatekeeper警告;播放器依赖系统网页引擎,可播放的编码格式受该引擎支持范围限制。
常见问题解答(FAQ)
BitTorrent是一种分发协议,TorrentPlayer面向开放许可与公有领域内容设计。内置搜索覆盖的公共索引不会核查内容许可,播放与分享内容的权利由使用者自行负责。
完全免费且开源,无订阅、广告、观看时长限制、画质上限、存储配额或速度分层,也不需要注册任何账号。
会。种子处于活动状态时,引擎会在全局上传限制内分享已验证的数据块,队列中的种子在暂停或移除前会持续分享。
在WireGuard与SOCKS5模式下,断网保护会停止所有流量并关闭已有连接,不会回退到直连,隧道恢复后自动继续。使用自有VPN应用(直连模式)时,应开启该应用自带的断网保护。
速度取决于种子的做种与节点数量以及自身网络连接,节点少的种子只能达到相应速度。队列会显示每个视频的节点数与速度,便于选择播放流畅的版本或将其上移。
默认保存在下载文件夹内的TorrentPlayer目录,可在设置的下载与存储选项中更改文件夹。完成的视频与音频以原始文件名和格式保存在torrentplayer-swarm/<种子哈希>/files/目录下,文件完整保存后播放按钮旁会出现复制路径选项。
