ChromeCast Ultra (the new one with HEVC support)
Posted: Sun Jan 15, 2017 9:02 pm
Currently this config is not yet working. My new ChromecastUltra is still coming up as a normal Chromecast (but I have a temporary workaround)
Probably because the Chromecast hardcodes the renderer file selection:
from:ChromecastMgr.java
ccr = RendererConfiguration.getRendererConfigurationByName("Chromecast");
So I switched the RendererName in the conf files temporarily to test. Success. No transcoding of h265 video from an mkv!
Here are the unswapped changes.
First, I had to change the existing Android-Chromecast.conf:
#UserAgentSearch = Android|CrKey
UserAgentSearch = CrKey.*armv71|armv71.*CrKey
Various revisions had the search keys in different orders. The new one doesn't even add a unique field. The only way we know is the arch build flag. (its aarch64 insteam of armv7)
Google-Android-ChromecastUltra.conf:
RendererName = ChromecastUltra
RendererIcon = chromecast.png
# ============================================================================
# This renderer has sent the following string/s:
#
# User-Agent: Mozilla/5.0 (X11; Linux aarch64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.84 Safari/537.36 CrKey/1.21a.76178
# ============================================================================
#
UserAgentSearch = CrKey.*aarch64|aarch64.*CrKey
# Note: Set loading priority to 1 to activate this configuration and override Android.conf
LoadingPriority = 1
SeekByTime = exclusive
TranscodeVideo = MPEGTS-H264-AC3
TranscodeAudio = MP3
MaxVideoBitrateMbps = 20
MimeTypesChanges = video/mpeg=video/mp4
CustomFFmpegOptions = -async 1 -fflags +genpts -c:a libmp3lame -ac 2 -b:v 35000k -bufsize 35000k -f matroska
MediaInfo = true
# Supported video formats:
# ChromeCastU seems to be fine with mkv, and plays h265 unlike the classic
Supported = f:mpegts|mp4|mkv v:mp4|h264|h265 a:aac|aac-he|mp3 n:2 m:video/mpeg
# Supported audio formats:
Supported = f:aac n:2 m:audio/aac a:aac|aac-he
Supported = f:mp3 n:2 m:audio/mp3
Supported = f:m4a|mp4 n:2 m:audio/mp4 a:aac|aac-he
Supported = f:wav n:2 m:audio/x-wav a:lpcm
# Supported image formats:
Supported = f:bmp m:image/bmp
Supported = f:gif m:image/gif
Supported = f:jpg m:image/jpeg
Supported = f:png m:image/png
# Supported subtitles formats:
SupportedExternalSubtitlesFormats = WEBVTT
Probably because the Chromecast hardcodes the renderer file selection:
from:ChromecastMgr.java
ccr = RendererConfiguration.getRendererConfigurationByName("Chromecast");
So I switched the RendererName in the conf files temporarily to test. Success. No transcoding of h265 video from an mkv!
Here are the unswapped changes.
First, I had to change the existing Android-Chromecast.conf:
#UserAgentSearch = Android|CrKey
UserAgentSearch = CrKey.*armv71|armv71.*CrKey
Various revisions had the search keys in different orders. The new one doesn't even add a unique field. The only way we know is the arch build flag. (its aarch64 insteam of armv7)
Google-Android-ChromecastUltra.conf:
RendererName = ChromecastUltra
RendererIcon = chromecast.png
# ============================================================================
# This renderer has sent the following string/s:
#
# User-Agent: Mozilla/5.0 (X11; Linux aarch64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.84 Safari/537.36 CrKey/1.21a.76178
# ============================================================================
#
UserAgentSearch = CrKey.*aarch64|aarch64.*CrKey
# Note: Set loading priority to 1 to activate this configuration and override Android.conf
LoadingPriority = 1
SeekByTime = exclusive
TranscodeVideo = MPEGTS-H264-AC3
TranscodeAudio = MP3
MaxVideoBitrateMbps = 20
MimeTypesChanges = video/mpeg=video/mp4
CustomFFmpegOptions = -async 1 -fflags +genpts -c:a libmp3lame -ac 2 -b:v 35000k -bufsize 35000k -f matroska
MediaInfo = true
# Supported video formats:
# ChromeCastU seems to be fine with mkv, and plays h265 unlike the classic
Supported = f:mpegts|mp4|mkv v:mp4|h264|h265 a:aac|aac-he|mp3 n:2 m:video/mpeg
# Supported audio formats:
Supported = f:aac n:2 m:audio/aac a:aac|aac-he
Supported = f:mp3 n:2 m:audio/mp3
Supported = f:m4a|mp4 n:2 m:audio/mp4 a:aac|aac-he
Supported = f:wav n:2 m:audio/x-wav a:lpcm
# Supported image formats:
Supported = f:bmp m:image/bmp
Supported = f:gif m:image/gif
Supported = f:jpg m:image/jpeg
Supported = f:png m:image/png
# Supported subtitles formats:
SupportedExternalSubtitlesFormats = WEBVTT