FFmpeg: Videoqualität verbessern – Skalierung, Entrauschen, Stabilisierung

INEZA Felin-Michel

INEZA Felin-Michel

10 April 2026

FFmpeg: Videoqualität verbessern – Skalierung, Entrauschen, Stabilisierung

Apidog für Unternehmen

On-Premises-Bereitstellung

SSO & RBAC

SOC 2 konform

Apidog Enterprise entdecken

TL;DR

FFmpeg skaliert Videos mit -vf "scale=1920:1080:flags=lanczos" hoch — Lanczos ist der beste Skalierungsalgorithmus für das Hochskalieren. Für die Entrauschung reduziert hqdn3d das Rauschen (Grain) und bewahrt gleichzeitig Kanten. Für die Stabilisierung bewältigt vidstab Kamerawackler durch einen zweistufigen Prozess. Kombinieren Sie alle drei in einer einzigen Filterkette für eine Pipeline zur Qualitätsverbesserung.

Einleitung

Die Qualitätsverbesserung von Videos mit FFmpeg geht über die reine Änderung der Auflösung hinaus. Echte Verbesserung kombiniert die Hochskalierung der Auflösung mit intelligenter Entrauschung und optionaler Stabilisierung. Jeder Schritt zielt auf ein anderes Qualitätsproblem ab: unscharfes oder pixeliges Material, körnige oder verrauschte Bilder und verwackelte Kamerabewegungen.

Dieser Leitfaden behandelt jede Technik einzeln und zeigt, wie man sie kombiniert.

Schaltfläche

Skalierungsalgorithmen

Der Skalierungsalgorithmus bestimmt, wie FFmpeg beim Hochskalieren neue Pixel füllt. Die Wahl hat einen sichtbaren Einfluss auf die Ausgabequalität.

Algorithmus Geschwindigkeit Qualität Am besten geeignet für
neighbor Am schnellsten Am niedrigsten Pixel-Art
bilinear Schnell Niedrig Geschwindigkeitskritisch
bicubic Mittel Gut Allgemeines Herunterskalieren
lanczos Langsamer Am besten Hochskalieren

Hochskalieren auf 1080p mit Lanczos:

ffmpeg -i input_720p.mp4 -vf "scale=1920:1080:flags=lanczos" -c:v libx264 -crf 20 output_1080p.mp4

Seitenverhältnis beibehalten:

ffmpeg -i input.mp4 -vf "scale=1920:-2:flags=lanczos" -c:v libx264 -crf 20 output.mp4

-2 berechnet die Höhe automatisch unter Beibehaltung des Seitenverhältnisses und stellt sicher, dass das Ergebnis durch 2 teilbar ist.

Skalieren auf 4K:

ffmpeg -i input.mp4 -vf "scale=3840:-2:flags=lanczos" -c:v libx264 -crf 18 -preset slow output_4k.mp4

-preset slow weist x264 an, mehr Zeit für die Optimierung der Komprimierung aufzuwenden, was bei höheren Auflösungen relevanter ist.

Entrauschung mit hqdn3d

Der hqdn3d Filter ist eine hochwertige 3D-Entrauschung. Er entfernt Rauschen und Körnigkeit, während er Kantendetails bewahrt.

ffmpeg -i noisy_video.mp4 -vf "hqdn3d=4:3:6:4.5" -c:v libx264 -crf 20 denoised.mp4

Die vier Parameter: luma_spatial:chroma_spatial:luma_temporal:chroma_temporal

Stärkere Entrauschung:

ffmpeg -i grainy.mp4 -vf "hqdn3d=10:8:15:10" -c:v libx264 -crf 20 clean.mp4

Höhere Werte entfernen mehr Rauschen, können aber feine Details verwischen. Testen Sie verschiedene Einstellungen, bevor Sie das vollständige Video verarbeiten.

Leichte Entrauschung (Details erhalten):

ffmpeg -i video.mp4 -vf "hqdn3d=2:1.5:3:2.5" -c:v libx264 -crf 20 output.mp4

Stabilisierung mit vidstab

Der vidstab-Filter erfordert einen zweistufigen Ansatz: Zuerst wird die Bewegung analysiert, dann die Stabilisierung angewendet.

Installieren: Die vidstab-Unterstützung hängt von Ihrem FFmpeg-Build ab. Überprüfen Sie dies mit ffmpeg -filters | grep vidstab. Unter macOS: brew install ffmpeg enthält es.

Durchlauf 1: Bewegung analysieren

ffmpeg -i shaky_video.mp4 -vf "vidstabdetect=stepsize=6:shakiness=8:accuracy=9:result=transform.trf" -f null -

shakiness=8 (1-10): Wie starkes Kamerawackeln zu erwarten ist. accuracy=9 (1-15): Erkennungsgenauigkeit. Das -f null - verwirft die Ausgabe; wir benötigen nur die .trf-Datei.

Durchlauf 2: Stabilisierung anwenden

ffmpeg -i shaky_video.mp4 -vf "vidstabtransform=input=transform.trf:zoom=1:smoothing=10" -c:v libx264 -crf 20 stabilized.mp4

zoom=1 fügt einen 1%igen Zoom hinzu, um die durch die Stabilisierung verursachte Randbeschneidung auszugleichen. Erhöhen Sie den Wert, wenn schwarze Ränder erscheinen. smoothing=10 steuert, wie glatt die Kamerabewegung wird (höher = glatter).

Aggressivere Stabilisierung:

ffmpeg -i video.mp4 -vf "vidstabtransform=input=transform.trf:zoom=3:smoothing=30:optzoom=1" -c:v libx264 -crf 20 stable.mp4

optzoom=1 optimiert den Zoom automatisch, um Ränder zu vermeiden.

Kombinierte Pipeline zur Qualitätsverbesserung

Führen Sie alle drei Operationen zusammen in einer einzigen Filterkette aus:

ffmpeg -i source.mp4 \
  -vf "hqdn3d=4:3:6:4.5,scale=1920:-2:flags=lanczos,vidstabtransform=input=transform.trf:zoom=1:smoothing=10" \
  -c:v libx264 -crf 18 -preset slow \
  -c:a copy \
  enhanced.mp4

Wenden Sie diese Reihenfolge an: zuerst entrauschen (entfernt Artefakte, die die Skalierung beeinträchtigen könnten), dann skalieren, dann stabilisieren. Dies vermeidet, dass Rauschen auf eine höhere Auflösung skaliert wird.

Hinweis: Führen Sie den vidstabdetect-Durchlauf zuerst aus, bevor Sie diese kombinierte Pipeline verwenden.

Schärfungsfilter

Wenn das Material eher unscharf als verrauscht aussieht, kann das Schärfen helfen:

ffmpeg -i video.mp4 -vf "unsharp=5:5:1.5:5:5:0.5" -c:v libx264 -crf 20 sharpened.mp4

Parameter: lx:ly:la:cx:cy:ca (Luma/Chroma-Größen und -Beträge)
lx:ly — Größe der Luma-Matrix (Pixel)
la — Luma-Betrag (positiv = schärfen, negativ = weichzeichnen)
cx:cy:ca — Chroma-Äquivalente

Für leichte Schärfung: unsharp=3:3:0.5:3:3:0.0
Für starke Schärfung: unsharp=5:5:2.5:5:5:0.0

Leistungsüberlegungen

Verbesserungsoperationen sind rechenintensiv. Schätzungen der Verarbeitungszeit für ein 10-minütiges 1080p-Video:

Verwenden Sie -preset, um die Balance zwischen Kodiergeschwindigkeit und Dateigröße zu finden:

Für die Stapelverarbeitung führen Sie mehrere Dateien gleichzeitig aus oder verwenden Sie parallel:

ls *.mp4 | parallel ffmpeg -i {} -vf "scale=1920:-2:flags=lanczos" -c:v libx264 -crf 20 enhanced_{/}

Verbindung zu KI-Video-Upscaling-APIs herstellen

Für KI-gestütztes Upscaling (das bessere Ergebnisse liefert als FFmpeg-Filter bei Material von geringer Qualität oder beschädigtem Material) existieren neben den FFmpeg-Tools spezialisierte APIs.

WaveSpeedAI bietet KI-Upscaling-Modelle an, die neuronales Upscaling anstelle von algorithmischen Filtern verwenden:

POST https://api.wavespeed.ai/api/v2/wavespeed-ai/video-enhance
Authorization: Bearer {{WAVESPEED_API_KEY}}
Content-Type: application/json

{
  "video_url": "https://storage.example.com/source-video.mp4",
  "scale": 2,
  "enhance": true
}

Testen Sie dies mit Apidog vor der Integration:

Assertions hinzufügen:

Statuscode ist 200
Antworttext enthält Feld 'id'

Fragen Sie den Status-Endpunkt nach der Fertigstellung ab und vergleichen Sie dann die KI-hochskalierte Ausgabe mit der Lanczos-Ausgabe von FFmpeg. KI-Upscaling verarbeitet Texturen und feine Details besser als algorithmische Methoden; FFmpeg ist schneller und kostenlos.

Verwenden Sie FFmpeg für Arbeiten mit Standardqualität und API-basiertes KI-Upscaling für Material, bei dem Qualität am wichtigsten ist.

FAQ

Ist Lanczos in allen Fällen besser als Bicubic?
Für das Hochskalieren, ja. Für das Herunterskalieren ist Bicubic oft schneller bei vergleichbarer Qualität. Lanczos ist rechenintensiver.

Funktioniert vidstab bei Handyaufnahmen?
Ja. Handyaufnahmen profitieren oft am meisten von der Stabilisierung. Der Parameter `shakiness` sollte für Handheld-Handyvideos hoch (8-10) eingestellt werden.

Wie viel Zoom ist nötig, um Stabilisierungsränder zu verbergen?
Typischerweise 3-8% je nachdem, wie stark die Quelle verwackelt ist. Setzen Sie optzoom=1, damit FFmpeg dies automatisch berechnet.

Kann FFmpeg historisches Material mit niedriger Auflösung verbessern?
FFmpeg-Filter helfen, haben aber Grenzen. KI-basierte Upscaling-Tools (wie ESRGAN oder spezialisierte Video-Enhancement-APIs) liefern bei stark beschädigtem Material deutlich bessere Ergebnisse.

Verlangsamt die Entrauschung die Wiedergabe?
Nein. Entrauschung ist ein Verarbeitungsschritt während der Konvertierung, kein Echtzeit-Effekt. Das Ausgabevideo wird normal abgespielt.

Praktizieren Sie API Design-First in Apidog

Entdecken Sie eine einfachere Möglichkeit, APIs zu erstellen und zu nutzen