Documentation du redimensionneur FFmpeg
1 Description
Le redimensionneur FFmpeg fournit une interface de haut niveau aux utilitaires de conversion d'image de la bibliothèque libswscale. Il permet notamment d'effectuer la mise à l'échelle d'image ainsi que la conversion de pixel format.
2 Options du redimensionneur
Le redimensionneur vidéo prend en charge les options nommées suivantes.
Les options peuvent être définies en spécifiant -option value dans les outils FFmpeg, à quelques exceptions près réservées à l'API et mentionnées ci-dessous. Pour un usage programmatique, elles peuvent être définies explicitement dans les options de SwsContext ou via l'API libavutil/opt.h.
scaler, scaler_sub
Choisit l'algorithme de mise à l'échelle à utiliser. La valeur par défaut est ‘auto’ pour les deux. Accepte les valeurs suivantes :
‘auto’
Choix automatique. Pour ‘scaler_sub’, cela signifie utiliser le même algorithme que ‘scaler’. Pour ‘scaler’, la valeur par défaut correspond à l'indicateur du redimensionneur sélectionné par ‘sws_flags’.
‘bilinear’
Filtre bilinéaire. (également appelé filtre triangle)
‘bicubic’
Spline BC cubique à 2 prises (également appelée spline de Mitchell-Netravali). Les paramètres B et C peuvent être configurés via param0 et param1, dont les valeurs par défaut sont respectivement 0.0 et 0.6.
‘point, neighbor’
Échantillonnage ponctuel (également appelé plus proche voisin).
‘area’
Moyenne par zone. Équivaut à ‘bilinear’ pour l'agrandissement.
‘gaussian’
Approximation de filtre gaussien à 2 prises. Le paramètre de netteté peut être configuré via param0, dont la valeur par défaut est 3.0.
‘sinc’
Filtre sinc non fenêtré.
‘lanczos’
Rééchantillonnage de Lanczos (sinc fenêtré par un sinc). Le nombre de prises du filtre peut être configuré via param0, dont la valeur par défaut est 3.
‘spline’
Spline bicubique naturelle non fenêtrée.
sws_flags
Définit les indicateurs du redimensionneur. Cela sert aussi à définir l'algorithme de mise à l'échelle, mais cet usage est obsolète au profit de la définition de ‘scaler’. Un seul algorithme peut être sélectionné à la fois. La valeur par défaut est ‘bicubic’.
Accepte les valeurs suivantes :
‘fast_bilinear’
Sélectionne l'algorithme de mise à l'échelle bilinéaire rapide. (Obsolète)
‘bilinear’
Sélectionne l'algorithme de mise à l'échelle bilinéaire. (Obsolète)
‘bicubic’
Sélectionne l'algorithme de mise à l'échelle bicubique. (Obsolète)
‘experimental’
Sélectionne l'algorithme de mise à l'échelle expérimental. (Obsolète)
‘neighbor’
Sélectionne l'algorithme de mise à l'échelle par plus proche voisin. (Obsolète)
‘area’
Sélectionne l'algorithme de mise à l'échelle par moyenne de zone. (Obsolète)
‘bicublin’
Sélectionne l'algorithme de mise à l'échelle bicubique pour la composante de luminance, et bilinéaire pour les composantes de chrominance. (Obsolète)
‘gauss’
Sélectionne l'algorithme de mise à l'échelle gaussien. (Obsolète)
‘sinc’
Sélectionne l'algorithme de mise à l'échelle sinc. (Obsolète)
‘lanczos’
Sélectionne l'algorithme de mise à l'échelle de Lanczos. La largeur par défaut (alpha) est 3 et peut être modifiée via param0. (Obsolète)
‘spline’
Sélectionne l'algorithme de mise à l'échelle par spline bicubique naturelle. (Obsolète)
‘print_info’
Active l'affichage et la journalisation de débogage.
‘accurate_rnd’
Active l'arrondi précis.
‘full_chroma_int’
Active l'interpolation complète de la chrominance.
‘full_chroma_inp’
Sélectionne l'entrée en pleine chrominance.
‘bitexact’
Active la sortie bit-exact.
‘unstable’
Autorise l'utilisation de code expérimental récent. Cela peut légèrement affecter la sortie, voire produire des résultats erronés. Réservé aux tests.
srcw (API only)
Définit la largeur de la source.
srch (API only)
Définit la hauteur de la source.
dstw (API only)
Définit la largeur de la destination.
dsth (API only)
Définit la hauteur de la destination.
src_format (API only)
Définit le pixel format source (doit être exprimé sous forme d'entier).
dst_format (API only)
Définit le pixel format de destination (doit être exprimé sous forme d'entier).
src_range (boolean)
Si la valeur est définie à 1, indique que la source est en plage complète. La valeur par défaut est 0, ce qui indique que la source est en plage limitée.
dst_range (boolean)
Si la valeur est définie à 1, active la plage complète pour la destination. La valeur par défaut est 0, qui active la plage limitée.
gamma (boolean)
Si la valeur est définie à 1, active la mise à l'échelle avec prise en compte du gamma. La valeur par défaut est 0.
param0, param1
Définit les paramètres de l'algorithme de mise à l'échelle. Les valeurs indiquées sont propres à certains algorithmes de mise à l'échelle et ignorées par les autres. Les valeurs indiquées sont des nombres à virgule flottante.
sws_dither
Définit l'algorithme de tramage. Accepte l'une des valeurs suivantes. La valeur par défaut est ‘auto’.
‘auto’
choix automatique
‘none’
aucun tramage
‘bayer’
tramage de Bayer
‘ed’
tramage par diffusion d'erreur
‘a_dither’
tramage arithmétique, basé sur l'addition
‘x_dither’
tramage arithmétique, basé sur le xor (motif plus aléatoire et moins visible que a_dither).
alphablend
Définit le mélange alpha à utiliser lorsque l'entrée comporte un canal alpha mais pas la sortie. La valeur par défaut est ‘none’.
‘uniform_color’
Compose sur une couleur de fond uniforme
‘checkerboard’
Mélange avec un damier
‘none’
Aucun mélange
sws_backends
Définit les moteurs swscale autorisés. Il s'agit d'une option de type indicateurs, permettant donc de combiner plusieurs moteurs.
‘auto’
Sélection automatique. Équivaut à ‘stable’ ou à ‘all’ selon que l'indicateur ‘unstable’ est défini ou non. C'est la valeur par défaut.
‘stable’
Tous les moteurs stables.
‘unstable’
Tous les moteurs instables.
‘all’
Tous les moteurs disponibles.
‘legacy’
Ancien code swscale.
‘c’
Code de référence à base de templates.
‘memcpy’
Chemin rapide utilisant memcpy de la libc.
‘x86’
Noyaux SIMD x86.
‘aarch64’
Noyaux NEON AArch64.
‘spirv’
Moteur Vulkan SPIR-V.
‘glsl’
Moteur Vulkan GLSL.
3 Voir aussi
ffmpeg, ffplay, ffprobe, libswscale
4 Auteurs
Les développeurs de FFmpeg.
Pour plus de détails sur les auteurs, consultez l'historique Git du projet (https://git.ffmpeg.org/ffmpeg), par exemple en tapant la commande git log dans le répertoire source de FFmpeg, ou en parcourant le dépôt en ligne à l'adresse https://git.ffmpeg.org/ffmpeg.
Les mainteneurs des composants spécifiques sont répertoriés dans le fichier MAINTAINERS de l'arborescence des sources.
Hébergement fourni par telepoint.bg