From 0c278228719ad770d02eedbc856f528919f8e7ff Mon Sep 17 00:00:00 2001 From: db123 Date: Thu, 25 Jun 2026 16:06:57 +0330 Subject: [PATCH] fix: 'best' format on audio-only sites (SoundCloud) now shows audio containers - When content is audio-only (IsAudioOnlyContent), 'best' format is marked as IsAudioOnly so determineMediaType returns MediaTypeAudio - Previously 'best' was hardcoded with HasVideo:true, causing video containers (mp4/mkv) to be shown instead of audio containers (mp3/m4a/opus) --- internal/handler/download.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/handler/download.go b/internal/handler/download.go index d7305c3..1a2c0c0 100644 --- a/internal/handler/download.go +++ b/internal/handler/download.go @@ -166,7 +166,11 @@ func (h *Handler) handleFormatSelection(ctx context.Context, chatID int64, msgID ss.MainFormatID = formatID if formatID == "best" { - ss.MainFormat = &domain.Format{ID: "best", HasVideo: true, HasAudio: true} + if ss.MediaInfo.IsAudioOnlyContent() { + ss.MainFormat = &domain.Format{ID: "best", HasAudio: true, IsAudioOnly: true} + } else { + ss.MainFormat = &domain.Format{ID: "best", HasVideo: true, HasAudio: true} + } h.advanceToLanguage(ctx, chatID, msgID, userID, ss) return }