Fix preview-clip ffmpeg: force even dimensions for libx264

Bug: 'width not divisible by 2 (853x480)' from screenshot.
libx264 requires even width/height. scale=854:480 + decrease can result
in 853x480 (odd width).

Fix: chain second scale filter that truncates to nearest even number:
  scale=trunc(iw/2)*2:trunc(ih/2)*2

Verified locally: 4.4MB clip in 4.8s on CPU.
This commit is contained in:
Sebastjan Artič 2026-04-30 12:01:06 +00:00
parent 0513768466
commit 69062205fd

View File

@ -1291,7 +1291,7 @@ async def preview_clip(
"-i", str(src),
"-ss", f"{min(0.5, start):.2f}", # fine seek
"-t", f"{duration:.2f}",
"-vf", "scale=854:480:force_original_aspect_ratio=decrease", # 480p
"-vf", "scale=854:480:force_original_aspect_ratio=decrease,scale=trunc(iw/2)*2:trunc(ih/2)*2", # 480p, even dimensions for libx264
"-c:v", "libx264",
"-preset", "ultrafast", # NAJHITREJŠI preset
"-crf", "30", # nižja kvaliteta = hitrejše