Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue Feedback: 内置播放器映射键码不完整 #108

Open
Tony15246 opened this issue Sep 18, 2024 · 11 comments
Open

Issue Feedback: 内置播放器映射键码不完整 #108

Tony15246 opened this issue Sep 18, 2024 · 11 comments
Labels
bug Something isn't working documentation Improvements or additions to documentation help wanted Extra attention is needed

Comments

@Tony15246
Copy link

当前程序版本

0.12.2

功能改进

我尝试了使用load external mpv config中的config=true选项。虽然使用config=true之后,能够成功加载我的自定义配置,但是使用大部分的快捷键都会出现报错,使用最基本的快捷键`打开mpv控制台也会出现报错Error: Raw(-4)。另外,我的自定义配置即使加载并渲染出来了,也因为图层优先级太低被压在内嵌mpv播放器配套的UI下面,导致完全无法使用。

我知道大佬们实现mpv播放器内嵌花费了很多时间精力,最终实现的效果也很好。但是我确实有使用自己的mpv播放器自定义设置和插件的需求,比如使用我自定义的弹幕加载插件。如果保留外部调用MPV功能不是很违背大佬们的设计理念,也不是很破坏代码的协调性的话,不知能否保留一个外部调用MPV的选项满足一下我这种小众需求呢?

参考资料

No response

@tsukinaha
Copy link
Owner

内嵌是可选的,仅需使用非 libmpv 的 video output 就可以仍然使用外置窗口。
至于快捷键其实是软件捕获的键盘输入然后传到 mpv 的,由于在 rust 中实现的键码映射与 glib::keyval 没有对照表,所以现有的映射都是手动映射上去的。如果你有兴趣,可以提供所有不能使用的键位,我会一一映射上去

@tsukinaha
Copy link
Owner

所以你如果同意,我会把这个 issue 改为
「MPV 快捷键映射不完全」,并留作此议题使用

@Tony15246
Copy link
Author

Tony15246 commented Sep 18, 2024

所以你如果同意,我会把这个 issue 改为 「MPV 快捷键映射不完全」,并留作此议题使用

感谢您的回答!使用非 libmpv 的 vo以后确实可以使用外置窗口了。关于快捷键感觉似乎不是按键映射的问题,我切换到非libmpv的vo之后快捷键就也正常了。我使用的也就是一些常见的快捷键,像ctrl + jctrl + d之类的,按理来说映射都有覆盖到,我猜测不是快捷键映射的问题,可能是libmpv或者我本地环境的问题。

不过现在出现一个新的问题是,我无法正常退出调用的外置mpv窗口,点击关闭mpv窗口就会直接卡死,只能通过命令行杀死进程。我目前无法确定是不是我本地的窗口管理框架的问题,我目前使用的是Wayland作为窗口管理器。整个退出过程中tsukimi在命令行也没有任何报错。

@tsukinaha
Copy link
Owner

所以你如果同意,我会把这个 issue 改为 「MPV 快捷键映射不完全」,并留作此议题使用

感谢您的回答!使用非 libmpv 的 vo以后确实可以使用外置窗口了。关于快捷键感觉似乎不是按键映射的问题,我切换到非libmpv的vo之后快捷键就也正常了。我使用的也就是一些常见的快捷键,像ctrl + jctrl + d之类的,按理来说映射都有覆盖到,我猜测不是快捷键映射的问题,可能是libmpv或者我本地环境的问题。

直接关闭这个窗口确实会让软件卡死,这个问题我研究了一段时间,也没有找到合适的解决方法,甚至找不到卡死原因。未来如果有进展的话我会去尝试修复。

至于快捷键,我会加入一些 log 方便判断问题,还请帮忙多多测试,谢谢

@Tony15246
Copy link
Author

至于快捷键,我会加入一些 log 方便判断问题,还请帮忙多多测试,谢谢

没问题👌,遇到按键映射的问题的话我会积极向您反馈的

@tsukinaha tsukinaha changed the title [功能改进]: 能否保留外部调用MPV选项 内置播放器映射键码不完整 Sep 18, 2024
@tsukinaha
Copy link
Owner

现在初步加入了一些 tracing
花花绿绿的,有点好看

@Tony15246
Copy link
Author

我目前测试下来,我个人经常使用的按键中,ctrl`会触发控制台报错。按下ctrl会出现报错Error: Raw(-12),按下`会出现报错Error: Raw(-4)。按下ctrl虽然报错,但是带有ctrl的组合快捷键可以正确触发;`按下后无反应,没有出现控制台,但我猜测只是因为原生mpv的前端被上层layer遮盖住了,按键应该有正确生效(这只是我的猜测)。

现在初步加入了一些 tracing 花花绿绿的,有点好看

不好意思,我个人没有过rust开发经验,不知道这个项目要怎么构建😂,目前使用的还是release版中的二进制文件。如果您有空教我一下构建方法的话,我会用带最新版tracing的代码再测试看看。

@tsukinaha
Copy link
Owner

tsukinaha commented Sep 18, 2024

现在初步加入了一些 tracing 花花绿绿的,有点好看

不好意思,我个人没有过rust开发经验,不知道这个项目要怎么构建😂,目前使用的还是release版中的二进制文件。如果您有空教我一下构建方法的话,我会用带最新版tracing的代码再测试看看。

AUR 中有 git 包。
如果你不使用 AUR,可以使用 CI 构建的包 :)

@Tony15246
Copy link
Author

AUR 中有 git 包。 如果你不使用 AUR,可以使用 CI 构建的包 :)

AUR中这个git包感觉版本比release中的还老好几个版本,我能找到的是这个包aur/tsukimi-git 0.12.0.r437.g1b6f33d-1,感觉应该不是这个版本?我安装了archlinuxcn源中的archlinuxcn/tsukimi-git 0.12.2.r512.g8689e23-1,但感觉这个也不是最新版,没有看到更多tracing。

我下载了最新版CI里的文件,以下是测试结果,依旧是ctrl`会导致报错,最新版报错如下

2024-09-18T11:43:15.300080Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key pressed: `
2024-09-18T11:43:15.300113Z  WARN tsukimi::ui::mpv::tsukimi_mpv: MPV command Error: Raw(-4), Command: keypress
2024-09-18T11:43:15.424930Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key released: `
2024-09-18T11:43:15.425001Z  WARN tsukimi::ui::mpv::tsukimi_mpv: MPV command Error: Raw(-4), Command: keyup

2024-09-18T11:43:36.053132Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key pressed: Ctrl+
2024-09-18T11:43:36.053196Z  WARN tsukimi::ui::mpv::tsukimi_mpv: MPV command Error: Raw(-12), Command: keypress
2024-09-18T11:43:36.205980Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key released: 

2024-09-18T11:43:46.556085Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key pressed: Ctrl+
2024-09-18T11:43:46.556137Z  WARN tsukimi::ui::mpv::tsukimi_mpv: MPV command Error: Raw(-12), Command: keypress
2024-09-18T11:43:46.716084Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key pressed: Ctrl+d
2024-09-18T11:43:46.840496Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key released: Ctrl+d
2024-09-18T11:43:46.979392Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key released: 

2024-09-18T11:43:54.389405Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key pressed: ESC
2024-09-18T11:43:54.516118Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key released: ESC

2024-09-18T11:44:01.020464Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key pressed: Ctrl+
2024-09-18T11:44:01.020508Z  WARN tsukimi::ui::mpv::tsukimi_mpv: MPV command Error: Raw(-12), Command: keypress
2024-09-18T11:44:01.116515Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key pressed: Ctrl+j
2024-09-18T11:44:01.270612Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key released: Ctrl+j
2024-09-18T11:44:01.395732Z  INFO tsukimi::ui::mpv::tsukimi_mpv: MPV Catch Key released: 

@tsukinaha
Copy link
Owner

AUR 中有 git 包。 如果你不使用 AUR,可以使用 CI 构建的包 :)

AUR中这个git包感觉版本比release中的还老好几个版本,我能找到的是这个包aur/tsukimi-git 0.12.0.r437.g1b6f33d-1,感觉应该不是这个版本?我安装了archlinuxcn源中的archlinuxcn/tsukimi-git 0.12.2.r512.g8689e23-1,但感觉这个也不是最新版,没有看到更多tracing。

git 包会抓取最新的 commit, 版本号只是打包时设置的。

我看到了一些错误的地方,会进行处理的,谢谢你的反馈

@Tony15246
Copy link
Author

不用谢,没能力pr只能帮帮这种小忙了(=^-ω-^=)

@tsukinaha tsukinaha added bug Something isn't working documentation Improvements or additions to documentation help wanted Extra attention is needed labels Sep 25, 2024
@tsukinaha tsukinaha changed the title 内置播放器映射键码不完整 Issue Feedback: 内置播放器映射键码不完整 Oct 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working documentation Improvements or additions to documentation help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants