jellyfin / jellyfin-android

Android Client for Jellyfin
https://jellyfin.org
GNU General Public License v2.0
1.51k stars 243 forks source link

All http links are treated as HSL for ExoPlayer #1443

Open DaRealHansForSure opened 3 months ago

DaRealHansForSure commented 3 months ago

Describe the bug

  1. Make a .strm File which includes a http:// Video Link
  2. Play that file over Jellyfin Android and ExoPlayer
  3. Source error

The logic code of the Apps seems wrong for me? Not everything that is http, is automatically hsl? Especally when it works in every other Client (Also under Android TV with ExoPlayer) image

Logs

No response

Application version

2.6.2

Where did you install the app from?

Google Play

Device information

Nothing Phone 2a

Android version

Android 14

Jellyfin server version

10.9.7

Which video player implementations does this bug apply to?

nielsvanvelzen commented 3 months ago

We do not support strm files in the Android clients. If they work that's great, if they don't we can't do so much about it.

DaRealHansForSure commented 3 months ago

But why do you assume, when its http, its always HLS?

I mean, everything works great in Android TV App, also with ExoPlayer?

DaRealHansForSure commented 3 months ago

When i set to the ProgressiveMediaSource Class inside "Http Protocol", it works as expected.

So my thoughts are, thinking everything what is "http" is "hls" is wrong.

DaRealHansForSure commented 3 months ago

Is there a reason, why you don't use "MediaSource.Factory"?

It also works fine with http links as i tried, will do more Tests for you, for HLS etc., but would be awesome, that having a working exoplayer :)

Maxr1998 commented 3 months ago

But why do you assume, when its http, its always HLS?

Probably decided due to a lack of documentation back then. MediaSource.Factory might be worth a try, but I haven't looked into it and am unaware of the implications.

DaRealHansForSure commented 3 months ago

The MediaSource.Factory got defined like that: image

and the DefaultMediaSourceFactory has the feature like that: image

I will try to do some tests, but i think it would be great and supports directly lot more stuff for the http protocol