Web Player: MEDIA_ERR_SRC_NOT_SUPPORTED with HEVC IPTV source

I presume others may have the same issue as myself but couldn't exactly find 100% the same issue I'm seeing.

I'm having issues watching channels on the Channels DVR Web Player and receive a playback failure that is reproducible. The Live TV playback issue that occurs only happens in the Channels DVR Web Player. The same channels play successfully using native Channels clients / VLC

Server

Ubuntu 22.04.5 LTS
Intel Core i5-10500T / Intel UHD Graphics
Channels DVR native Linux installation
DVR version: 2026.08.07.0346
Intel VAAPI hardware transcoding available and functional

Source

IPTV via M3U/VirtualChannelsProxy
Affected channel: 9102 - Simpsons 24/7
Source video: HEVC/H.265
1920x1080 progressive

Problem

When playing this channel through the Channels DVR Web Player, playback fails with:

VIDEOJS: ERROR: (CODE:4 MEDIA_ERR_SRC_NOT_SUPPORTED)

The media could not be loaded, either because the server or network failed or because the format is not supported.

This occurs with both Hardware and Software transcoding.

The important distinction is that the channel works through native Channels clients. The failure appears specific to the Web Player.

What I have verified

Channels successfully starts the transcoder. With Hardware selected it uses:

encoder=h264_vaapi

codec=h264

acodec=aac

resolution=1080

deinterlacer=hardware

bitrate=5744

The transcoder continues producing H.264/AAC HLS segments rather than crashing.

Browser Developer Tools shows that the Web Player successfully retrieves the HLS resources:

master.m3u8 → HTTP 200

stream.m3u8 → HTTP 200

stream1.ts → HTTP 206 Partial Content

The TS response has:

Content-Type: video/mp2t

Accept-Ranges: bytes

Content-Length: 3022664

Content-Range: bytes 0-3022663/3022664

The master playlist returned by Channels contains:

#EXT-X-VERSION:3

#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=6000000,CODECS="avc1.64002a,mp4a.40.2",RESOLUTION=1920x1080

The media playlist contains:

#EXT-X-VERSION:3

#EXT-X-MEDIA-SEQUENCE:1

#EXT-X-TARGETDURATION:4

#EXTINF:3.970644

followed by the stream1.ts URL.

Therefore the browser is successfully receiving the master playlist, media playlist and MPEG-TS media segment, but Video.js subsequently reports MEDIA_ERR_SRC_NOT_SUPPORTED.

Additional server log information

The incoming HEVC stream generates repeated:

[hevc] PPS id out of range: 0

[hevc] Error parsing NAL unit #1.

and:

Stream HEVC is not hvc1, you should use tag:v hvc1 to set it.

However, Channels continues transcoding and producing H.264/AAC segments, and the source works in native Channels clients.

Troubleshooting already performed

Tested Hardware transcoding - fails in Web Player.
Tested Software transcoding - fails in Web Player.
Confirmed Intel VAAPI/h264_vaapi is operational.
Confirmed Channels continues generating encoded HLS segments.
Independently tested a generated H.264 .ts segment with the FFmpeg bundled with Channels; FFmpeg decoded it without errors.
Tested Channels Streaming storage on local ext4 instead of the normal CIFS/NAS location; Web Player failure remained.
Browser successfully retrieves the HLS playlists and TS segment, ruling out a simple HTTP 404/network delivery failure.
Native Channels playback works; issue is Web Player-specific.

Could you please investigate whether there is an issue with the Web Player/HLS output generated for this HEVC source, particularly why Video.js/browser rejects the transcoded H.264/AAC HLS stream with MEDIA_ERR_SRC_NOT_SUPPORTED even though the HLS resources are successfully delivered?

DVR Diagnostic ID:
b97695d1-c5f2-4166-b5d9-0a09ad6db7ce

Browser/version:
Brave - Chromium: 153.0.8010.18

Web Player computer/OS:
Windows 10 Pro Version 10.0.19045 Build 19045

Hopefully the above is enough information to help with determining what may be going wrong.

This is a known issue. Use a non-Chromium-based browser like Firefox:

1 Like

Thanks no worries. I have been experiencing these issues for 6months+ however. Haven't had the time to write up a full bug report though till now sadly and just made do using workarounds

1 Like