Jellyfin Forum
How to completely disable transcoding on Android TV and Android phone's clients? - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: General Questions (https://forum.jellyfin.org/f-general-questions)
+--- Thread: How to completely disable transcoding on Android TV and Android phone's clients? (/t-how-to-completely-disable-transcoding-on-android-tv-and-android-phone-s-clients)



How to completely disable transcoding on Android TV and Android phone's clients? - user848 - 2025-02-27

Previously, I used DLNA to stream videos within my local network. It worked fine, I used Nova Player and VLC, both of which support DLNA and SMB playback (though SMB isn’t ideal for large files, stuttering may happen).

So DLNA worked perfectly but today I tried setting up a Jellyfin server and attempted to play a 2024.WEB-DL.2160p.mkv (17 GB) video file using an Android TV and the Jellyfin client app, but it was stuttering.

Such issues never happen with DLNA.

I don’t need any transcoding since my devices can handle most modern formats and resolutions, and it’s all within my local network.

So I’m not sure what’s causing these issues.

Anyway, how do I completely disable transcoding? From what I understand, I need to disable it in the client app rather than the server app, right?


Basically, if I download large BD remux files, I expect to play them directly. Otherwise, what’s the point of downloading them only to use transcoding and stream at worse quality

I found the following option on the Android's client and enabled it before testing everything:


[Image: Screenshot-2025-02-27-232542.png]

Not sure if it disables transcoding for the local playback


RE: How to completely disable transcoding on Android TV and Android phone's clients? - user848 - 2025-02-27

I found the following options, and they seem to have resolved the stuttering (though I need to test it more):

- Allow audio playback that requires transcoding
- Allow video playback that requires transcoding
- Allow video playback that requires conversion without re-encoding

[Image: Screenshot-2025-02-27-234148.png]

So, is this enough to fully disable transcoding?

Also, why was the TV client using transcoding? What’s the algorithm behind it? Because it definitely doesn’t need any transcoding.

I set up the Jellyfin server on a Raspberry Pi 5 (8GB RAM). Since I don’t need any transcoding for local network streaming, it should work very well. I used to stream 4K + BD Remuxes over DLNA on my 512MB RAM router with an external HDD, and it worked fine, so the Raspberry Pi 5 is even more powerful.

However, I guess if transcoding is enabled, the Raspberry Pi 5 isn’t powerful enough, as I experienced stuttering when transcoding was turned on, correct? I'm just curios even if I don't need transcoding.


RE: How to completely disable transcoding on Android TV and Android phone's clients? - TheDreadPirate - 2025-02-27

Transcoding isn't just for lowering the bit rate. It is also for codec/container compatibility.

The RPi5 doesn't have any useful encoders so it would be encoding entirely on the CPU. 4K video is just not viable on a RPi CPU.

Turning off transcoding is only a viable solution if transcoding was occurring in error. This can happen if the client doesn't report an accurate device profile or the server doesn't interpret the profile correctly (both have occurred in the past). But it can result in failed playback if the client did, in fact, need a transcode.


RE: How to completely disable transcoding on Android TV and Android phone's clients? - user848 - 2025-02-27

(Yesterday, 10:02 PM)TheDreadPirate Wrote: Transcoding isn't just for lowering the bit rate.  It is also for codec/container compatibility.

Yes, I understand this, but again, it's something related to old TVs, I won't have such issues with codecs and containers, when I was using DLNA for different videos files I had no issues.

(Yesterday, 10:02 PM)TheDreadPirate Wrote: Turning off transcoding is only a viable solution if transcoding was occurring in error.

Again, what's the point of having it enabled if I know that my devices can handle it?

I want Jellyfin instead of miniDLNA to remember video positions in case I want to continue playing on another device — that's the main reason. And of course meta data, thumbnails, etc., though Nova Player can do it as well, but for each client separately of course, not a server.

It seems I can still notice slight stuttering in Jellyfin app for Android TV. Maybe subtitles are causing it, because I know it happens with VLC for Android TV, never had such issues with Nova Player.

Also, playback completely froze when I changed the video position frequently (seeking), so I had to close it and restart the video.

Again, no such issues with DLNA, which doesn’t do any transcoding and even works good on routers that support external disk connections.

But yes, of course I need to test it more, because I've just started, mb something has to be configured additionally.


RE: How to completely disable transcoding on Android TV and Android phone's clients? - TheDreadPirate - 2025-02-28

Depending on the kind of subtitle, they may need to be burned in. That is assuming you are using the integrated player. AFAIK, ASS and DVD/VOBSUB always need to be burned in for exoplayer (the integrated player). Though, work on adding ASS sub support is in progress.

If there is transcoding or remuxing, skipping around will be slow depending on your server specs as ffmpeg needs to restart the transcode/remux if you skipped to a segment that hadn't already been transcoded.

Also keep in mind that transcodes are written to disk. So the speed of the disk also factors into how responsive seeking is for transcodes.

As for remembering the video position, if you use an external player, like VLC or Nova, playback tracking is not supported except for video completion (watching all the way to the end). It will not track partial progress. However, I recall someone saying that MPV as an external player DOES support playback tracking. Which would make sense, if true, since we use MPV as the playback engine for Jellyfin Media Player on desktops.

If you share your jellyfin logs via privatebin.net we can get an idea of what playback method Jellyfin is using for some of what you're describing.