Chromecast Ultra and 2nd Gen - Error code: h4 (Not Supported)

I did as suggested, anyway. Same issue.

Aug 17, 2020 10:01:31.036 [0xa9476440] INFO - [Chromecast] [MDE] Finished analysis of 161 (mp4, aac)
Aug 17, 2020 10:01:31.036 [0xa9476440] WARN - [Chromecast] [MDE] Invalid profile property; channels: 5 > 2
Aug 17, 2020 10:01:31.036 [0xa9476440] WARN - [Chromecast] [MDE] Invalid profile property; channels: 5 > 2
Aug 17, 2020 10:01:31.037 [0xa9476440] WARN - [Chromecast] [MDE] No stream selected; will not be able to analyze stream codecs
Aug 17, 2020 10:01:31.037 [0xa9476440] INFO - [Chromecast] [MDE] Starting analysis of 161 (mp4, aac)
Aug 17, 2020 10:01:31.744 [0xa8c75440] INFO - CodecManager: obtaining decoder ā€˜aac_lc’
Aug 17, 2020 10:01:32.653 [0xa9476440] ERROR - [Transcoder] Unknown decoder ā€˜aac_lc’
Aug 17, 2020 10:01:32.658 [0xa8c75440] ERROR - [TranscodeOutputStream] Streaming Session 0xb03b78f0 appears to have died from under us
Aug 17, 2020 10:01:32.679 [0xa3bfd440] WARN - [Chromecast] [Player] A critical HTML media error occurred: 4 (Not Supported); the player cannot recover
Aug 17, 2020 10:01:32.807 [0xa69fc440] WARN - [Chromecast] NotSupportedError: Failed to load because no supported source was found.
Aug 17, 2020 10:01:32.807 [0xa69fc440] WARN - [Chromecast] Did not move header ā€œacceptā€ to query string. This can result in an unnecessary OPTIONS preflight request.
Aug 17, 2020 10:01:33.081 [0xa3bfd440] WARN - [Chromecast] Did not move header ā€œacceptā€ to query string. This can result in an unnecessary OPTIONS preflight request.
Aug 17, 2020 10:01:33.135 [0xa9476440] WARN - [Chromecast] [Player] Player was closed or a new playback session was started; ignoring callback
Aug 17, 2020 10:01:58.332 [0xa57fe440] INFO - AutoUpdate: no updates available
Aug 17, 2020 10:02:03.777 [0xa1bf9440] INFO - AutoUpdate: no updates available

One more bit of info… these are recordings made on a TiVo Roamio Pro from Verizon Fios MPEG4 channels. In particular, EPIX2HD-E and WGBHDT

Media info on one of the recordings:

General
Complete name : Britannia - 334247.mpg
Format : MPEG-PS
File size : 139 MiB
Duration : 50 min 1 s
Overall bit rate : 388 kb/s

Audio #1
ID : 189 (0xBD)-128 (0x80)
Format : AC-3
Format/Info : Audio Coding 3
Commercial name : Dolby Digital
Muxing mode : DVD-Video
Duration : 50 min 1 s
Bit rate mode : Constant
Bit rate : 384 kb/s
Channel(s) : 6 channels
Channel layout : L R C LFE Ls Rs
Sampling rate : 48.0 kHz
Frame rate : 31.250 FPS (1536 SPF)
Bit depth : 16 bits
Compression mode : Lossy
Stream size : 137 MiB (99%)
Service kind : Complete Main

Audio #2
ID : 220 (0xDC)
Format : MPEG Audio
Compression mode : Lossy

I tried the following to massage it a bit, it it didn’t work:

ffmpeg -y -i Britannia\ -\ 334247.mpg -threads 4 -vcodec h264_omx -level 31 -subq 6 -me_range 16 -qmin 10 -qmax 50 -g 300 -r 29.97 -b 7000k -maxrate 9000k -acodec aac -strict -2 -ab 160k -ar 48000 -f mp4 /media/plex/vids/Britannia.mp4

I was getting same error when trying to play podcasts. Found out that pi-hole was blocking feedpress.com. Once I whitelisted that domain Plex started playing my podcasts.

pi-hole isn’t my issue.

It’s not clear Plex is ever going to address this issue. I’ve requested a refund on my lifetime subscription.

I had high hopes. Perhaps if this starts working, I’ll be back. Not before.

So, I have managed to come up with an ffmpeg incantation to pre-digest recordings to make them work. Here is the mediainfo from a Showtime recording that Plex would not stream. This is an MPEG-TS example that would not work, but I also have recordings that started as MP4s that would not stream before this pre-processing. An example will follow once I have the best ffmpeg settings:

General
ID                                       : 1 (0x1)
Complete name                            : UnderTheSkin.mpg
Format                                   : MPEG-TS
File size                                : 2.14 GiB
Duration                                 : 1 h 49 min
Overall bit rate mode                    : Variable
Overall bit rate                         : 2 792 kb/s
Movie name                               : Fifth Element, The
Law rating                               : R
FileExtension_Invalid                    : ts m2t m2s m4t m4s tmf ts tp trp ty

Video
ID                                       : 6161 (0x1811)
Menu ID                                  : 1 (0x1)
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4.1
Format settings                          : CABAC / 4 Ref Frames
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 4 frames
Codec ID                                 : 27
Duration                                 : 1 h 49 min
Bit rate                                 : 2 266 kb/s
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 29.970 (30000/1001) FPS
Standard                                 : Component
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : MBAFF
Scan type, store method                  : Interleaved fields
Scan order                               : Top Field First
Bits/(Pixel*Frame)                       : 0.036
Stream size                              : 1.74 GiB (81%)
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

Audio
ID                                       : 6162 (0x1812)
Menu ID                                  : 1 (0x1)
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Commercial name                          : Dolby Digital
Codec ID                                 : 129
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Bit rate                                 : 384 kb/s
Channel(s)                               : 6 channels
Channel layout                           : L R C LFE Ls Rs
Sampling rate                            : 48.0 kHz
Frame rate                               : 31.250 FPS (1536 SPF)
Bit depth                                : 16 bits
Compression mode                         : Lossy
Delay relative to video                  : -964 ms
Stream size                              : 302 MiB (14%)
Service kind                             : Complete Main

Text #1
ID                                       : 6161 (0x1811)-CC1
Menu ID                                  : 1 (0x1)
Format                                   : EIA-608
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)
CaptionServiceName                       : CC1

Text #2
ID                                       : 6161 (0x1811)-CC3
Menu ID                                  : 1 (0x1)
Format                                   : EIA-608
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)
CaptionServiceName                       : CC3

Text #3
ID                                       : 6161 (0x1811)-1
Menu ID                                  : 1 (0x1)
Format                                   : EIA-708
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)

Text #4
ID                                       : 6161 (0x1811)-2
Menu ID                                  : 1 (0x1)
Format                                   : EIA-708
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)

Text #5
ID                                       : 6161 (0x1811)-3
Menu ID                                  : 1 (0x1)
Format                                   : EIA-708
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)

Text #6
ID                                       : 6161 (0x1811)-4
Menu ID                                  : 1 (0x1)
Format                                   : EIA-708
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)

Text #7
ID                                       : 6161 (0x1811)-5
Menu ID                                  : 1 (0x1)
Format                                   : EIA-708
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)

Text #8
ID                                       : 6161 (0x1811)-6
Menu ID                                  : 1 (0x1)
Format                                   : EIA-708
Muxing mode                              : SCTE 128 / DTVCC Transport
Muxing mode, more info                   : Muxed in Video #1
Duration                                 : 1 h 49 min
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)

I ran that through ffmpeg thusly:

ffmpeg -y -i UnderTheSkin.mpg -threads 4 -vcodec h264_omx -level 31 -subq 6 -me_range 16 -qmin 10 -qmax 50 -g 300 -r 29.97 -b:v 2M -acodec aac -ac 2 -strict -2 -ab 160k -ar 48000 -vf scale=w=1280:h=720:force_original_aspect_ratio=decrease -f mp4 …/vids/UnderTheSkin.mp4

Two things of note there… I’m scaling down, mainly because I’ll be streaming from a Pi and don’t want a lot of transcoding work being done in realtime, and I’m reducing the audio channels to 2. I haven’t tried a different value yet to see if it works, but 2 does. The result is this:

General
Complete name                            : ../vids/UnderTheSkin.mp4
Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom (isom/iso2/avc1/mp41)
File size                                : 1.05 GiB
Duration                                 : 1 h 41 min
Overall bit rate mode                    : Variable
Overall bit rate                         : 1 495 kb/s
Writing application                      : Lavf58.20.100

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4
Format settings                          : CABAC / 1 Ref Frames
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 1 frame
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 1 h 41 min
Bit rate                                 : 1 331 kb/s
Width                                    : 1 280 pixels
Height                                   : 720 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 29.970 (29970/1000) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.048
Stream size                              : 962 MiB (89%)
Codec configuration box                  : avcC

Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2
Duration                                 : 1 h 40 min
Bit rate mode                            : Variable
Bit rate                                 : 157 kb/s
Maximum bit rate                         : 160 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Stream size                              : 113 MiB (10%)
Default                                  : Yes
Alternate group                          : 1

If Plex wants to fix the issue, I’d be happy to send them back the money for a lifetime subscription.

I tried to get 5.1 out of the recording. It will stream to my phone, but will not stream to Chromecast:

Complete name                            : ../vids/UnderTheSkinTwo.mp4
Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom (isom/iso2/avc1/mp41)
File size                                : 1.05 GiB
Duration                                 : 1 h 41 min
Overall bit rate mode                    : Variable
Overall bit rate                         : 1 495 kb/s
Writing application                      : Lavf58.20.100

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4
Format settings                          : CABAC / 1 Ref Frames
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 1 frame
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 1 h 41 min
Bit rate                                 : 1 331 kb/s
Width                                    : 1 280 pixels
Height                                   : 720 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 29.970 (29970/1000) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.048
Stream size                              : 962 MiB (89%)
Codec configuration box                  : avcC

Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2
Duration                                 : 1 h 40 min
Bit rate mode                            : Variable
Bit rate                                 : 157 kb/s
Maximum bit rate                         : 160 kb/s
Channel(s)                               : 6 channels
Channel layout                           : C L R Ls Rs LFE
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Stream size                              : 113 MiB (10%)
Default                                  : Yes
Alternate group                          : 1


Last posting. Here’s a MPEG4 source converted as above, with two audio channels. It streams to Chromecast fine. Hopefully, Plex will fix transcoding so we get full surround (Amazon can stream Dolby Digital to my Chromecast) and don’t have to pre-chew its food. I’d love to be a subscriber, if only the software worked as advertised:


General
Complete name                            : ../vids/Britannia.mp4
Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom (isom/iso2/avc1/mp41)
File size                                : 787 MiB
Duration                                 : 49 min 21 s
Overall bit rate                         : 2 228 kb/s
Writing application                      : Lavf58.20.100

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4
Format settings                          : CABAC / 1 Ref Frames
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 1 frame
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 49 min 21 s
Bit rate                                 : 2 061 kb/s
Width                                    : 1 280 pixels
Height                                   : 720 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 29.970 (29970/1000) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.075
Stream size                              : 728 MiB (93%)
Codec configuration box                  : avcC

Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2
Duration                                 : 49 min 20 s
Bit rate mode                            : Constant
Bit rate                                 : 160 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Stream size                              : 56.5 MiB (7%)
Default                                  : Yes
Alternate group                          : 1

Same problem here with our both chromecasts. Every movie started through the android app to the chromecast have the h4 or another error.
I tried a few solutions developped here, but nothing works anymore :frowning:

Edit : I found that a chromecast hard reset worked… for now.

I’ve got 2nd Gen and been having h4 error for a while now. It only affects certain mkv blu ray rips and not all. No idea what is causing the issue.

I’m running Plex on Synology.
I tried staying playback in mobile and then casting but that doesn’t fix the Chromecast problem.

Any ideas?

I’ve got the same setup. 2nd gen Chromecast with a Synology server. I get an h4 error on any rip with Dolby 7.1 audio. Haven’t found any solutions.

Many DVR rips will get an h4 error, but will work if I immediately play the file again.

Hard reset didn’t do it for me.

When this happens for me it is unable to play any other files that use the codec for ALL PLAYERS, not just the Chromecast, until the Plex Media Server is restarted, and in some cases, the entire PC.

Plex Media Server: Version 1.19.5.3112, Windows 10 64-bit
Clients: Chromecast 3rd Gen (Casting from Plex iOS), Plex Web (Chrome or Firefox)

When it happens, these are all the related WARN’s in the logs:

WARN - [Chromecast] [Player] A critical HTML media error occurred: 4 (Not Supported); the player cannot recover
WARN - [Chromecast] [Player] Video transcode failed. Attempting to fallback to video and audio transcode...
WARN - [Chromecast] [PDE] Player decision failed; the transcode server may be a slow or outdated
WARN - [Chromecast] NotSupportedError: Failed to load because no supported source was found.
WARN - [Chromecast] Did not move header "accept" to query string. This can result in an unnecessary OPTIONS preflight request.
WARN - Got a transcode session ping without a session GUID (or with an invalid one).

Basically it goes for several hours/days without issue.
Then when it happens, I first try to just restart Plex, and if that doesn’t work, a full reboot of my PC.

It’d be one thing if it only broke for the Chromecast, but since it breaks ALL PLAYERS once it happens this is probably a Server issue. Something about Transcoding that is normally working fine breaks, and Plex is unable to recover without restart, and in some cases, the entire PC (maybe there is a cache that is only cleared when rebooting the PC vs. just restarting Plex?)

There’s no way I can justify continuing to pay for Plex Pass if this keeps happening.

Update: It specifically happens to part2; part1 can still be played, but it gives the h4 error every time you try to have it play part2 normally until Plex Server and/or PC reboot.

I do plan to use MKVToolNixGUI to merge the parts, which I hope will prevent this! But I shouldn’t have to: it’s the same H264 codec for both part1 and part2!

I’ve been getting this error on my Chromecasts (Gen2) lately, too. I’m playing files that previously worked just fine. I’m running 8.6.0.20226-beta which is the latest Android app and it’s still happening, but I’d say this goes back three, maybe four versions. Files will throw the error, I’ll play the next one (same codec, hardware, etc) and it will work fine. Then I’ll jump back to the file that threw the error and it’ll work! Nothing changes, it just sometimes throws the error.

I’m attaching server logs where this just happened (i.e., played file on Chromecast, it threw the error, played the next file and it worked fine, jumped back to the file that threw the error and it worked again). Not sure what is causing it, but hopefully these help. The files are nothing special and 100% work, so there’s something wonky going on here. They always work when playing on my tablet, phone (or I haven’t seen it throw any errors yet), so I’m thinking it has something to do with the Chromecast, but who knows.

I’m using a modest but otherwise functioning TerraMaster T-NAS F-220 as my server. Haven’t seen this error in the 3.5 years I’ve been using it. These are 480p files that shouldn’t require anything special, either. Wrapper is MKV, but not sure if either of these things really matters as it never did before.

Well, I’ve just upgraded to 1.20.1.3252 and although the message has changed – it is now ā€œConversion failed. The transcoder exited due to an error.ā€ – the behavior is the same. Exactly the same recording, but with audio mixed down to two channels rather than 5.1 will stream.

When the heck is this going to get some attention, Plex?

I can confirm that one cause of this is TrueHD audio.

1 Like

Issue manifests for me with audio on stereo (or on any other audio setting). Resetting Chromecast does not help. On latest Plex Android version 8.6.0.20351. Setting quality to 320p sometimes gets me through an episode. Sometimes.