jellyfin-media-player icon indicating copy to clipboard operation
jellyfin-media-player copied to clipboard

Custom On-Screen-Controller for Qt6

Open sevenrats opened this issue 7 months ago • 6 comments

Background: Jellyfin Media Player is blocked from fully porting to Qt6 without additional work because specific behaviors we depend on are bugged in Qt6, namely rendering behind a transparent webview. The Qt6 branch in its current state contains a workaround that moves the video in front of the webapp and shrinks it to reveal the onscreen controller of the webapp. This kinda sorta works but has lots of problems including:

  • settings menu can be partially blocked by the video
  • playback info is broken

In order to make it through the Qt6 era and facilitate native Qt6 support (currently we are ported through the compat api) a custom on-screen-controller must be implemented in QML.

Task: Build a custom OSC for qt6 that works around https://bugreports.qt.io/browse/QTBUG-111739 this issue will also track other issues which would benefit from the OSC

sevenrats avatar Dec 18 '23 03:12 sevenrats

a custom osc would elliminate the roadblocks for mpris https://github.com/jellyfin/jellyfin-media-player/issues/3

sevenrats avatar Dec 18 '23 03:12 sevenrats

Stupid question: what's an OSC? 😄 I've looked around online but can't really find anything. I assume you mean a new overlay to put on top of the video player?

zjeffer avatar Dec 31 '23 15:12 zjeffer

good point.

sevenrats avatar Dec 31 '23 20:12 sevenrats

the importance of this is downplayed by the fact that building with the qt5 brew formula work well on m series macs now.

sevenrats avatar Jan 04 '24 19:01 sevenrats

https://github.com/jellyfin/jellyfin-media-player/issues/595

sevenrats avatar Apr 20 '24 15:04 sevenrats

Any progress on this? I'd love to help but have very little experience with QML and libmpv.

Is there a plan of action of some kind? What should this new OSC contain, how would it be technically implemented, ...?

zjeffer avatar May 18 '24 22:05 zjeffer