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

Jellyfin-like external remote player support #2747

Open
YurikaL opened this issue Jul 14, 2022 · 6 comments
Open

Jellyfin-like external remote player support #2747

YurikaL opened this issue Jul 14, 2022 · 6 comments

Comments

@YurikaL
Copy link
Contributor

YurikaL commented Jul 14, 2022

Is your feature request related to a problem? Please describe.
Playing video in a browser is very inconvenient and often requires server-side transcoding, which is extremely inefficient. So native player is preferable for video playback in any case. But currently Stash provides only raw stream links that could be played in an external player. It's better than nothing, but still not enough.

Describe the solution you'd like
API that would allow external players connect to Stash and wait for play command. See Jellyfin and it's remote client jellyfin-mpv-shim for reference.

Describe alternatives you've considered

  • Opening raw stream links in your favorite native player with something like Open With extension. It works, but not so convenient! Scene metadata is also not sent to external players. It's also impossible to play an entire playlist at once.
  • Using Stash only as scrapper tool: scrape metadata for scenes and export is as .NFO that could be read by external mediaservers such as that same Jellyfin. Should work, but universal mediaservers don't support all of Stash features for sure. Jellyfin on server also consumes much more RAM than Stash: 5-10 times more in my case! So Stash is preferable as mediaserver too.

Additional context
This feature has been requested quite a few times already, there is just no clear separate issue for it!

And some screenshots:

Open With context menu. Requires manual intervention for each scene: open File info tab, right click on the stream link, move cursor to the player context menu item...
Open With context menu

Jellyfin Play On menu. Once switched, redirects all playing media to the selected external player.
Jellyfin Play On menu

@philpw99
Copy link
Contributor

The Stash's API is the graphql interface, from there you can get all the info and links for the scene.
I made a helper with external player and playlist support. It's not exactly the thing you want, but at least the customized playlist feature is there. You can save the list as a .m3u file then load it next time. If your external player supports m3u, the helper can send the whole list to the player.
https://github.com/philpw99/Stash_Helper

@YurikaL
Copy link
Contributor Author

YurikaL commented Jul 23, 2022

The Stash's API is the graphql interface, from there you can get all the info and links for the scene.

Sure, but rather than a full-featured remote UI, this issue is only about a remote player shim that doesn't request info and links by itself, but only waits for a play command from Stash instance. But a native remote UI without any kind of web stuff would be nice too! The remote UI is even worth an another issue.

I made a helper with external player and playlist support.

Windows only? Complete unusable for me!

@miltuss
Copy link

miltuss commented Apr 17, 2024

Hello, this feature is very important for many users. I myself am a user of MPV-shime with Jellyfin under Linux, and I am very happy with this use. I would like to use the external mpv player with stash, the same way I use mpv with jellyfin. It would be much simpler and faster to launch videos with the native player than with the browser. Please prioritize this much-needed feature!

@stashTX
Copy link

stashTX commented May 28, 2024

Another vote for this feature.

Often a dedicated / native player app can provide a better user experience than a web page.

For example on AppleTV, or iPad the Infuse app is a stellar media player that can basically play any format without transcoding and provides a fast native interface for browsing and playing content.

The Infuse player supports Plex, Emby and Jellyfin out of the box. I would propose an api layer for stash that for example makes it appear as a Jellyfin server. Then one could use any client that supports this api for basic browsing and playback.

@Y2K350
Copy link

Y2K350 commented Jun 16, 2024

I would also love this feature. Lots of browsers are extremely difficult to get hardware encoding on, or to use codecs that are on the newer side like AV1 or HEVC/H265. MPV has consistently provided me good support for all of those issues.

@feederbox826
Copy link
Contributor

https://github.com/feederbox826/stashopen non-windows alternative

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants