Jellium Desktop 视频方向与画面调整指南:全屏快捷键、比例设置与变通方法
【免费下载链接】jellium-desktopAn unofficial desktop client for Jellyfin项目地址: https://gitcode.com/GitHub_Trending/je/jellium-desktop
Jellium Desktop 是一款非官方的 Jellyfin 桌面客户端,用 CEF 内嵌浏览器加载网页端界面、用 mpv 负责实际解码渲染。播放竖屏误拍、横竖颠倒的视频时,很多用户第一反应是找"旋转快捷键"。本文先说清这个功能的真实现状,再给出当前版本里真正可用的几种画面调整手段。
先说结论:目前还没有专门的旋转快捷键
📌 直接说明现状:翻遍快捷键判定逻辑,当前版本没有为视频旋转(顺时针/逆时针 90°)绑定任何按键。
快捷键分类器 hotkey.rs 是一个纯分类器:输入分发器把按键事件交给它,它只返回"执行什么动作"。整个文件里定义的动作只有两个——
ToggleFullscreen:全屏切换Shutdown:退出应用
也就是说,想在播放中一键旋转画面,目前做不到。这不是设置里藏起来的开关,而是功能本身还不存在。下面几节解决"方向不对时现在怎么办"以及"哪些快捷键确实可用"。
当前可用的播放快捷键一览
虽然旋转没有着落,但播放中最常用的两个操作是有绑定的,且在代码里有明确的行为边界:
| 按键 | 作用 | 生效条件 |
|---|---|---|
F或F11 | 切换全屏 | 视频播放器处于激活状态(正在播放或暂停均可) |
Alt+F4 | 关闭应用 | 任意时刻 |
两个容易踩的坑:
F键只对视频生效。分类器在响应前先检查"视频是否活跃"(媒体类型为视频、播放器已加载、且不在已停止状态)。听音乐时按F没有任何反应,这是刻意设计,不是失灵。- mpv 自带的全套快捷键在这里被禁用了。启动配置 boot.rs 里显式关闭了
input-default-bindings、input-vo-keyboard等输入项,所有按键统一经 CEF 路由。所以你在 mpv 独立运行时习惯的那些按键(比如方向键调速之外的其他绑定)在 Jellium Desktop 里不会生效。
视频方向不对时,现在能做的三件事
方法一:用播放器设置里的画面比例缓解构图问题
如果"方向不对"更多表现为画面比例怪异、上下留黑边过大,可以用播放器设置里的画面比例(Aspect Ratio)选项。mpv-video-player.js 声明客户端支持SetAspectRatio能力,提供三种模式:
- 进入播放界面,打开播放器菜单里的"播放设置 / 画面比例"。
- 在自动(auto)/ 充满(cover)/ 填充(fill)中选择:
auto:保持宽高比,正常留边显示;cover:等比放大裁剪到充满画面(对应 mpv 的panscan模式);fill:直接拉伸铺满,不保持宽高比。
- 选择会写入应用设置并即时生效,下次播放沿用上一次的选择。
这一路径的底层实现在 api.rs 的 aspect-mode 辅助函数:把三种模式翻译成keepaspect与panscan两个 mpv 属性。注意fill会拉伸变形,只适合临时看,不适合当默认值。
局限要说清:比例设置只改变画面的缩放方式,无法纠正 90°/180° 的旋转。
方法二:从源头修正文件的旋转元数据
大多数"视频方向不对"的根源是文件里嵌了旋转元数据(手机竖拍时相机写入的 rotation 标记),播放端只是"忠实执行"了这个标记。当前客户端没有提供覆盖这个标记的开关,所以彻底的修法是在文件层面处理:
- 用 FFmpeg 之类工具重封装,把旋转"烘焙"进像素(例如
ffmpeg -i in.mp4 -c copy -metadata:s:v:0 rotate=0 out.mp4,或加transpose滤镜重编码); - 修好后把文件放回 Jellyfin 媒体库,Jellium Desktop 里再播放就是正方向。
方法三:等待功能补齐,或自行参与开发
客户端的架构里,Web 层与 mpv 控制面之间已有完整的 IPC 通道(JS 侧经window.api.player.*调用 Rust 侧的 mpv 命令),补一个旋转动作在工程上是顺理成章的扩展点。如果你有这个刚需且愿意动手,可以从快捷键分类器和 Web 播放器 shim 入手提方案。
快捷键与播放逻辑分别在哪里
想自己核对行为或后续跟进该功能,三个关键位置:
- 快捷键判定:hotkey.rs —— 按键到动作的唯一映射表;
- Web 端播放器能力声明与比例切换:mpv-video-player.js、native-shim.js;
- 比例到 mpv 属性的翻译:api.rs。
常见问题
问:为什么按F没有反应?先确认窗口焦点在视频播放区域,且正在播放或暂停状态。播放列表页、纯音乐播放时该按键被分类器主动忽略。
问:能不能自己在 mpv 配置里加旋转参数?客户端启动时加载用户目录下的 mpv 配置文件(config选项已开启),但 mpv 本身并没有提供运行时画面旋转的选项,且其自身输入绑定已被客户端禁用,所以这条路走不通,修正仍需回到文件层面。
问:cover 和 fill 有什么区别?cover等比放大并裁掉超出部分,画面不变形;fill直接拉伸到铺满,横竖比例会被破坏。日常推荐auto,小屏看横片时用cover效果更好。
更多细节可查阅项目 README 与社区讨论,旋转快捷键的跟进建议直接去项目仓库提 Issue 反馈。
【免费下载链接】jellium-desktopAn unofficial desktop client for Jellyfin项目地址: https://gitcode.com/GitHub_Trending/je/jellium-desktop
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考