The reason for transcoding can be due to a ton of things…
The short of it is that the player doesn’t support something about the media characteristics of your source material.
In the case of your video being played in the browser, Plex struggled with 2 elements:
- the browser doesn’t support playback of HEVC HDR video – therefore Plex is transcoding the video to h264.
- the browser doesn’t support EAC audio, nor 5.1 channels – therefore it’s transcoding the audio to AAC and 2 channels (stereo).
As your CPU isn’t super powerful, it ends up transcoding to 720p (resolution) and h264 (video codec).
As for the CPU…
- software/CPU based transcoding to a 1080p h264 video to an average quality bitrate requires a CPU with a PassMark score of approx. 4000 (PassMark is a benchmark that tries to rate the performance of CPUs)
- software/CPU based transcoding to a 720p h264 video requires a PassMark score of approx. 1500.
- your CPU has a PassMark of approx. 2500… so it’ll deal fine with encoding a video to 720p but won’t be able to deal with 1080p or 4K content (unless the player is able to play it as-is).
Different players have different capabilities.
When it comes to general compatibility… your best shot is to go with:
- h264 video (level 3 or 4)
- AAC or AC3 audio
- text based subtitles
If you cast the video through Chromecast from Plex it should show on your now playing dashboard – unless you’re streaming from a different server / not using Plex… This has nothing to do with the server having to transcode the video or playing it directly.