From e1a695665774bd8c88adf60d750c509d30131ac3 Mon Sep 17 00:00:00 2001 From: Nathan Coad Date: Fri, 2 Oct 2026 10:16:14 +1000 Subject: [PATCH] Pin static-ffmpeg to 9.0.2; drop duplicate stream error log - ffmpeg 7.1.1's HLS demuxer rejects segment extensions such as .ec3 ("not in allowed_extensions"), so streams with E-AC-3 audio died a few seconds after starting. The image used to track :latest; pinning to 7.1.1 regressed it. 9.0.2 includes ec3 in the default allow-list. - The client loop logged the downloader's error a second time (shown as "FFMPEG error () - EC: 0") and bumped the error counter twice. --- Dockerfile | 4 +++- src/buffer.go | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7d28b2c..450d6e2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,7 +19,9 @@ RUN XTEVE_VERSION="$(grep -m1 '^#### ' changelog-beta.md | cut -d' ' -f2 | sed ' # Static ffmpeg/ffprobe binaries. To bump, pick a tag from # https://hub.docker.com/r/mwader/static-ffmpeg/tags and change it here. -FROM mwader/static-ffmpeg:7.1.1 AS ffmpeg +# Do not go below 8.x: 7.1.1 rejects HLS segments with extensions such as .ec3 +# ("not in allowed_extensions"), which breaks streams with E-AC-3 audio. +FROM mwader/static-ffmpeg:9.0.2 AS ffmpeg FROM alpine:3.23 diff --git a/src/buffer.go b/src/buffer.go index 8b36370..bed0d86 100644 --- a/src/buffer.go +++ b/src/buffer.go @@ -86,7 +86,7 @@ func bufferingStream(playlistID, streamingURL, channelName string, w http.Respon return } if s.Err != nil { - ShowError(s.Err, 0) + // Already logged by the downloader that reported it. return } if s.Status { @@ -127,7 +127,7 @@ func bufferingStream(playlistID, streamingURL, channelName string, w http.Respon return } if s.Err != nil { - ShowError(s.Err, 0) + // Already logged by the downloader that reported it. return }