Quantcast
Viewing all articles
Browse latest Browse all 7311

[Ubuntu 16.04 LTS]: Bug: Fps not transcoded according to Chromecast spec

My system:
CPU Intel Xeon E3-1275 V5, Socket-1151
Motherboard Asus P10S-E/4L
RAM Crucial DDR4 ECC 2133MHz 32GB (16GBx2)
System disc SAMSUNG SSD Samsung NVMe SM951
Linux: Ubuntu 16.04 LTS
Plex Media Server Version 0.9.15.6
Plex Media Server Version 0.9.16.2 (retested, no change)
Plex Media Server Version 0.9.16.3 (retested, no change)

This is a fast system, and available cpu power for transcoding should not be in question.

I have a Chromecast2 with ETHERNET adapter, confirmed video stream being transfered on Ethernet, ruling out any Wifi issues with bandwidth.

Sometimes I get unbearable constant stuttering when I try to cast media to the Chromecast2.

One example media exhibiting the issue is this:
Codec ID: V_MPEG4/ISO/AVC
Codec (h.264 profile: High @L4.1)
Default duration: 20.000ms (50.000 frames/fields per second for a video track)

Now if I playback on i.e. the Android Plex Media Player, with default settings, Video transcoding occurs due to L4.0 is default. However, as expected, the server has no trouble transcoding, and the viewing experience is fine. I can go into advanced settings, and up the settings to support L4.1 playback, and the overlay information shows that Video is now Direct, also cpu load on server shows transcoding is not happening.

If I press the cast icon in Plex Media Player, and cast it to my chromecast2 however, I see transcoding starting again on the server. The video playback on the chromecast is stuttering a lot, every 1-2 seconds, the transcoding may be due to the audio, have been unable to verify that, I don't know how to bring up the overlay when casting as I can with the Android Plex Media Player playback.

If we look at the chromecast2 supported Media: https://developers.google.com/cast/docs/media#mp4-video-and-audio
We find that H.264 level 4.1 is supported, so you would not expect transcoding to occur, however, as proved with the android player, that is not an issue regardless with the available cpu power on my server.

However...the chrome cast Supported media also states:
H.264 High Profile Level 4.1 (the processor can decode up to 720/60 or 1080/30)

Meaning, it is not able to handle 1080/50, which is the frame rate in this particular media. Now, since Plex Media Server is transcoding, I would expect this would be due to the frame rate(but could just be audio, unable to verify)
Is there any debug info I pull out to tell me exactly what the transcoding is doing, and how the video stream sent to the chromecast is finally encoded. Hopefully there is a miss match between chromecast actual abilities, and plex media server expected abilites of chromecast, which should be easy to fix.

So anyone, where and how to get the transcoding debug info to tell me what is being sent to chromecast? I've tried looking in the log files with debug enabled on the server, but I can't really see any information on the actual transcoded stream beeing produced, except for statistics on speed and such.

If I switch down to 720p when I cast to chromeast, it does not stutter, again coming back to the fps, in which case up to 60fps is supported in 720p by chromecast. Again leading me to think that Plex Media Server is providing to high fps to the chromecast to handle in 1080p.

Now take this Media example:
Codec ID: V_MPEG4/ISO/AVC
Codec (h.264 profile: High @L4.1)
Default duration: 41.708ms (23.976 frames/fields per second for a video track)

Again, Android Plex Media Player handles the playback just fine with both transcoded and direct playback (depending on L4.0 vs L4.1 setting).
If I switch from direct playback using L4.1 setting on Android to cast it to chromecast, it streams just fine, no stutter at 1080p. But this media is within the defined supported 1080p/30 as defined by Chromecast.

The Plex Media player does not allow me to select fps for transcoding, only dps/bps, thus forcing me to select 720p to avoid stuttering, and this should be possible to fix within Plex Media Server as far as I can see.

Any comments?


Viewing all articles
Browse latest Browse all 7311

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>