CiNcH83 / bravia_atv2

BRAVIA Android TV Knowledge Base
58 stars 1 forks source link

High bitrate 4K@60fps (2160p60) not feasible via Chromecast #31

Open CiNcH83 opened 5 years ago

CiNcH83 commented 5 years ago

A lot of services use Google’s Default/Styled Media Receiver in order to support Google Cast. The built-in media player suffers from severe stuttering when playing back “high” bitrate 2160p60 content (~30mbps). It looks like every other frame is being dropped.

1440p60 (~15mbps) looks mostly fine, apart from occasional micro stuttering. CPU usage is very high when casting with micro stuttering typically happening during peaks (observed via top shell command).

This has been tested with several services via the web and even within the local network with plenty of bandwidth:

YouTube recently switched from using the Default/Styled Media Receiver to using a Custom Receiver in the form of the YouTube for Android TV app when casting from an iPhone. The YouTube for Android TV app is much better with respect to 2160p60 playback compared to the Default/Styled Media Receiver, only suffering from subtle micro stuttering, see #52. When casting YouTube via Chrome (86) browser from PC, the Styled Media Receiver is still being used. When performing adaptive streaming, playback typically maxes out at 1440p60 or even 1080p60, indicating an imbalance between streaming and rendering threads.

Chromecast built-in version: 1.52.253741

rooobf commented 4 years ago

I did not verify if via casting the resolution is less than what available but it doesn't stutter on my KD55A1. However I found out this useful tip from Androidpolice.com https://www.androidpolice.com/2019/09/01/how-to-fully-control-youtube-on-your-tv-from-your-phone-with-voice-search-and-queue-management/ Using the Youtube on TV feature rather than simply casting, you have full control on tv and can verify the nerd data directly on tv: full 4k 60 fps without any frame lost It is not meant as a solution rather a further possibility

CiNcH83 commented 4 years ago

I did not verify if via casting the resolution is less than what available but it doesn't stutter on my KD55A1.

Playback currently does not go to full 2160p60 resolution via Chromecast, see #67.

Using the Youtube on TV feature rather than simply casting, you have full control on tv and can verify the nerd data directly on tv: full 4k 60 fps without any frame lost

On an XF90 with same SoC as A1 (MT5891), YouTube still occasionally drops frames at 2160p60. It is by far not as bad as it used to be before YouTube app version 2.07.02. Playback however still exhibits frequent micro-stuttering which only becomes obvious in panning shots. Looks like YouTube has problems adhering to VSync timings. Also, when playing 2160p60, GUI is noticably more laggy to navigate. I bought an LG UM7100 for my parents. I think it is also powered by a lowly clocked quad ARM Cortex A53. It is amazing how buttery smooth playback and navigation is while playing 2160p60 over YouTube.