移动应用 活跃维护

plezy

edde746/plezy

使用 Flutter 构建的现代跨平台 Plex 和 Jellyfin 客户端

3865
Stars 标星
397
Forks 分支
15
Watchers 关注
359
Open Issues
Dart
主要语言
GPL-3.0
开源协议
255.5 MB
仓库大小
4 小时前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:edde746/plezy
git clone https://github.com/edde746/plezy.git
git clone git@github.com:edde746/plezy.git
README.md main

英文原文正文为项目原始 README(英文),本站后续会翻译为中文,当前仅剔除图片与无关章节并统一排版。

请

一个适用于桌面、移动和电视的现代 Plex、Jellyfin 和 Emby 客户端。使用 Flutter 构建,提供原生性能和简洁的界面。

网站 · 截图 · 下载 · 贡献 · 许可

下载

平台 下载
macOS DMG (x64, arm64)
Linux x64 .deb · .rpm · .pkg.tar.zst · .flatpak · 便携 tar.gz
Linux arm64 .deb · .rpm · .pkg.tar.zst · .flatpak · 便携 tar.gz
使用软件包管理器安装

macOS — Homebrew

brew tap edde746/plezy https://github.com/edde746/plezy
brew install --cask plezy

Windows — WinGet

winget install edde746.Plezy

Linux — Flatpak

使用您的发行版的软件包管理器安装 Flatpak,然后下载上面对应架构的捆绑文件,接着运行:

flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak 安装 --user flathub org.freedesktop.Platform//25.08 flatpak 安装 --user ./plezy-linux-x64.flatpak flatpak 运行 com.edde746.plezy

在 arm64 上,安装 plezy-linux-arm64.flatpak。

沙箱、回放和文件夹访问 - 不在 Flathub 上 — 远程只提供 Freedesktop 运行时。 - 视频回放需要 Wayland 会话;纯 X11 会话可以显示界面,但无法创建视频平面。 - 无法访问主机或家庭文件系统;应用数据存放在 `~/.var/app/com.edde746.plezy/`。通过桌面文件选择器门户添加主机文件夹,并保持下载文件夹可写。 - 网络、显示、音频和设备访问已启用。`--device=all`(Flatpak 1.14 兼容性)暴露的不仅是 GPU 和控制器;会话总线访问仍然受到过滤。
### Arch Linux — Pacman [发行版软件包](https://archlinux.org/packages/extra/x86_64/plezy/)。 ```bash sudo pacman -S plezy ``` ### Fedora / 红帽 — DNF [安装说明](https://github.com/aldobarr/plezy-rpm) · 由 [@aldobarr](https://github.com/aldobarr) 维护的社区仓库。 ### Nix 由 [@mio-19](https://github.com/mio-19) 和 [@MiniHarinn](https://github.com/MiniHarinn) 维护的[社区包](https://search.nixos.org/packages?channel=unstable&query=plezy)。 ### aerynOS — Moss [发行版包](https://github.com/aerynOS/recipes/tree/main/p/plezy)。 ```bash sudo moss it plezy ```

功能

浏览与发现

  • 图书馆、收藏和播放列表——视频和音频
  • 发现中心——继续观看、接下来、热门和推荐
  • 跨服务器搜索所有已连接的 Plex、Jellyfin 和 Emby 服务器,包括演员和导演
  • 筛选、排序和字母跳转导航
  • 文件夹浏览和文件夹播放——家庭视频库以文件夹视图打开
  • 卡片和详情页上的分辨率、HDR/Dolby Vision 和音频格式徽章
  • 收藏和未观看的库过滤器[1]
  • 额外内容——预告片、删减片段、幕后花絮

探索与请求

  • 探索标签——来自 Plex Discover[2]、Trakt、MyAnimeList、AniList、Simkl 和 Seerr[3] 的观看列表、流行、热门和推荐行
  • 搜索任何已连接的目录来源
  • 通过外部 ID 将目录标题匹配回您自己的库
  • Seerr——按季、4K 和高级目标选项请求电影和节目,并在内联查看请求状态
  • 观看列表同步——从应用程序的任何地方在 Plex、Trakt、MyAnimeList、AniList 和 Simkl 添加或删除标题

播放

  • 广泛的编解码器支持(HEVC、AV1、VP9 等)
  • HDR 和 Dolby Vision[4]
  • 直接播放,或从 240p/320 kbps 转码至 1080p/20 Mbps 的预设
  • 多版本切换,每个版本显示文件详细信息
  • 完整 ASS/SSA 字幕,可自定义样式
  • 在线视频字幕搜索与下载[2]
  • 每个标题记忆音频和字幕选择,或遵循服务器每集的选择
  • 进度同步和续播
  • 自动播放下一集并跳过片头/片尾
  • 章节导航及缩略图预览
  • 播放速度 0.25x 至 8x,可调音频同步偏移,睡眠定时(固定时长或视频结束)
  • 视频缩放 50%-200%,支持捏合、预设和快捷键
  • 音频直通[5],输出通道限制(5.1 或立体声,可提升中置声道),以及响度标准化
  • 文件信息表 — 服务器报告的每个版本、文件和流
  • 环境灯光与 GLSL 着色器预设[6]
  • 画中画[7]
  • 刷新率匹配[8]
  • 外部播放器启动(VLC、MX Player 等)并同步播放进度[9]

音乐

  • 音乐库 — 按艺术家、专辑和曲目浏览,配方形封面
  • 专辑和艺术家界面,支持播放、随机播放和即时混合
  • 无缝播放及完整播放队列 — 可重新排序、移除、下一首播放、添加到队列
  • 正在播放并同步歌词[10],持久小播放器和睡眠定时
  • 后台播放,支持锁屏、媒体键及通知控制[11]
  • 已下载专辑和曲目的离线播放
  • 流媒体质量预设——原始、320、192 或 128 kbps

直播电视与 DVR

  • 直播电视频道浏览、调谐和收藏
  • EPG 导航,其中包含正在播放内容及每个节目的时间表
  • DVR 录制规则、预定录制,以及可记忆的录制目标库[2]
  • 支持多服务器直播电视(视可用情况而定)

下载与离线

  • 下载电影、节目和音乐以供离线播放[12]
  • 后台队列,可暂停/恢复
  • 自动下载的同步规则,可为每个节目选择“包含特别节目”
  • 离线观看,重新连接时同步观看状态

一起观看

  • Open Watch Party 房间——共享六字符代码;朋友可通过 Plezy 或其他 Open Watch Party 应用加入
  • 每个人从自己的服务器播放自己拷贝——Plex、Jellyfin 或 Emby——通过目录 ID 匹配,多拷贝情况下可选择播放拷贝
  • 同步播放/暂停/快进、由主机或共享控制、房间锁定及主机移交
  • 默认公共中继,或将 Plezy 指向你自己的自托管中继

集成

  • Discord 富状态[13]
  • Trakt、MyAnimeList、AniList 和 Simkl——评分、观看同步及实时记录[14]
  • 连接的追踪器详情页评分 — Trakt、Simkl、MyAnimeList 和 AniList,以及通过 MDBList 的烂番茄、Metacritic、Letterboxd、IMDb 和 TMDB
  • Plezy Remote — 从手机控制桌面和电视
  • 观看下一行和 tvOS 顶层展示[15]

平台与自定义

  • 桌面、移动和电视 — 完整方向键、键盘和手柄支持
  • 同时连接多个服务器 — 并排显示 Plex、Jellyfin 和 Emby
  • 用户资料支持每个资料的下载、观看状态和设置;Plex 家庭切换带 PIN
  • Jellyfin 和 Emby 本地服务器发现及每个服务器的多个 URL;快速连接登录[16]
  • 电视布局选项 — 角落聚光背景、全卡片艺术图,并在桌面强制启用电视模式
  • 可自定义键盘快捷键[13]
  • 元数据和艺术图编辑
  • 设置导入/导出
  • 支持英语及其他 21 种本地化翻译

从源码构建

先决条件

  • Flutter SDK 3.47.0
  • 一个 Plex 账户,或一个具有用户凭证的 Jellyfin 或 Emby 服务器

设置

git clone https://github.com/edde746/plezy.git
cd plezy
flutter pub get
scripts/codegen.sh
flutter run
代码生成

修改模型类或其他生成的源代码后:

scripts/codegen.sh

修改翻译内容后:

dart run slang
打包 Flatpak 捆绑包

打包一个已经完全解析的 Linux 发行版捆绑包——包括固定版本的 libmpv 和捆绑库,而不是 Flathub 源码构建清单。在 Linux 上运行它,且与捆绑包架构相同,在按照 Linux 发行版工作流程 中的捆绑包准备步骤操作后:仅运行 flutter build linux 并不会生成所有必需的捆绑库。

安装打包工具(以 Debian/Ubuntu 为例)以及本机架构的 SDK 和运行时:

sudo apt-get 更新
sudo apt-get install -y flatpak flatpak-builder imagemagick
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user flathub org.freedesktop.Platform//25.08 org.freedesktop.Sdk//25.08

BUNDLE_DIR=build/linux/x64/release/bundle
python3 linux/packaging/build-flatpak.py --bundle "$BUNDLE_DIR" --arch x64 --output "$PWD"

这将生成 plezy-linux-x64.flatpak,可以使用上述 Flatpak 命令安装;在 arm64 上,使用准备好的 arm64 包目录和 --arch arm64。请从与包匹配的检出版本进行打包,因为版本信息来自 pubspec.yaml。

跨架构打包需要本地 Flatpak 工具、已注册的 binfmt 解释器,以及通过 flatpak install --user --arch=x86_64(或 aarch64)安装的目标 SDK/运行时——切勿在仿真环境下运行 Flatpak 的命名空间工具。向检查程序传递 --arch x64 或 --arch arm64,并向 flatpak run --arch=... 传递匹配的 Flatpak 架构。

检查已安装的包是否与运行时匹配(不仅仅是 SDK),然后在 Wayland 桌面上启动它,并测试流媒体、音频、下载/离线播放以及文件选择门户:

python3 linux/packaging/check-flatpak.py

如果入口点不可执行或有未解析的打包 ELF 依赖,检查将失败。没有 GPU 的容器可以使用 flatpak run --env=GALLIUM_DRIVER=softpipe com.edde746.plezy 进行软件渲染验证;这不是硬件解码或 HDR 测试。

本地检查
脚本/ci_checks.sh

要在本地安装相同的 pre-commit 检查:

脚本/setup_hooks.sh

端到端测试(Android 模拟器加上 Docker 化的 Jellyfin 夹具):

python3 scripts/maestro/run_maestro.py basic

贡献

有关开发工作流程、格式、测试和翻译指南,请参阅 CONTRIBUTING.md。

许可

Plezy 依据 GPL-3.0 授权。

致谢


注释:

[16] Only for Jellyfin。 ↑

[1] Only for Jellyfin and Emby。 ↑

[2] Only for Plex。 ↑

[3] 需要在 设置 > 服务 下连接该服务。 ↑

[4] Windows、macOS、iOS、tvOS 和 Linux 应用内 HDR 切换 —— Linux 需要支持色彩管理的 Wayland 组合器。Android、macOS 和 Apple TV 支持 Dolby Vision。↑

[5] 桌面、安卓电视和苹果电视。 ↑

[6] 需要 mpv 的 GPU 渲染器 — 在 iOS、tvOS 和 macOS 上不可用,且 Android 默认使用 ExoPlayer。↑

[7] Android、iOS 和 macOS——不支持 Android TV 或 Apple TV。 ↑

[8] Windows, Android, and tvOS。 ↑

[9] Android 上的进度同步。 ↑

[10] 在您的服务器提供歌词的情况下。 ↑

[11] tvOS 在应用置于后台时会暂停音乐。 ↑

[12] Not available on tvOS。 ↑

[13] 仅限桌面。 ↑

[14] Trakt 和 Simkl 实时 scrobbling;MyAnimeList 和 AniList 在完成后更新。 ↑

[15] Android TV / Fire TV 和 tvOS。 ↑

本站来源与版权声明
  • 本文标题:plezy - 使用 Flutter 构建的现代跨平台 Plex 和
  • 本文链接:https://www.cn121.com/mobile/edde746-plezy.html
  • 原项目:edde746/plezy 版权归原作者 edde746 及贡献者所有
  • 收录信息:本站于 2026-10-21 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 GPL-3.0(查看 LICENSE 原文),本站转载其原始文档(未改动文字,仅剔除图片与无关章节);使用、修改、分发请以该仓库 LICENSE 原文为准。基于本页内容形成的衍生作品, 须同样以该协议发布。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 edde746/plezy。
  • 内容说明:本页正文为原项目 README 原文(英文),本站后续会翻译为中文(当前尚未译出,仅将二级标题译为中文,便于按栏目定位;标题原文可在下方原仓库中查看),仅剔除了图片与赞助等无关章节、并把相对链接改为绝对地址;页首简介为机器翻译自仓库描述。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。