fredrikburmester / streamyfin

A Jellyfin client build with Expo
Mozilla Public License 2.0
710 stars 19 forks source link

Direct ASS Subtitle Support for IOS #100

Closed alonsoCan01 closed 3 weeks ago

alonsoCan01 commented 3 weeks ago

Describe the solution you'd like A clear and concise description of what you want to happen.

Being able to direct play media with ASS subtitles would make this app a great alternative to Infuse. Since my server is pretty lightweight, its focus is on direct playing everything. The external player option is very nice as I'm able to direct play through VLC with no issues, but being able to do everything in one app would be amazing. Don't know how hard this could be or if its possible, but just wanted to get some insight for this feature.

Additional context Add any other context or screenshots about the feature request here.

FintasticMan commented 3 weeks ago

We're looking into other video playback backends such as MPV or VLC, which support ASS subtitles.

p0358 commented 3 weeks ago

I feel like they technically shouldn't be too hard to support if it's possible to embed something on top of platforms' native video players, which I'm not sure if it is. If it was, then something like libass could handle the rendering and then final canvas would have to be drawn on top of the video...

The trickiest aspect is fonts, it's possible that the web/WASM version of libass handles that part more easily. There's also a fallback feature in Jellyfin with a folder of fonts on the server, but it currently just preloads all the fonts into memory which is not great (I want to PR a rewrite of that one day to on-demand loading of only needed fonts...)

For example the desktop Jellyfin player uses MPV as backend, and that currently only supports either system fonts or ones embedded inside of MKV. Though granted I guess fonts are usually embedded in the file, but not always.

yihaolee85 commented 3 weeks ago

We're looking into other video playback backends such as MPV or VLC, which support ASS subtitles.

I know some apps use KSPlayer which supports ASS too. Maybe another option to consider.

fredrikburmester commented 3 weeks ago

I'm closing this for now. The current player does not support ASS and we can't fix this until we change player. In that case this issue will resolve it self. For now I recommend the external player (VLC). Feel free to comment if you feel otherwise.

alonsoCan01 commented 2 weeks ago

Yeah that makes sense. I'm currently using the external player option for viewing. Hope to hear news later on those player changes. Thanks for the info!