From a3659e8a8cbabcbb655fe4fab409b6a707d21ba9 Mon Sep 17 00:00:00 2001 From: Mathieu Moran Date: Mon, 10 Aug 2026 00:18:41 -0400 Subject: [PATCH] fix(video): transcode audio to AAC for MP4 streaming (PCM unsupported in MP4) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- app.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/app.py b/app.py index d5098e6..b23a602 100644 --- a/app.py +++ b/app.py @@ -150,14 +150,15 @@ def local_video_file(): except FileNotFoundError: return jsonify(error=f"Local video not found: {relative_path}"), 404 - # Stream via ffmpeg: copy streams into an MP4 container with moov atom first - # so browsers can start playback immediately without downloading the whole file. + # Stream via ffmpeg: copy video, transcode audio to AAC (PCM not supported + # in MP4), output as fragmented MP4 so browser plays without full download. def generate_stream(): cmd = [ "ffmpeg", "-nostdin", "-loglevel", "error", "-i", path, - "-c", "copy", # no re-encode, just remux - "-movflags", "frag_keyframe+empty_moov+faststart", + "-c:v", "copy", + "-c:a", "aac", + "-movflags", "frag_keyframe+empty_moov", "-f", "mp4", "pipe:1", ]