Amazon Best VPN GoSearch

Icône de favori OnWorks

formats ffmpeg

Exécutez les formats ffmpeg dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande ffmpeg-formats qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


ffmpeg-formats - formats FFmpeg

DESCRIPTION


Ce document décrit les formats pris en charge (multiplexeurs et démultiplexeurs) fournis par le
bibliothèque de format libav.

Format OPTIONS


La bibliothèque libavformat fournit des options globales génériques, qui peuvent être définies sur tous les
multiplexeurs et démultiplexeurs. De plus, chaque multiplexeur ou démultiplexeur peut prendre en charge les soi-disant privés
options, qui sont spécifiques à ce composant.

Les options peuvent être définies en spécifiant -option Plus-value dans les outils FFmpeg, ou en définissant le
valeur explicitement dans les options "AVFormatContext" ou en utilisant le libavutil/opt.h API pour
utilisation programmatique.

La liste des options prises en charge est la suivante :

drapeaux aviateurs drapeaux (entrée sortie)
Valeurs possibles:


Réduire la mise en mémoire tampon.

taille de la sonde entier (contribution)
Définir la taille de sondage en octets, c'est-à-dire la taille des données à analyser pour obtenir le flux
informations. Une valeur plus élevée permettra de détecter plus d'informations au cas où
dispersé dans le flux, mais augmentera la latence. Doit être un nombre entier non inférieur
que 32. C'est 5000000 par défaut.

taille de paquet entier (sortie)
Définir la taille du paquet.

drapeaux drapeaux (entrée sortie)
Définir des indicateurs de format.

Valeurs possibles:

ignidx
Ignorer l'index.

recherche rapide
Activez les recherches rapides mais inexactes pour certains formats.

Genpts
Générer PTS.

pas de remplissage
Ne remplissez pas les valeurs manquantes qui peuvent être calculées exactement.

pas d'analyse
Désactivez AVParsers, cela nécessite également "+nofillin".

igndts
Ignorer DTS.

jetercorrompu
Jeter les images corrompues.

trier
Essayez d'entrelacer les paquets de sortie par DTS.

donjon
Ne fusionnez pas les données secondaires.

latitude
Activez la charge utile RTP MP4A-LATM.

pas de tampon
Réduire la latence introduite par la mise en mémoire tampon facultative

bitexact
N'écrivez que des données indépendantes de la plate-forme, de la construction et du temps. Cela garantit que le fichier
et les sommes de contrôle des données sont reproductibles et correspondent entre les plates-formes. Son utilisation principale
est pour les tests de régression.

chercher2tout entier (contribution)
Autoriser la recherche d'images non-clés au niveau du démultiplexeur lorsqu'il est pris en charge s'il est défini sur 1. Par défaut
est 0.

durée analysée entier (contribution)
Spécifiez combien de microsecondes sont analysées pour sonder l'entrée. Une valeur plus élevée sera
permettre de détecter des informations plus précises, mais augmentera la latence. Il est par défaut
5,000,000 5 XNUMX microsecondes = XNUMX secondes.

clé de chiffrement hexadécimal un magnifique (contribution)
Définir la clé de déchiffrement.

indexmem entier (contribution)
Définir la mémoire maximale utilisée pour l'index d'horodatage (par flux).

rtbufsize entier (contribution)
Définissez la mémoire maximale utilisée pour la mise en mémoire tampon des trames en temps réel.

fdebug drapeaux (entrée sortie)
Imprimer des informations de débogage spécifiques.

Valeurs possibles:

ts
délai_max entier (entrée sortie)
Définissez le délai de multiplexage ou de démultiplexage maximal en microsecondes.

fpsrobesize entier (contribution)
Définir le nombre d'images utilisées pour sonder les fps.

audio_preload entier (sortie)
Définissez les microsecondes auxquelles les paquets audio doivent être entrelacés plus tôt.

durée_morceau entier (sortie)
Définissez des microsecondes pour chaque morceau.

taille_morceau entier (sortie)
Définir la taille en octets pour chaque morceau.

err_detect, f_err_detect drapeaux (contribution)
Définir des indicateurs de détection d'erreur. "f_err_detect" est obsolète et ne doit être utilisé que via
le ffmpeg outil.

Valeurs possibles:

vérifier
Vérifiez les CRC intégrés.

flux binaire
Détectez les écarts de spécification du flux binaire.

tampon
Détecter une longueur de flux binaire incorrecte.

exploser
Abandonner le décodage en cas de détection d'erreur mineure.

prudente
Considérez les choses qui violent les spécifications et n'ont pas été vues dans la nature comme
erreurs.


Considérez toutes les non-conformités aux spécifications comme des erreurs.

agressif
Considérez les choses qu'un encodeur sensé ne devrait pas faire comme une erreur.

max_interleave_delta entier (sortie)
Définir la durée maximale de mise en mémoire tampon pour l'entrelacement. La durée est exprimée en
microsecondes et par défaut à 1000000 (1 seconde).

Pour s'assurer que tous les flux sont correctement entrelacés, libavformat attendra jusqu'à ce qu'il
a au moins un paquet pour chaque flux avant d'écrire réellement des paquets dans le
fichier de sortie. Lorsque certains cours d'eau sont « clairsemés » (c'est-à-dire qu'il y a de grands écarts entre
paquets successifs), cela peut entraîner une mise en mémoire tampon excessive.

Ce champ spécifie la différence maximale entre les horodatages du premier et
le dernier paquet dans la file d'attente de multiplexage, au-dessus duquel libavformat produira un paquet
indépendamment du fait qu'il ait mis en file d'attente un paquet pour tous les flux.

S'il est défini sur 0, libavformat continuera à mettre les paquets en mémoire tampon jusqu'à ce qu'il ait un paquet pour
chaque flux, quelle que soit la différence d'horodatage maximale entre les
paquets.

use_wallclock_as_timestamps entier (contribution)
Utilisez l'horloge murale comme horodatage.

éviter_negative_ts entier (sortie)
Valeurs possibles:

make_non_negative
Décalez les horodatages pour les rendre non négatifs. Notez également que cela n'affecte que
des horodatages négatifs en tête et non des horodatages négatifs non monotones.

make_zéro
Décalez les horodatages de sorte que le premier horodatage soit 0.

auto (Par défaut)
Permet le décalage lorsque requis par le format cible.

handicapé
Désactive le décalage de l'horodatage.

Lorsque le décalage est activé, tous les horodatages de sortie sont décalés du même montant. L'audio,
la désynchronisation de la vidéo et des sous-titres et les différences d'horodatage relatives sont préservées
par rapport à ce qu'ils auraient été sans changement.

skip_initial_bytes entier (contribution)
Définissez le nombre d'octets à ignorer avant de lire l'en-tête et les trames s'il est défini sur 1. La valeur par défaut est
0.

correct_ts_overflow entier (contribution)
Corrigez les dépassements d'horodatage unique s'il est défini sur 1. La valeur par défaut est 1.

flush_packets entier (sortie)
Videz le flux d'E/S sous-jacent après chaque paquet. La valeur par défaut 1 l'active et a le
effet de réduction de la latence ; 0 le désactive et peut légèrement augmenter les performances dans
certains cas.

sortie_ts_offset compenser (sortie)
Réglez le décalage de temps de sortie.

compenser doit être une spécification de durée, voir le Heure durée in le
ffmpeg-utils(1) Manuel.

Le décalage est ajouté par le multiplexeur aux horodatages de sortie.

Spécifier un décalage positif signifie que les flux correspondants sont retardés par le
durée spécifiée dans compenser. La valeur par défaut est 0 (ce qui signifie qu'aucun décalage n'est
appliqué).

format_liste blanche liste (contribution)
"," séparé Liste des démultiplexeurs autorisés. Par défaut, tous sont autorisés.

dump_separator un magnifique (contribution)
Séparateur utilisé pour séparer les champs imprimés sur la ligne de commande concernant le Stream
paramètres. Par exemple pour séparer les champs avec des sauts de ligne et un retrait :

ffprobe -dump_separator "
" -je ~/videos/matrixbench_mpeg2.mpg

Format courant spécificateurs
Les spécificateurs de flux de format permettent de sélectionner un ou plusieurs flux qui correspondent à des
.

Les formes possibles de spécificateurs de flux sont :

index_flux
Correspond au flux avec cet index.

type_flux[:index_flux]
type_flux est l'un des suivants : « v » pour la vidéo, « a » pour l'audio, « s » pour les sous-titres, « d »
pour les données et 't' pour les pièces jointes. Si index_flux est donné, alors il correspond à la
numéro de flux index_flux de ce type. Sinon, il correspond à tous les flux de ce
type.

p:id_programme[:index_flux]
If index_flux est donné, alors il correspond au flux avec le numéro index_flux dans le
programme avec l'identifiant id_programme. Sinon, il correspond à tous les flux du programme.

#id_flux
Correspond au flux par un ID spécifique au format.

La sémantique exacte des spécificateurs de flux est définie par le
Fonction "avformat_match_stream_specifier()" déclarée dans le libavformat/avformat.h
en-tête.

DEMUXER


Les démultiplexeurs sont des éléments configurés dans FFmpeg qui peuvent lire les flux multimédias à partir d'un
type de fichier particulier.

Lorsque vous configurez votre build FFmpeg, tous les démultiplexeurs pris en charge sont activés par défaut.
Vous pouvez lister tous ceux disponibles en utilisant l'option de configuration "--list-demuxers".

Vous pouvez désactiver tous les démultiplexeurs en utilisant l'option de configuration "--disable-demuxers", et
activer sélectivement un seul démultiplexeur avec l'option "--enable-demuxer=DEMUXER", ou désactiver
avec l'option "--disable-demuxer=DEMUXER".

L'option "-formats" des outils ff* affichera la liste des démultiplexeurs activés.

La description de certains des démultiplexeurs actuellement disponibles suit.

aa
Démultiplexeur Audible Format 2, 3 et 4.

Ce démultiplexeur est utilisé pour démultiplexer les fichiers Audible Format 2, 3 et 4 (.aa).

pommehttp
Démultiplexeur Apple HTTP Live Streaming.

Ce démultiplexeur présente tous les AVStreams de toutes les variantes de flux. Le champ id est défini sur le
numéro d'index de variante de débit binaire. En définissant les drapeaux de suppression sur AVStreams (en appuyant sur « a »
ou 'v' dans ffplay), l'appelant peut décider quelles variantes de flux recevoir réellement. Les
le débit binaire total de la variante à laquelle appartient le flux est disponible dans une clé de métadonnées
nommé "variant_bitrate".

apng
Démultiplexeur de graphiques réseau portables animés.

Ce démultiplexeur est utilisé pour démultiplexer les fichiers APNG. Tous les en-têtes, sauf la signature PNG, jusqu'à (mais
non compris) le premier bloc fcTL est transmis en tant que données supplémentaires. Les cadres sont ensuite divisés
comme étant tous les morceaux entre deux fcTL, ou entre les derniers morceaux fcTL et IEND.

-ignorer_loop bool
Ignorez la variable de boucle dans le fichier si elle est définie.

-max_fps int
Fréquence d'images maximale en images par seconde (0 pour aucune limite).

-default_fps int
Fréquence d'images par défaut en images par seconde lorsqu'aucune n'est spécifiée dans le fichier (0 signifiant
aussi vite que possible).

asf
Démultiplexeur Advanced Systems Format.

Ce démultiplexeur est utilisé pour démultiplexer les fichiers ASF et les flux réseau MMS.

-no_resync_search bool
N'essayez pas de resynchroniser en recherchant un certain code de démarrage facultatif.

concat
Démultiplexeur de script de concaténation virtuel.

Ce démultiplexeur lit une liste de fichiers et d'autres directives à partir d'un fichier texte et les démultiplexe
l'un après l'autre, comme si tout leur paquet avait été mêlé.

Les horodatages dans les fichiers sont ajustés de sorte que le premier fichier commence à 0 et chaque suivant
le fichier commence là où le précédent se termine. Notez que cela est fait globalement et peut causer
lacunes si tous les flux n'ont pas exactement la même longueur.

Tous les fichiers doivent avoir les mêmes flux (mêmes codecs, même base de temps, etc.).

La durée de chaque fichier permet d'ajuster les horodatages du fichier suivant : si le
la durée est incorrecte (parce qu'elle a été calculée en utilisant le débit binaire ou parce que le fichier est
tronqué, par exemple), il peut provoquer des artefacts. La directive "duration" peut être utilisée pour
remplacer la durée stockée dans chaque fichier.

Syntaxe

Le script est un fichier texte en ASCII étendu, avec une directive par ligne. Lignes vides,
les espaces et les lignes commençant par '#' sont ignorés. La directive suivante est
reconnu:

"déposer chemin"
Chemin d'accès à un fichier à lire ; les caractères spéciaux et les espaces doivent être échappés avec une barre oblique inverse
ou des guillemets simples.

Toutes les directives ultérieures relatives au fichier s'appliquent à ce fichier.

"ffconcat version 1.0
Identifiez le type et la version du script. Il définit également le sécuritaire option à 1 si c'était à
sa valeur par défaut -1.

Pour que FFmpeg reconnaisse automatiquement le format, cette directive doit apparaître exactement
tel quel (pas d'espace supplémentaire ni de marque d'ordre d'octet) sur la toute première ligne du script.

"durée majeur"
Durée du fichier. Ces informations peuvent être spécifiées à partir du fichier ; en le précisant
ici peut être plus efficace ou aider si les informations du fichier ne sont pas disponibles
ou précis.

Si la durée est fixée pour tous les fichiers, alors il est possible de chercher dans l'ensemble
vidéo concaténée.

" indiquer horodatage"
Au point du fichier. Lorsque le démultiplexeur ouvre le fichier, il recherche instantanément le
horodatage spécifié. La recherche est effectuée afin que tous les flux puissent être présentés avec succès
au point In.

Cette directive fonctionne mieux avec les codecs intra-trame, car pour ceux qui ne sont pas intra-trame
vous obtiendrez généralement des paquets supplémentaires avant le point d'entrée réel et le contenu décodé
contiendra très probablement des images avant le point In aussi.

Pour chaque fichier, les paquets avant le point d'entrée du fichier auront des horodatages inférieurs au
horodatage de début calculé du fichier (négatif dans le cas du premier fichier), et le
la durée des fichiers (si non spécifiée par la directive "duration") sera réduite
en fonction de leur point In spécifié.

En raison des paquets potentiels avant le point d'entrée spécifié, les horodatages des paquets peuvent
chevauchement entre deux fichiers concaténés.

"point de sortie horodatage"
Point de sortie du fichier. Lorsque le démultiplexeur atteint l'horodatage de décodage spécifié dans
l'un des flux, il le traite comme une condition de fin de fichier et ignore le courant
et tous les paquets restants de tous les flux.

Le point de sortie est exclusif, ce qui signifie que le démultiplexeur ne produira pas de paquets avec un
horodatage de décodage supérieur ou égal au point de sortie.

Cette directive fonctionne mieux avec les codecs et formats intra-trame où tous les flux sont
étroitement imbriqué. Pour les codecs non intra-frame, vous obtiendrez généralement des
paquets avec l'horodatage de présentation après le point de sortie, donc le contenu décodé sera
contiennent probablement aussi des images après le point de sortie. Si vos flux ne sont pas étroitement
entrelacé, vous ne pouvez pas obtenir tous les paquets de tous les flux avant le point de sortie et vous
may ne pourra décoder que le premier flux jusqu'au point de sortie.

La durée des fichiers (si elle n'est pas spécifiée par la directive "duration") sera
réduit en fonction de leur point de sortie spécifié.

"file_packet_metadata key ="
Métadonnées des paquets du fichier. Les métadonnées spécifiées seront définies pour chaque fichier
paquet. Vous pouvez spécifier cette directive plusieurs fois pour ajouter plusieurs métadonnées
entrées.

"flux"
Introduisez un flux dans le fichier virtuel. Toutes les directives ultérieures liées au flux
s'appliquent au dernier flux introduit. Certaines propriétés de flux doivent être définies afin de
permettent d'identifier les flux correspondants dans les sous-fichiers. Si aucun flux n'est défini dans
le script, les flux du premier fichier sont copiés.

"exact_stream_id id"
Définissez l'identifiant du flux. Si cette directive est donnée, la chaîne avec le
L'identifiant correspondant dans les sous-fichiers sera utilisé. Ceci est particulièrement utile pour MPEG-PS
(VOB), où l'ordre des flux n'est pas fiable.

Options

Ce démultiplexeur accepte l'option suivante :

sécuritaire
S'il est défini sur 1, rejetez les chemins de fichiers non sécurisés. Un chemin de fichier est considéré comme sûr s'il ne
contiennent une spécification de protocole et sont relatifs et tous les composants ne contiennent que
caractères du jeu de caractères portable (lettres, chiffres, point, trait de soulignement et
trait d'union) et n'ont pas de point au début d'un composant.

S'il est défini sur 0, tout nom de fichier est accepté.

La valeur par défaut est -1, elle équivaut à 1 si le format a été automatiquement sondé et 0
autrement.

conversion_auto
S'il est défini sur 1, essayez d'effectuer des conversions automatiques sur les données par paquets pour rendre les flux
concaténable. La valeur par défaut est 1.

Actuellement, la seule conversion consiste à ajouter le filtre de flux binaire h264_mp4toannexb à
Flux H.264 au format MP4. Ceci est nécessaire en particulier s'il y a résolution
changements.

flv
Démultiplexeur Adobe Flash Video Format.

Ce démultiplexeur est utilisé pour démultiplexer les fichiers FLV et les flux réseau RTMP.

-flv_metadonnées bool
Allouez les flux en fonction du contenu du tableau onMetaData.

libgme
La bibliothèque Game Music Emu est une collection d'émulateurs de fichiers musicaux de jeux vidéo.

Voirhttp://code.google.com/p/game-music-emu/> pour plus d'informations.

Certains fichiers ont plusieurs pistes. Le démultiplexeur choisira la première piste par défaut. Les
track_index L'option peut être utilisée pour sélectionner une piste différente. Les index de piste commencent à 0. Le
demuxer exporte le nombre de pistes comme vos titres saisie de métadonnées.

Pour les fichiers très volumineux, le taille max l'option peut devoir être ajustée.

libquvi
Lisez des médias à partir de services Internet à l'aide du projet quvi.

Le démultiplexeur accepte un le format possibilité de demander une qualité spécifique. Il est défini par défaut sur
les meilleurs.

Voirhttp://quvi.sourceforge.net/> pour plus d'informations.

FFmpeg doit être construit avec "--enable-libquvi" pour que ce démultiplexeur soit activé.

gif
Démultiplexeur GIF animé.

Il accepte les options suivantes :

délai_min
Définissez le délai minimum valide entre les images en centièmes de secondes. La plage est de 0 à
6000. La valeur par défaut est 2.

max_gif_delay
Définissez le délai maximum valide entre les images en centièmes de seconde. La plage est de 0 à
65535. La valeur par défaut est 65535 (près de onze minutes), la valeur maximale autorisée par
la spécification.

délai_par défaut
Définissez le délai par défaut entre les images en centièmes de secondes. La plage est de 0 à 6000.
La valeur par défaut est 10.

ignorer_loop
Les fichiers GIF peuvent contenir des informations à boucler un certain nombre de fois (ou à l'infini).
If ignorer_loop est défini sur 1, alors le paramètre de boucle de l'entrée sera ignoré et
la boucle ne se produira pas. S'il est défini sur 0, une boucle se produira et fera cycler le nombre
de fois selon le GIF. La valeur par défaut est 1.

Par exemple, avec le filtre de superposition, placez un GIF en boucle infinie sur une autre vidéo :

ffmpeg -i input.mp4 -ignore_loop 0 -i input.gif -filter_complex overlay=shortest=1 out.mkv

Notez que dans l'exemple ci-dessus, l'option la plus courte pour le filtre de superposition est utilisée pour terminer le
sortie vidéo à la longueur du fichier d'entrée le plus court, qui dans ce cas est entrée.mp4 as
le GIF dans cet exemple boucle à l'infini.

image2
Démultiplexeur de fichiers image.

Ce démultiplexeur lit à partir d'une liste de fichiers image spécifiés par un modèle. La syntaxe et
la signification du motif est spécifiée par l'option Type de motif.

Le modèle peut contenir un suffixe qui est utilisé pour déterminer automatiquement le format de
les images contenues dans les fichiers.

La taille, le format de pixel et le format de chaque image doivent être les mêmes pour tous les
fichiers dans la séquence.

Ce démultiplexeur accepte les options suivantes :

framerate
Définissez la fréquence d'images pour le flux vidéo. La valeur par défaut est 25.

boucle
S'il est défini sur 1, boucle sur l'entrée. La valeur par défaut est 0.

Type de motif
Sélectionnez le type de modèle utilisé pour interpréter le nom de fichier fourni.

Type de motif accepte l'une des valeurs suivantes.

aucun
Désactivez la correspondance de modèle, donc la vidéo ne contiendra que le spécifié
image. Vous devez utiliser cette option si vous ne souhaitez pas créer de séquences à partir de
plusieurs images et vos noms de fichiers peuvent contenir des caractères de motif spéciaux.

séquence
Sélectionnez un type de modèle de séquence, utilisé pour spécifier une séquence de fichiers indexés par
numéros séquentiels.

Un modèle de séquence peut contenir la chaîne "%d" ou "%0Nd", qui précise le
position des caractères représentant un numéro séquentiel dans chaque nom de fichier
correspond au motif. Si la forme "%d0Nd" est utilisé, la chaîne représentant le
le numéro dans chaque nom de fichier est complété par 0 et N est le nombre total de chiffres complétés par 0
représentant le nombre. Le caractère littéral '%' peut être spécifié dans le modèle
avec la chaîne "%%".

Si le modèle de séquence contient "%d" ou "%0Nd", le premier nom de fichier du fichier
la liste spécifiée par le modèle doit contenir un nombre compris entre
numéro_début et mes numéro_début+start_number_range-1, et tous les nombres suivants
doit être séquentiel.

Par exemple, le modèle "img-%03d.bmp" correspondra à une séquence de noms de fichiers du
formulaire img-001.bmp, img-002.bmp, ..., img-010.bmp, etc.; le motif
"i%%m%%g-%d.jpg" loading="lazy" correspondra à une séquence de noms de fichiers de la forme je%m%g-1.jpg,
je%m%g-2.jpg, ..., je%m%g-10.jpg, etc.

Notez que le motif ne doit pas nécessairement contenir "%d" ou "%0Nd", par exemple pour
convertir un seul fichier image img.jpeg vous pouvez utiliser la commande :

ffmpeg -i img.jpeg img.png

glob
Sélectionnez un type de motif générique glob.

Le motif est interprété comme un motif "glob()". Ceci n'est sélectionnable que si
libavformat a été compilé avec le support du globbing.

glob_séquence (obsolète, sera be supprimé)
Sélectionnez un modèle mixte de caractère générique/séquence.

Si votre version de libavformat a été compilée avec le support du globbing, et que le
à condition que le modèle contienne au moins un caractère méta glob parmi "%*?[]{}" qui est
précédé d'un "%" non échappé, le motif est interprété comme un motif "glob()",
sinon, il est interprété comme un motif de séquence.

Tous les caractères spéciaux glob "%*?[]{}" doivent être préfixés par "%". Pour échapper à un
littéral "%" vous devez utiliser "%%".

Par exemple, le modèle "foo-%*.jpeg" correspondra à tous les noms de fichiers préfixés par
"foo-" et se terminant par ".jpeg", et "foo-%?%?%?.jpeg" correspondra à tous les
les noms de fichiers préfixés par "foo-", suivis d'une séquence de trois caractères, et
se terminant par ".jpeg".

Ce type de modèle est déconseillé au profit de glob et mes séquence.

La valeur par défaut est glob_séquence.

format_pixel
Définissez le format de pixel des images à lire. S'il n'est pas spécifié, le format de pixel est
deviné à partir du premier fichier image de la séquence.

numéro_début
Définissez l'index du fichier correspondant au modèle de fichier image à partir duquel commencer la lecture.
La valeur par défaut est 0.

start_number_range
Définissez la plage d'intervalles d'indexation à vérifier lors de la recherche du premier fichier image dans le
séquence, à partir de numéro_début. La valeur par défaut est 5.

ts_from_file
S'il est défini sur 1, l'horodatage de l'image sera défini sur l'heure de modification du fichier image. Noter que
la monotonie des horodatages n'est pas fournie : les images vont dans le même ordre que sans cela
option. La valeur par défaut est 0. S'il est défini sur 2, l'horodatage de la trame sera défini sur la modification
temps du fichier image en précision nanoseconde.

taille_vidéo
Définissez la taille de la vidéo des images à lire. Si non spécifié, la taille de la vidéo est devinée
à partir du premier fichier image de la séquence.

Exemples

· Utilisation ffmpeg pour créer une vidéo à partir des images de la séquence de fichiers img-001.jpeg,
img-002.jpeg, ..., en supposant une fréquence d'images en entrée de 10 images par seconde :

ffmpeg -framerate 10 -i 'img-%03d.jpeg' out.mkv

· Comme ci-dessus, mais commencez par lire à partir d'un fichier d'index 100 dans l'ordre :

ffmpeg -framerate 10 -start_number 100 -i 'img-%03d.jpeg' out.mkv

· Lisez les images correspondant au modèle de glob "*.png" loading="lazy", c'est-à-dire tous les fichiers se terminant par
le suffixe ".png" loading="lazy":

ffmpeg -framerate 10 -pattern_type glob -i "*.png" loading="lazy" out.mkv

mov/mp4/3gp/Quicktme
Démultiplexeur Quicktime / MP4.

Ce démultiplexeur accepte les options suivantes :

activer_drefs
Activer le chargement des pistes externes, désactivé par défaut. L'activation de ceci peut
théoriquement fuite d'informations dans certains cas d'utilisation.

use_absolute_path
Permet le chargement de pistes externes via des chemins absolus, désactivé par défaut. Activation
cela pose un risque pour la sécurité. Il ne doit être activé que si la source est connue pour être non
mal intentionné.

mpgts
Démultiplexeur de flux de transport MPEG-2.

Ce démultiplexeur accepte les options suivantes :

taille_resynchronisation
Définir la taille limite pour rechercher une nouvelle synchronisation. La valeur par défaut est 65536.

fix_teletext_pts
Remplacer les valeurs PTS et DTS des paquets télétexte par les horodatages calculés à partir du
PCR du premier programme dont le flux télétexte fait partie et n'est pas rejeté.
La valeur par défaut est 1, définissez cette option sur 0 si vous voulez que votre paquet télétexte PTS et DTS
valeurs intactes.

ts_packetsize
Option de sortie portant la taille brute du paquet en octets. Afficher le paquet brut détecté
taille, ne peut pas être défini par l'utilisateur.

scan_all_pmts
Scannez et combinez tous les PMT. La valeur est un entier avec une valeur de -1 à 1 (-1 signifie
réglage automatique, 1 signifie activé, 0 signifie désactivé). La valeur par défaut est -1.

vidéo brute
Démultiplexeur vidéo brut.

Ce démultiplexeur permet de lire des données vidéo brutes. Comme il n'y a pas d'en-tête spécifiant le
paramètres vidéo supposés, l'utilisateur doit les spécifier afin de pouvoir décoder les
correctement les données.

Ce démultiplexeur accepte les options suivantes :

framerate
Réglez la fréquence d'images de la vidéo d'entrée. La valeur par défaut est 25.

format_pixel
Définissez le format de pixel vidéo d'entrée. La valeur par défaut est "yuv420p".

taille_vidéo
Définissez la taille de la vidéo d'entrée. Cette valeur doit être spécifiée explicitement.

Par exemple pour lire un fichier rawvideo entrée.raw avec ffplay, en supposant un format de pixel de
"rgb24", une taille de vidéo de "320x240", et une fréquence d'images de 10 images par seconde, utilisez le
commander:

ffplay -f rawvideo -pixel_format rgb24 -video_size 320x240 -framerate 10 input.raw

sbg
Démultiplexeur de scripts SBaGen.

Ce démultiplexeur lit le langage de script utilisé par SBaGenhttp://uazu.net/sbagen/> à
générer des sessions de battements binauraux. Un script SBG ressemble à ça :

-SI
a: 300-2.5/3 440+4.5/0
b: 300-2.5/0 440+4.5/3
désactivé: -
MAINTENANT == un
+0:07:00 == b
+0:14:00 == un
+0:21:00 == b
+0:30:00 de réduction

Un script SBG peut mélanger des horodatages absolus et relatifs. Si le script utilise soit seulement
horodatages absolus (y compris l'heure de début du script) ou uniquement relatifs, alors son
la mise en page est fixe et la conversion est simple. En revanche, si le script
mélange les deux types d'horodatage, puis le MAINTENANT référence pour les horodatages relatifs sera
prise à partir de l'heure actuelle de la journée au moment où le script est lu, et la mise en page du script
sera gelé selon cette référence. Cela signifie que si le script est directement
joué, les heures réelles correspondront aux horodatages absolus jusqu'à celui du contrôleur de son
précision de l'horloge, mais si l'utilisateur interrompt la lecture ou cherche, toutes les heures seront
décalé en conséquence.

légendes
Légendes JSON utilisées pourhttp://www.ted.com/>.

TED ne fournit pas de liens vers les légendes, mais ils peuvent être devinés à partir de la page. Les
filet outils/bookmarklets.html de l'arborescence des sources FFmpeg contient un bookmarklet à exposer
Eux.

Ce démultiplexeur accepte l'option suivante :

Heure de début
Réglez l'heure de début de la conversation TED, en millisecondes. La valeur par défaut est 15000 15 (XNUMX s). Il est
utilisé pour synchroniser les légendes avec les vidéos téléchargeables, car elles incluent un 15s
introduction.

Exemple : convertissez les sous-titres dans un format que la plupart des joueurs comprennent :

ffmpeg -je http://www.ted.com/talks/subtitles/id/1/lang/en talk1-fr.srt

MUXEURS


Les multiplexeurs sont des éléments configurés dans FFmpeg qui permettent d'écrire des flux multimédia sur un
type de fichier particulier.

Lorsque vous configurez votre build FFmpeg, tous les multiplexeurs pris en charge sont activés par défaut. Tu
peut lister tous les multiplexeurs disponibles en utilisant l'option de configuration "--list-muxers".

Vous pouvez désactiver tous les muxers avec l'option de configuration "--disable-muxers" et
activer/désactiver sélectivement les multiplexeurs simples avec les options "--enable-muxer=MUXER" /
"--disable-muxer=MUXER".

L'option "-formats" des outils ff* affichera la liste des multiplexeurs activés.

Une description de certains des multiplexeurs actuellement disponibles suit.

aiff
Muxer de format de fichier d'échange audio.

Options

Il accepte les options suivantes :

écriture_id3v2
Activer l'écriture des balises ID3v2 lorsqu'il est défini sur 1. La valeur par défaut est 0 (désactivé).

id3v2_version
Sélectionnez la version ID3v2 à écrire. Actuellement, seules les versions 3 et 4 (aka. ID3v2.3 et
ID3v2.4) sont pris en charge. La valeur par défaut est la version 4.

crc
Format de test CRC (Cyclic Redundancy Check).

Ce multiplexeur calcule et imprime le CRC Adler-32 de toutes les trames audio et vidéo d'entrée.
Par défaut, les images audio sont converties en images audio et vidéo brutes 16 bits signées en images brutes
vidéo avant de calculer le CRC.

La sortie du multiplexeur consiste en une seule ligne de la forme : CRC=0xCRC, Où CRC est une
nombre hexadécimal 0-complété à 8 chiffres contenant le CRC pour toutes les entrées décodées
cadres.

Voir aussi cadrecrc multiplexeur.

Exemples

Par exemple pour calculer le CRC de l'entrée, et le stocker dans le fichier sortie.crc:

ffmpeg -i INPUT -f sortie crc.crc

Vous pouvez imprimer le CRC sur stdout avec la commande :

ffmpeg -i ENTRÉE -f crc -

Vous pouvez sélectionner le format de sortie de chaque image avec ffmpeg en spécifiant l'audio et
codec et format vidéo. Par exemple pour calculer le CRC de l'audio d'entrée converti en PCM
8 bits non signé et la vidéo d'entrée convertie en vidéo MPEG-2, utilisez la commande :

ffmpeg -i INPUT -c:a pcm_u8 -c:v mpeg2video -f crc -

cadrecrc
Format de test CRC (contrôle de redondance cyclique) par paquet.

Ce multiplexeur calcule et imprime le CRC Adler-32 pour chaque paquet audio et vidéo. Par
les images audio par défaut sont converties en images audio et vidéo brutes 16 bits signées en images brutes
vidéo avant de calculer le CRC.

La sortie du muxer consiste en une ligne pour chaque paquet audio et vidéo de la forme :

, , , , , 0x

CRC est un nombre hexadécimal 0-complété à 8 chiffres contenant le CRC du paquet.

Exemples

Par exemple pour calculer le CRC des trames audio et vidéo dans CONTRIBUTION, converti en brut
paquets audio et vidéo, et stockez-les dans le fichier sortie.crc:

ffmpeg -i INPUT -f framecrc out.crc

Pour imprimer les informations sur stdout, utilisez la commande :

ffmpeg -i INPUT -f framecrc -

Avec ffmpeg, vous pouvez sélectionner le format de sortie auquel les images audio et vidéo sont
codé avant de calculer le CRC pour chaque paquet en spécifiant le codec audio et vidéo.
Par exemple, pour calculer le CRC de chaque trame audio d'entrée décodée convertie en PCM
8 bits non signé et de chaque image vidéo d'entrée décodée convertie en vidéo MPEG-2, utilisez le
commander:

ffmpeg -i INPUT -c:a pcm_u8 -c:v mpeg2video -f framecrc -

Voir aussi crc multiplexeur.

cadremd5
Format de test MD5 par paquet.

Ce multiplexeur calcule et imprime le hachage MD5 pour chaque paquet audio et vidéo. Par défaut
les trames audio sont converties en trames audio et vidéo brutes 16 bits signées en vidéo brute avant
calcul du hachage.

La sortie du muxer consiste en une ligne pour chaque paquet audio et vidéo de la forme :

, , , , ,

MD5 est un nombre hexadécimal représentant le hachage MD5 calculé pour le paquet.

Exemples

Par exemple pour calculer le MD5 des trames audio et vidéo dans CONTRIBUTION, converti en brut
paquets audio et vidéo, et stockez-les dans le fichier out.md5:

ffmpeg -i INPUT -f framemd5 out.md5

Pour imprimer les informations sur stdout, utilisez la commande :

ffmpeg -i ENTRÉE -f framemd5 -

Voir aussi md5 multiplexeur.

gif
Muxer GIF animé.

Il accepte les options suivantes :

boucle
Définissez le nombre de boucles de sortie. Utilisez "-1" pour aucune boucle, 0 pour une boucle
indéfiniment (par défaut).

retard_final
Force le délai (exprimé en centisecondes) après la dernière trame. Chaque cadre se termine par
un délai jusqu'à la prochaine image. La valeur par défaut est "-1", qui est une valeur spéciale à indiquer
le multiplexeur pour réutiliser le délai précédent. En cas de boucle, vous voudrez peut-être personnaliser
cette valeur pour marquer une pause par exemple.

Par exemple, pour encoder un gif en boucle 10 fois, avec un délai de 5 secondes entre les boucles :

ffmpeg -i INPUT -loop 10 -final_delay 500 out.gif

Remarque 1 : si vous souhaitez extraire les images dans des fichiers GIF séparés, vous devez forcer le
image2 multiplexeur :

ffmpeg -i INPUT -c:v gif -f image2 "out%d.gif"

Remarque 2 : le format GIF a une base de temps très petite : le délai entre deux images ne peut pas être
inférieure à un centi seconde.

hls
Muxer HTTP Live Streaming d'Apple qui segmente MPEG-TS selon le HTTP Live Streaming
(HLS).

Il crée un fichier de liste de lecture et un ou plusieurs fichiers de segment. Le nom du fichier de sortie spécifie
le nom du fichier de la liste de lecture.

Par défaut, le multiplexeur crée un fichier pour chaque segment produit. Ces fichiers ont le même
nom comme liste de lecture, suivi d'un numéro séquentiel et d'une extension .ts.

Par exemple, pour convertir un fichier d'entrée avec ffmpeg:

ffmpeg -i in.nut out.m3u8

Cet exemple produira la liste de lecture, out.m3u8, et segmenter les fichiers : sortie0.ts, sortie1.ts,
sortie2.ts, etc.

Voir aussi clignotant muxer, qui fournit une implémentation plus générique et flexible d'un
segmenter, et peut être utilisé pour effectuer une segmentation HLS.

Options

Ce multiplexeur prend en charge les options suivantes :

hls_heure secondes
Définissez la longueur du segment en secondes. La valeur par défaut est 2.

hls_list_size Taille
Définissez le nombre maximum d'entrées de liste de lecture. S'il est défini sur 0, le fichier de liste contiendra tous
les segments. La valeur par défaut est 5.

hls_ts_options liste_options
Définissez les options de format de sortie à l'aide d'une liste :-séparée de paramètres clé=valeur. Valeurs
contenant ":" les caractères spéciaux doivent être échappés.

hls_wrap envelopper
Définissez le numéro après lequel le numéro du nom de fichier du segment (le numéro spécifié dans chaque
fichier de segments) s'enroule. S'il est défini sur 0, le nombre ne sera jamais emballé. La valeur par défaut est 0.

Cette option est utile pour éviter de remplir le disque avec de nombreux fichiers de segments, et des limites
le nombre maximum de fichiers de segment écrits sur le disque pour envelopper.

numéro_début nombre
Démarrez le numéro de séquence de la liste de lecture à partir de nombre. La valeur par défaut est 0.

hls_allow_cache cache d'autorisation
Définir explicitement si le client PEUT \fIs0(1) ou NE DOIT PAS \fIs0(0) support de cache
segments.

hls_base_url baseurl
Ajouter baseurl à chaque entrée de la liste de lecture. Utile pour générer des listes de lecture avec
chemins absolus.

Notez que le numéro de séquence de la playlist doit être unique pour chaque segment et il n'est pas
à confondre avec le numéro de séquence du nom de fichier du segment qui peut être cyclique, par exemple
exemple si le envelopper est spécifiée.

hls_segment_filename nom de fichier
Définissez le nom de fichier du segment. Sauf si hls_flags single_file est défini nom de fichier est utilisé comme un
format de chaîne avec le numéro de segment :

ffmpeg in.nut -hls_segment_filename 'file%03d.ts' out.m3u8

Cet exemple produira la liste de lecture, out.m3u8, et segmenter les fichiers : fichier000.ts,
fichier001.ts, fichier002.ts, etc.

hls_key_info_file fichier_info_clé
Utilisez les informations dans fichier_info_clé pour le chiffrement des segments. La première ligne de
fichier_info_clé spécifie l'URI de clé écrit dans la liste de lecture. L'URL clé est utilisée pour
accéder à la clé de cryptage pendant la lecture. La deuxième ligne indique le chemin d'accès au
key utilisé pour obtenir la clé pendant le processus de cryptage. Le fichier clé est lu comme
un seul tableau condensé de 16 octets au format binaire. La troisième ligne facultative spécifie
le vecteur d'initialisation (IV) sous forme de chaîne hexadécimale à utiliser à la place du
numéro de séquence de segment (par défaut) pour le cryptage. Modifications apportées à fichier_info_clé résultera
en chiffrement par segment avec la nouvelle clé/IV et une entrée dans la liste de lecture pour la nouvelle clé
URI/IV.

Format de fichier d'informations clés :



(optionnel)

Exemples d'URI clés :

http://server/file.key
/chemin/vers/fichier.key
fichier.clé

Exemples de chemins de fichiers clés :

fichier.clé
/chemin/vers/fichier.key

Exemple IV :

0123456789ABCDEF0123456789ABCDEF

Exemple de fichier d'informations clés :

http://server/file.key
/chemin/vers/fichier.key
0123456789ABCDEF0123456789ABCDEF

Exemple de script shell :

#!/ Bin / sh
BASE_URL=${1:-'.'}
openssl rand 16 > fichier.key
echo $BASE_URL/file.key > file.keyinfo
echo fichier.key >> fichier.keyinfo
echo $(openssl rand -hex 16) >> file.keyinfo
ffmpeg -f lavfi -re -i testsrc -c:v h264 -hls_flags delete_segments \
-hls_key_info_file fichier.keyinfo out.m3u8

hls_flags un seul fichier
Si ce drapeau est défini, le multiplexeur stockera tous les segments dans un seul fichier MPEG-TS, et
utilisera des plages d'octets dans la liste de lecture. Les listes de lecture HLS générées de cette manière auront
le numéro de version 4. Par exemple :

ffmpeg -i in.nut -hls_flags fichier_single out.m3u8

Produira la liste de lecture, out.m3u8, et un fichier segment unique, out.ts.

hls_flags supprimer_segments
Les fichiers de segment supprimés de la liste de lecture sont supprimés après une période de temps égale à
la durée du segment plus la durée de la liste de lecture.

ico
Muxer de fichiers ICO.

Le format de fichier d'icône (ICO) de Microsoft a des limitations strictes qui doivent être notées :

· La taille ne peut pas dépasser 256 pixels dans n'importe quelle dimension

· Seules les images BMP et PNG peuvent être stockées

· Si une image BMP est utilisée, elle doit être l'un des formats de pixels suivants :

Profondeur de bits BMP Format de pixels FFmpeg
1bit copain8
4bit copain8
8bit copain8
16 bits rgb555le
24 bits bgr24
bgra 32 bits

· Si une image BMP est utilisée, elle doit utiliser l'en-tête DIB BITMAPINFOHEADER

· Si une image PNG est utilisée, elle doit utiliser le format de pixels rgba

image2
Muxer de fichiers image.

Le multiplexeur de fichiers image écrit des trames vidéo dans des fichiers image.

Les noms de fichiers de sortie sont spécifiés par un modèle, qui peut être utilisé pour produire séquentiellement
série numérotée de fichiers. Le modèle peut contenir la chaîne "%d" ou "%0Nd", cette chaîne
spécifie la position des caractères représentant une numérotation dans les noms de fichiers. Si la
forme "%0Nd" est utilisé, la chaîne représentant le numéro dans chaque nom de fichier est remplie de 0 à N
chiffres. Le caractère littéral '%' peut être spécifié dans le modèle avec la chaîne "%%".

Si le motif contient "%d" ou "%0Nd", le premier nom de fichier de la liste de fichiers spécifiée sera
contiennent le numéro 1, tous les numéros suivants seront séquentiels.

Le modèle peut contenir un suffixe qui est utilisé pour déterminer automatiquement le format de
les fichiers image à écrire.

Par exemple le modèle "img-%03d.bmp" spécifiera une séquence de noms de fichiers de la forme
img-001.bmp, img-002.bmp, ..., img-010.bmp, etc. Le modèle "img%%-%d.jpg" loading="lazy" spécifiera
une séquence de noms de fichiers de la forme image%-1.jpg, image%-2.jpg, ..., image%-10.jpg, etc.

Exemples

L'exemple suivant montre comment utiliser ffmpeg pour créer une séquence de fichiers
img-001.jpeg, img-002.jpeg, ..., prenant une image toutes les secondes à partir de la vidéo d'entrée :

ffmpeg -i in.avi -vsync 1 -r 1 -f image2 'img-%03d.jpeg'

Notez qu'avec ffmpeg, si le format n'est pas spécifié avec l'option "-f" et la sortie
filename spécifie un format de fichier image, le multiplexeur image2 est automatiquement sélectionné, donc
la commande précédente peut être écrite comme :

ffmpeg -i in.avi -vsync 1 -r 1 'img-%03d.jpeg'

Notez également que le motif ne doit pas nécessairement contenir "%d" ou "%0Nd", par exemple pour
créer un seul fichier image img.jpeg à partir de la vidéo d'entrée, vous pouvez utiliser la commande :

ffmpeg -i in.avi -f image2 -frames:v 1 img.jpeg

Pour strftime L'option vous permet de développer le nom du fichier avec des informations de date et d'heure.
Consultez la documentation de la fonction "strftime()" pour la syntaxe.

Par exemple, pour générer des fichiers image à partir du modèle "strftime()" "%Y-%m-%d_%H-%M-%S", le
Abonnement ffmpeg la commande peut être utilisée :

ffmpeg -f v4l2 -r 1 -i /dev/video0 -f image2 -strftime 1 "%Y-%m-%d_%H-%M-%S.jpg"

Options

numéro_début
Démarrez la séquence à partir du numéro spécifié. La valeur par défaut est 0.

Mise à jour
S'il est défini sur 1, le nom de fichier sera toujours interprété comme un simple nom de fichier, pas un
motif, et le fichier correspondant sera continuellement écrasé par de nouvelles images.
La valeur par défaut est 0.

strftime
S'il est défini sur 1, développez le nom de fichier avec les informations de date et d'heure à partir de "strftime()".
La valeur par défaut est 0.

Le multiplexeur d'images prend en charge le format de fichier image .YUV. Ce format est spécial en ce que
chaque cadre d'image se compose de trois fichiers, pour chacun des composants YUV420P. A lire ou
écrivez ce format de fichier image, spécifiez le nom du fichier '.Y'. Le multiplexeur va
ouvrir automatiquement les fichiers '.U' et '.V' selon les besoins.

Matroska
Muxer conteneur Matroska.

Ce multiplexeur implémente les spécifications des conteneurs matroska et webm.

Métadonnées

Les paramètres de métadonnées reconnus dans ce multiplexeur sont :

titre
Définissez le nom du titre fourni à une seule piste.

langue
Précisez la langue de la piste dans le formulaire Langues Matroska.

La langue peut être soit la forme bibliographique à 3 lettres ISO-639-2 (ISO 639-2/B)
(comme "fre" pour le français), ou un code de langue mélangé avec un code de pays pour les spécialités
dans les langues (comme "fre-ca" pour le français canadien).

mode_stéréo
Définissez la disposition vidéo 3D stéréo de deux vues dans une seule piste vidéo.

Les valeurs suivantes sont reconnues :

mono
la vidéo n'est pas stéréo

gauche droite
Les deux vues sont disposées côte à côte, la vue de l'œil gauche est sur la gauche

bas_haut
Les deux vues sont disposées dans l'orientation de haut en bas, la vue de l'œil gauche est en bas

haut_bas
Les deux vues sont disposées dans l'orientation de haut en bas, la vue de l'œil gauche est en haut

damier_rl
Chaque vue est disposée selon un motif en damier entrelacé, la vue de l'œil gauche étant
premier

damier_lr
Chaque vue est disposée selon un motif en damier entrelacé, la vue de l'œil droit étant
premier

row_interleaved_rl
Chaque vue est constituée d'un entrelacement basé sur des rangées, la vue de l'œil droit est la première rangée

row_interleaved_lr
Chaque vue est constituée d'un entrelacement basé sur des rangées, la vue de l'œil gauche est la première rangée

col_interleaved_rl
Les deux vues sont disposées selon un entrelacement basé sur des colonnes, la vue de l'œil droit est
première colonne

col_interleaved_lr
Les deux vues sont disposées selon un entrelacement basé sur des colonnes, la vue de l'œil gauche est
première colonne

anaglyphe_cyan_rouge
Toutes les images sont au format anaglyphe visible à travers des filtres rouge-cyan

droite gauche
Les deux vues sont disposées côte à côte, la vue de l'œil droit est à gauche

anaglyphe_vert_magenta
Toutes les images sont au format anaglyphe visible à travers des filtres vert-magenta

bloc_lr
Les deux yeux liés dans un bloc, la vue de l'œil gauche est la première

bloc_rl
Les deux yeux liés dans un bloc, la vue de l'œil droit est la première

Par exemple, un clip WebM 3D peut être créé à l'aide de la ligne de commande suivante :

ffmpeg -i sample_left_right_clip.mpg -an -c:v libvpx -metadata stéréo_mode=left_right -y stéréo_clip.webm

Options

Ce multiplexeur prend en charge les options suivantes :

réserve_index_espace
Par défaut, ce multiplexeur écrit l'index de recherche (appelé cues en termes Matroska) à
la fin du fichier, car il ne peut pas savoir à l'avance combien d'espace laisser au
index au début du fichier. Cependant, pour certains cas d'utilisation, par exemple le streaming
où la recherche est possible mais lente -- il est utile de mettre l'index au début
du fichier.

Si cette option est définie sur une valeur non nulle, le multiplexeur réservera une quantité donnée de
espace dans l'en-tête du fichier, puis essayez d'y écrire les repères lorsque le multiplexage
finitions. Si l'espace disponible ne suffit pas, le multiplexage échouera. Une taille sûre pour
la plupart des cas d'utilisation devraient être d'environ 50 Ko par heure de vidéo.

Notez que les repères ne sont écrits que si la sortie est consultable et cette option n'aura pas
effet si ce n'est pas le cas.

md5
Format de test MD5.

Ce multiplexeur calcule et imprime le hachage MD5 de toutes les trames audio et vidéo d'entrée. Par
les images audio par défaut sont converties en images audio et vidéo brutes 16 bits signées en images brutes
vidéo avant de calculer le hachage.

La sortie du multiplexeur consiste en une seule ligne de la forme : MD5=MD5, Où MD5 est une
nombre hexadécimal représentant le hachage MD5 calculé.

Par exemple pour calculer le hachage MD5 de l'entrée convertie en audio et vidéo bruts, et
le stocker dans le fichier out.md5:

ffmpeg -i ENTRÉE -f md5 sortie.md5

Vous pouvez imprimer le MD5 sur stdout avec la commande :

ffmpeg -i ENTRÉE -f md5 -

Voir aussi cadremd5 multiplexeur.

déplacer, mp4, ismv
Muxer MOV/MP4/ISMV (Smooth Streaming).

Le multiplexeur mov/mp4/ismv prend en charge la fragmentation. Normalement, un fichier MOV/MP4 a tous les
métadonnées sur tous les paquets stockés dans un emplacement (écrit à la fin du fichier, il peut
être déplacé au début pour une meilleure lecture en ajoutant départ rapide à la drapeaux mov, ou en utilisant
le qt-démarrage rapide outil). Un fichier fragmenté se compose d'un certain nombre de fragments, où les paquets
et les métadonnées sur ces paquets sont stockées ensemble. L'écriture d'un fichier fragmenté a le
avantage que le fichier est décodable même si l'écriture est interrompue (alors qu'un
MOV/MP4 est indécodable s'il n'est pas correctement terminé), et il nécessite moins de mémoire lorsque
écrire des fichiers très longs (puisque l'écriture de fichiers MOV/MP4 normaux stocke des informations sur chaque
paquet en mémoire jusqu'à la fermeture du fichier). L'inconvénient est qu'il est moins compatible
avec d'autres applications.

Options

La fragmentation est activée en définissant l'une des AVOptions qui définissent comment couper le fichier
en fragments :

-moov_size octets
Réserve de l'espace pour l'atome moov au début du fichier au lieu de placer le
atome moov à la fin. Si l'espace réservé est insuffisant, le multiplexage échouera.

-movflags frag_keyframe
Démarrez un nouveau fragment à chaque image clé de la vidéo.

-frag_durée durée
Créez des fragments qui sont durée microsecondes de long.

-frag_size Taille
Créez des fragments contenant jusqu'à Taille octets de données de charge utile.

-movflags frag_custom
Autorisez l'appelant à choisir manuellement quand couper les fragments, en appelant
"av_write_frame(ctx, NULL)" pour écrire un fragment avec les paquets écrits jusqu'à présent. (Cette
n'est utile qu'avec d'autres applications intégrant libavformat, pas de ffmpeg.)

-min_frag_durée durée
Ne créez pas de fragments plus courts que durée microsecondes de long.

Si plus d'une condition est spécifiée, les fragments sont coupés lorsque l'un des
les conditions sont remplies. L'exception à ceci est "-min_frag_duration", qui doit être
remplie pour que l'une des autres conditions s'applique.

De plus, la façon dont le fichier de sortie est écrit peut être ajustée par quelques autres
options:

-movflags vide_moov
Écrivez un atome moov initial directement au début du fichier, sans décrire aucun
échantillons dedans. Généralement, un couple mdat/moov est écrit au début du fichier, comme un
fichier MOV/MP4 normal, ne contenant qu'une courte partie du fichier. Avec cette option
défini, il n'y a pas d'atome mdat initial et l'atome moov ne décrit que les pistes mais
a une durée nulle.

Cette option est implicitement définie lors de l'écriture de fichiers ismv (Smooth Streaming).

-movflags separer_moof
Écrivez un atome de moof (fragment de film) distinct pour chaque piste. Normalement, des paquets pour tous
les pistes sont écrites dans un atome moof (ce qui est légèrement plus efficace), mais avec cela
ensemble d'options, le muxer écrit une paire moof/mdat pour chaque piste, ce qui facilite
pistes séparées.

Cette option est implicitement définie lors de l'écriture de fichiers ismv (Smooth Streaming).

-movflags départ rapide
Exécutez une seconde passe en déplaçant l'index (moov atom) au début du fichier. Cette
l'opération peut prendre un certain temps et ne fonctionnera pas dans diverses situations telles que la fragmentation
sortie, il n'est donc pas activé par défaut.

-movflags rphinte
Ajoutez des pistes de conseils RTP au fichier de sortie.

-movflags désactiver_chpl
Désactivez les marqueurs de chapitre Nero (atome chpl). Normalement, les chapitres Nero et un
Les pistes de chapitre QuickTime sont écrites dans le fichier. Avec cette option définie, seul le
La piste de chapitre QuickTime sera écrite. Les chapitres Nero peuvent provoquer des échecs lorsque le
le fichier est retraité avec certains programmes de marquage, comme mp3Tag 2.61a et iTunes 11.3,
très probablement, d'autres versions sont également affectées.

-movflags omit_tfhd_offset
N'écrivez aucune base_data_offset absolue dans les atomes tfhd. Cela évite de lier des fragments
aux positions absolues des octets dans le fichier/flux.

-movflags default_base_moof
De la même manière que omit_tfhd_offset, ce drapeau évite d'écrire l'absolu
champ base_data_offset dans les atomes tfhd, mais le fait en utilisant le nouveau default-base-is-
drapeau moof à la place. Ce drapeau est nouveau de 14496-12:2012. Cela peut rendre les fragments
plus facile à analyser dans certaines circonstances (en évitant l'emplacement des fragments de piste de base
calculs sur la fin implicite du fragment de piste précédent).

Exemple

Le contenu Smooth Streaming peut être poussé en temps réel vers un point de publication sur IIS avec ce
multiplexeur. Exemple:

ffmpeg -re < > -movflags isml+frag_keyframe -f ismv http://server/publishingpoint.isml/Streams(Encodeur1)

Audible AAX

Les fichiers AAX audibles sont des fichiers M4B chiffrés, et ils peuvent être déchiffrés en spécifiant un 4
octet secret d'activation.

ffmpeg -activation_bytes 1CEB00DA -i test.aax -vn -c:a copie sortie.mp4

mp3
Le multiplexeur MP3 écrit un flux MP3 brut avec les fonctionnalités optionnelles suivantes :

· Un en-tête de métadonnées ID3v2 au début (activé par défaut). Versions 2.3 et 2.4
sont pris en charge, l'option privée "id3v2_version" contrôle laquelle est utilisée (3 ou 4).
La définition de "id3v2_version" sur 0 désactive complètement l'en-tête ID3v2.

Le multiplexeur prend en charge l'écriture d'images jointes (cadres APIC) dans l'en-tête ID3v2. Les
les images sont fournies au multiplexeur sous la forme d'un flux vidéo avec un seul paquet.
Il peut y avoir n'importe quel nombre de ces flux, chacun correspondra à une seule trame APIC.
Les balises de métadonnées de flux titre et mes commentaire carte vers APIC la description et mes image type
respectivement. Voirhttp://id3.org/id3v2.4.0-frames> pour les types d'images autorisés.

Notez que les trames APIC doivent être écrites au début, donc le multiplexeur mettra en mémoire tampon
les trames audio jusqu'à ce qu'il obtienne toutes les images. Il est donc conseillé de fournir
les images dès que possible pour éviter une mise en mémoire tampon excessive.

· Un cadre Xing/LAME juste après l'en-tête ID3v2 (si présent). Il est activé par défaut,
mais ne sera écrit que si la sortie est interrogeable. L'option privée "write_xing"
peut être utilisé pour le désactiver. Le cadre contient diverses informations qui peuvent être utiles
au décodeur, comme la durée audio ou le retard de l'encodeur.

· Une balise ID3v1 héritée à la fin du fichier (désactivée par défaut). Il peut être activé
avec l'option privée "write_id3v1", mais comme ses capacités sont très limitées, son
l'utilisation n'est pas recommandée.

Exemples :

Écrivez un mp3 avec un en-tête ID3v2.3 et un pied de page ID3v1 :

ffmpeg -i INPUT -id3v2_version 3 -write_id3v1 1 sortie.mp3

Pour joindre une image à un fichier mp3, sélectionnez à la fois le flux audio et le flux d'images avec
"carte":

ffmpeg -i input.mp3 -i cover.png -c copie -map 0 -map 1
-metadata:s:v title="Couverture de l'album" -metadata:s:v comment="Cover (Front)" out.mp3

Écrivez un MP3 "propre" sans fonctionnalités supplémentaires :

ffmpeg -i input.wav -write_xing 0 -id3v2_version 0 out.mp3

mpgts
Muxer de flux de transport MPEG.

Ce multiplexeur met en œuvre la norme ISO 13818-1 et fait partie de l'ETSI EN 300 468.

Les paramètres de métadonnées reconnus dans mpegts muxer sont "service_provider" et
"Nom du service". S'ils ne sont pas définis, la valeur par défaut pour "service_provider" est "FFmpeg" et le
la valeur par défaut pour "service_name" est "Service01".

Options

Les options du multiplexeur sont :

-mpegts_original_network_id nombre
Définissez l'original_network_id (par défaut 0x0001). C'est l'identifiant unique d'un réseau
en DVB. Son utilisation principale est dans l'identification unique d'un service à travers le chemin
Original_Network_ID, Transport_Stream_ID.

-mpegts_transport_stream_id nombre
Définissez le transport_stream_id (par défaut 0x0001). Cela identifie un transpondeur en DVB.

-mpegts_service_id nombre
Définissez le service_id (par défaut 0x0001) également connu sous le nom de programme en DVB.

-mpegts_service_type nombre
Définissez le programme service_type (par défaut tv_numérique), voir ci-dessous une liste de
valeurs.

-mpegts_pmt_start_pid nombre
Définissez le premier PID pour PMT (par défaut 0x1000, max 0x1f00).

-mpegts_start_pid nombre
Définissez le premier PID pour les paquets de données (par défaut 0x0100, max 0x0f00).

-mpegts_m2ts_mode nombre
Activez le mode m2ts s'il est défini sur 1. La valeur par défaut est -1, ce qui désactive le mode m2ts.

-taux de multiplexage nombre
Définissez un débit multiple constant (VBR par défaut).

-pcr_période nombre
Remplacer le temps de retransmission PCR par défaut (20 ms par défaut), ignoré si variable
le débit multiple est sélectionné.

pat_période nombre
Temps maximal en secondes entre les tables PAT/PMT.

sdt_période nombre
Temps maximal en secondes entre les tables SDT.

-pes_payload_size nombre
Définissez la charge utile minimale du paquet PES en octets.

-mpegts_flags drapeaux
Définir des drapeaux (voir ci-dessous).

-mpegts_copyts nombre
Conserver les horodatages d'origine, si la valeur est définie sur 1. La valeur par défaut est -1, ce qui
en décalant les horodatages afin qu'ils commencent à 0.

-tables_version nombre
Définir la version PAT, PMT et SDT (par défaut 0, les valeurs valides sont comprises entre 0 et 31, inclusivement).
Cette option permet de mettre à jour la structure du flux afin que le consommateur standard puisse détecter le
monnaie. Pour ce faire, rouvrez la sortie AVFormatContext (en cas d'utilisation de l'API) ou redémarrez
instance ffmpeg, modification cyclique de la valeur tables_version :

ffmpeg -i source1.ts -copie de codec -f mpegts -tables_version 0 udp://1.1.1.1:1111
ffmpeg -i source2.ts -copie de codec -f mpegts -tables_version 1 udp://1.1.1.1:1111

ffmpeg -i source3.ts -copie de codec -f mpegts -tables_version 31 udp://1.1.1.1:1111
ffmpeg -i source1.ts -copie de codec -f mpegts -tables_version 0 udp://1.1.1.1:1111
ffmpeg -i source2.ts -copie de codec -f mpegts -tables_version 1 udp://1.1.1.1:1111


L'option mpegts_service_type accepte les valeurs suivantes :

valeur_hex
Toute valeur hexadécimale comprise entre 0x01 et 0xff comme défini dans ETSI 300 468.

tv_numérique
Service de télévision numérique.

Radio numérique
Service de radio numérique.

télétexte
Service de télétexte.

avancé_codec_digital_radio
Service de radio numérique à codec avancé.

mpeg2_digital_hdtv
Service de TVHD numérique MPEG2.

avancé_codec_digital_sdtv
Service SDTV numérique à codec avancé.

avancé_codec_digital_hdtv
Service de TVHD numérique à codec avancé.

L'option mpegts_flags peut prendre un ensemble de ces drapeaux :

renvoyer_en-têtes
Remettez PAT/PMT avant d'écrire le paquet suivant.

latitude
Utilisez la mise en paquets LATM pour AAC.

pat_pmt_at_frames
Réémettez PAT et PMT à chaque image vidéo.

Exemple

ffmpeg -i fichier.mpg -c copie \
-mpegts_original_network_id 0x1122 \
-mpegts_transport_stream_id 0x3344 \
-mpegts_service_id 0x5566 \
-mpegts_pmt_start_pid 0x1500 \
-mpegts_start_pid 0x150 \
-metadata service_provider="Un fournisseur" \
-metadata service_name="Some Channel" \
-y out.ts

MXF, mxf_d10
Muxer MXF.

Options

Les options du multiplexeur sont :

store_user_comments bool
Définissez si les commentaires des utilisateurs doivent être stockés s'ils sont disponibles ou jamais. L'IRT D-10 ne permet pas
commentaires des utilisateurs. Le défaut est donc de les écrire pour mxf mais pas pour mxf_d10

nul
Muxer nul.

Ce multiplexeur ne génère aucun fichier de sortie, il est principalement utile pour tester ou
à des fins d'analyse comparative.

Par exemple pour comparer le décodage avec ffmpeg tu peux utiliser la commande :

ffmpeg -benchmark -i INPUT -f null out.null

Notez que la commande ci-dessus ne lit ou n'écrit pas le out.null fichier, mais en spécifiant le
le fichier de sortie est requis par le ffmpeg syntaxe.

Alternativement, vous pouvez écrire la commande comme :

ffmpeg -benchmark -i INPUT -f null -

écrou
-points de synchronisation drapeaux
Modifiez l'utilisation du point de synchronisation dans nut :

défaut utilisé le Ordinaire faible surcoût recherche sida.
aucun do pas utilisé le points de synchronisation at tous, réduire le aérien mais Rendre le le courant
non-recherchable ;
L'utilisation de cette option n'est pas recommandée, car les fichiers résultants sont très dommageables
sensible et la recherche n'est pas possible. De plus, en général, les frais généraux de
points de synchronisation est négligeable. Remarque, -C 0 peut être utilisé pour désactiver
toutes les tables de données en croissance, permettant de multiplexer des flux sans fin avec une mémoire limitée
et sans ces inconvénients.

horodatée étendre le point de synchronisation avec a horloge murale champ.

Pour aucun et mes horodatée les drapeaux sont expérimentaux.

-index_écriture bool
Écrire l'index à la fin, la valeur par défaut est d'écrire un index.

ffmpeg -i INPUT -f_strict expérimental -syncpoints none - | processeur

ogg
Muxer conteneur Ogg.

-page_durée durée
Durée de page préférée, en microsecondes. Le multiplexeur tentera de créer des pages qui
sont approximativement durée microsecondes de long. Cela permet à l'utilisateur de faire des compromis
entre la granularité de la recherche et la surcharge du conteneur. La valeur par défaut est 1 seconde. Une valeur de 0
remplira tous les segments, rendant les pages aussi grandes que possible. Une valeur de 1 sera
utiliser efficacement 1 paquet par page dans la plupart des situations, donnant une petite granularité de recherche
au prix de frais généraux supplémentaires pour les conteneurs.

-serial_offset Plus-value
Valeur de série à partir de laquelle définir le numéro de série du flux. Le régler sur différent et
des valeurs suffisamment grandes garantissent que les fichiers ogg produits peuvent être enchaînés en toute sécurité.

segment, segment_flux, segment
Segmenteur de flux de base.

Ce multiplexeur génère des flux vers un certain nombre de fichiers séparés d'une durée presque fixe. Sortir
le modèle de nom de fichier peut être défini d'une manière similaire à image2, ou en utilisant un "strftime"
modèle si le strftime l'option est activée.

"stream_segment" est une variante du multiplexeur utilisé pour écrire dans les formats de sortie en streaming, c'est-à-dire
qui ne nécessitent pas d'en-têtes globaux et est recommandé pour la sortie, par exemple, au format MPEG
segments de flux de transport. "ssegment" est un alias plus court pour "stream_segment".

Chaque segment commence par une image clé du flux de référence sélectionné, qui est défini
par l'intermédiaire du flux_référence option.

Notez que si vous voulez un fractionnement précis pour un fichier vidéo, vous devez faire la clé d'entrée
les trames correspondent aux temps de découpage exacts attendus par le segmenteur, ou le segment
muxer commencera le nouveau segment avec l'image clé trouvée après le début spécifié
le temps.

Le multiplexeur de segments fonctionne mieux avec une seule vidéo à fréquence d'images constante.

En option, il peut générer une liste des segments créés, en définissant l'option
liste_segments. Le type de liste est spécifié par le segment_list_type option. L'entrée
les noms de fichiers dans la liste des segments sont définis par défaut sur le nom de base du
fichiers de segments.

Voir aussi hls muxer, qui fournit une implémentation plus spécifique pour HLS
segmentation.

Options

Le multiplexeur de segments prend en charge les options suivantes :

flux_référence spécificateur
Définir le flux de référence, comme spécifié par la chaîne spécificateur. Si spécificateur est réglé
à "auto", la référence est choisie automatiquement. Sinon ça doit être un stream
specifier (voir le chapitre ``Stream specifiers'' dans le manuel ffmpeg) qui spécifie
le flux de référence. La valeur par défaut est "auto".

format_segment le format
Remplacer le format du conteneur interne, par défaut, il est deviné par le nom de fichier
extension.

segment_format_options liste_options
Définissez les options de format de sortie à l'aide d'une liste :-séparée de paramètres clé=valeur. Valeurs
contenant le caractère spécial ":" doit être échappé.

liste_segments prénom
Générez également un fichier de liste nommé prénom. S'il n'est pas spécifié, aucun fichier de liste n'est généré.

segment_list_flags drapeaux
Définissez des indicateurs affectant la génération de la liste de segments.

Il prend actuellement en charge les drapeaux suivants :

cachette
Autoriser la mise en cache (affecte uniquement les fichiers de liste M3U8).

le travail
Autoriser la génération de fichiers en direct.

segment_list_size Taille
Mettez à jour le fichier liste afin qu'il contienne au maximum Taille segments. Si 0 le fichier liste
contiendra tous les segments. La valeur par défaut est 0.

segment_list_entry_prefix préfixe
Préfixer préfixe à chaque entrée. Utile pour générer des chemins absolus. Par défaut pas de préfixe
est appliqué.

segment_list_type type
Sélectionnez le format de l'annonce.

Les valeurs suivantes sont reconnues :

plat
Générez une liste plate pour les segments créés, un segment par ligne.

CSV, poste
Générer une liste pour les segments créés, un segment par ligne, chaque ligne correspondant
le format (valeurs séparées par des virgules) :

, ,

nom_fichier_segment est le nom du fichier de sortie généré par le multiplexeur selon
au patron fourni. L'échappement CSV (selon RFC4180) est appliqué si
nécessaire.

segment_start_time et mes segment_end_time spécifier l'heure de début et de fin du segment
exprimé en secondes.

Un fichier de liste avec le suffixe ".csv" ou ".ext" sélectionnera automatiquement ce format.

poste est déprécié en faveur ou csv.

ffconcat
Générez un fichier ffconcat pour les segments créés. Le fichier résultant peut être lu
en utilisant le FFmpeg concat démultiplexeur.

Un fichier de liste avec le suffixe ".ffcat" ou ".ffconcat" sélectionnera automatiquement ce format.

m3u8
Générer un fichier M3U8 étendu, version 3, conforme à
<http://tools.ietf.org/id/draft-pantos-http-live-streaming>.

Un fichier de liste avec le suffixe ".m3u8" sélectionnera automatiquement ce format.

S'il n'est pas spécifié, le type est deviné à partir du suffixe du nom de fichier de liste.

temps_segment fois
Définir la durée du segment sur fois, la valeur doit être une spécification de durée. Défaut
la valeur est "2". Voir aussi le segment_fois option.

Notez que le fractionnement peut ne pas être précis, sauf si vous forcez la clé de flux de référence-
cadres à un moment donné. Voir la notice d'introduction et les exemples ci-dessous.

segment_atclocktime 1 | 0
S'il est réglé sur « 1 », divisez-vous à des intervalles de temps réguliers à partir de 00h00. Les
fois valeur spécifiée dans temps_segment est utilisé pour régler la longueur de la division
intervalle.

Par exemple avec temps_segment mis à "900" cela permet de créer des fichiers à
12h00, 12h15, 12h30, etc.

La valeur par défaut est « 0 ».

segment_time_delta delta
Spécifiez l'heure de précision lors de la sélection de l'heure de début d'un segment, exprimée en
spécification de la durée. La valeur par défaut est « 0 ».

Lorsque delta est spécifié, une image clé commencera un nouveau segment si son PTS satisfait le
relation:

PTS >= start_time - time_delta

Cette option est utile lors du fractionnement du contenu vidéo, qui est toujours fractionné au GOP
limites, au cas où une image clé serait trouvée juste avant le temps intermédiaire spécifié.

En particulier peut être utilisé en combinaison avec le ffmpeg option force_key_framesL’
temps d'image clé spécifiés par force_key_frames peut ne pas être réglé avec précision en raison de
problèmes d'arrondi, avec pour conséquence qu'un temps d'image clé peut être défini juste avant
l'heure indiquée. Pour les vidéos à fréquence d'images constante, une valeur de 1/(2*frame_rate) devrait
résoudre le pire des cas de non-concordance entre l'heure spécifiée et l'heure définie par
force_key_frames.

segment_fois fois
Spécifiez une liste de points de division. fois contient une liste de durées séparées par des virgules
spécifications, par ordre croissant. Voir aussi le temps_segment option.

segments_frames cadres
Spécifiez une liste de numéros d'images vidéo divisés. cadres contient une liste de virgules séparés
nombres entiers, dans l'ordre croissant.

Cette option spécifie de démarrer un nouveau segment chaque fois qu'une image clé de flux de référence est
trouvé et le numéro d'ordre (à partir de 0) de la trame est supérieur ou égal à
la valeur suivante dans la liste.

segment_wrap limite
Enroulez autour de l'index de segment une fois qu'il atteint limite.

numéro_début_segment nombre
Définissez le numéro de séquence du premier segment. La valeur par défaut est 0.

strftime 1 | 0
Utilisez la fonction "strftime" pour définir le nom des nouveaux segments à écrire. Si ce
est sélectionné, le nom du segment de sortie doit contenir un modèle de fonction "strftime".
La valeur par défaut est 0.

break_non_keyframes 1 | 0
Si activé, permet aux segments de démarrer sur des images autres que des images clés. Cela améliore
comportement sur certains lecteurs lorsque le temps entre les images clés est incohérent, mais peut rendre
les choses empirent sur les autres et peuvent causer des bizarreries lors de la recherche. La valeur par défaut est 0.

reset_horodatages 1 | 0
Réinitialisez les horodatages au début de chaque segment, de sorte que chaque segment commence par
horodatages proches de zéro. Il est destiné à faciliter la lecture des segments générés. Peut
ne fonctionne pas avec certaines combinaisons de multiplexeurs/codecs. Il est mis à 0 par défaut.

décalage_initial compenser
Spécifiez le décalage d'horodatage à appliquer aux horodatages des paquets de sortie. L'argumentation doit
être une spécification de durée et la valeur par défaut est 0.

Exemples

· Remux le contenu du fichier dans.mkv à une liste de segments out-000.nut, out-001.nut, Etc,
et écrire la liste des segments générés dans hors.liste:

ffmpeg -i in.mkv -copie de codec -map 0 -f segment -segment_list out.list out%03d.nut

· Entrée de segment et options de format de sortie définies pour les segments de sortie :

ffmpeg -i in.mkv -f segment -segment_time 10 -segment_format_options movflags=+faststart out%03d.mp4

· Segmentez le fichier d'entrée selon les points de division spécifiés par le segment_fois
option:

ffmpeg -i in.mkv -copie de codec -map 0 -f segment -segment_list out.csv -segment_times 1,2,3,5,8,13,21 out%03d.nut

· Utilisez le ffmpeg force_key_frames option pour forcer les images clés dans l'entrée au
emplacement spécifié, avec l'option de segment segment_time_delta pour tenir compte de
arrondis possibles opérés lors de la définition des temps d'images clés.

ffmpeg -i in.mkv -force_key_frames 1,2,3,5,8,13,21 -codec:v mpeg4 -codec:a pcm_s16le -map 0 \
-f segment -segment_list out.csv -segment_times 1,2,3,5,8,13,21 -segment_time_delta 0.05 out%03d.nut

Afin de forcer les images clés sur le fichier d'entrée, le transcodage est requis.

· Segmentez le fichier d'entrée en divisant le fichier d'entrée en fonction des numéros de trame
séquence spécifiée avec le segments_frames option:

ffmpeg -i in.mkv -copie de codec -map 0 -f segment -segment_list out.csv -segment_frames 100,200,300,500,800 out%03d.nut

· Convertir le dans.mkv vers les segments TS à l'aide des encodeurs « libx264 » et « libfaac » :

ffmpeg -i in.mkv -map 0 -codec:v libx264 -codec:a libfaac -f ssegment -segment_list out.list out%03d.ts

· Segmentez le fichier d'entrée et créez une liste de lecture en direct M3U8 (peut être utilisée comme HLS en direct
la source):

ffmpeg -re -i in.mkv -copie de codec -map 0 -f segment -segment_list playlist.m3u8 \
-segment_list_flags + en direct -segment_time 10 out%03d.mkv

diffusion fluide
Le multiplexeur Smooth Streaming génère un ensemble de fichiers (Manifeste, morceaux) adaptés au service
avec serveur web conventionnel.

la taille de la fenêtre
Spécifiez le nombre de fragments conservés dans le manifeste. Par défaut 0 (tout garder).

extra_window_size
Spécifiez le nombre de fragments conservés en dehors du manifeste avant de les supprimer de
disque. Par défaut 5.

lookahead_count
Spécifiez le nombre de fragments d'anticipation. Par défaut 2.

min_frag_duration
Spécifiez la durée minimale du fragment (en microsecondes). Par défaut 5000000.

supprimer_à_sortie
Indiquez s'il faut supprimer tous les fragments une fois terminé. Par défaut 0 (ne pas supprimer).

tee
Le tee muxer peut être utilisé pour écrire les mêmes données dans plusieurs fichiers ou tout autre type de
multiplexeur. Il peut être utilisé, par exemple, à la fois pour diffuser une vidéo sur le réseau et l'enregistrer sur
disque en même temps.

C'est différent de spécifier plusieurs sorties au ffmpeg outil de ligne de commande car
les données audio et vidéo ne seront encodées qu'une seule fois avec le tee muxer ; l'encodage peut être un
processus très coûteux. Ce n'est pas utile lors de l'utilisation directe de l'API libavformat car
il est alors possible d'alimenter directement les mêmes paquets à plusieurs muxers.

Les sorties esclaves sont spécifiées dans le nom de fichier donné au multiplexeur, séparés par '|'. Si
l'un des noms d'esclave contient le '|' séparateur, espaces de début ou de fin ou tout
caractère spécial, il doit être échappé (voir le "Citation et mes s'échapper" in le
ffmpeg-utils(1) Manuel).

Les options du multiplexeur peuvent être spécifiées pour chaque esclave en les préfixant sous la forme d'une liste de clé=Plus-value
paires séparées par ':', entre crochets. Si les valeurs des options contiennent un
caractère ou le séparateur ':', ils doivent être échappés ; notez qu'il s'agit d'un deuxième niveau
s'échapper.

Les options spéciales suivantes sont également reconnues :

f Spécifiez le nom du format. Utile s'il ne peut pas être deviné à partir du suffixe du nom de sortie.

bsf[/spec]
Spécifiez une liste de filtres de flux binaire à appliquer à la sortie spécifiée.

Il est possible de spécifier à quels flux un filtre de flux binaire donné s'applique, en
en ajoutant un spécificateur de flux à l'option séparé par "/". spec doit être un ruisseau
spécificateur (voir Format courant spécificateurs). Si le spécificateur de flux n'est pas spécifié,
les filtres de flux binaires seront appliqués à tous les flux de la sortie.

Plusieurs filtres de flux binaire peuvent être spécifiés, séparés par ",".

Sélectionner
Sélectionnez les flux qui doivent être mappés sur la sortie esclave, spécifiés par un flux
spécificateur. S'il n'est pas spécifié, il s'agit par défaut de tous les flux d'entrée.

Exemples

· Encodez quelque chose et archivez-le dans un fichier WebM et diffusez-le au format MPEG-TS sur UDP
(les flux doivent être explicitement mappés) :

ffmpeg -i ... -c:v libx264 -c:a mp2 -f tee -map 0:v -map 0:a
"archive-20121107.mkv|[f=mpegts]udp://10.0.1.255:1234/"

· Utilisation ffmpeg pour encoder l'entrée et envoyer la sortie vers trois destinations différentes.
Le filtre de flux binaire "dump_extra" est utilisé pour ajouter des informations de données supplémentaires à tous les
sortir des paquets d'images clés vidéo, comme demandé par le format MPEG-TS. L'option de sélection
est appliqué à out.aac afin qu'il ne contienne que des paquets audio.

ffmpeg -i ... -map 0 -flags +global_header -c:v libx264 -c:a aac -strict expérimental
-f tee "[bsfs/v=dump_extra]out.ts|[movflags=+faststart]out.mp4|[select=a]out.aac"

· Comme ci-dessous, mais sélectionnez uniquement le flux "a:1" pour la sortie audio. A noter qu'un deuxième niveau
l'échappement doit être effectué, car ":" est un caractère spécial utilisé pour séparer les options.

ffmpeg -i ... -map 0 -flags +global_header -c:v libx264 -c:a aac -strict expérimental
-f tee "[bsfs/v=dump_extra]out.ts|[movflags=+faststart]out.mp4|[select=\'a:1\']out.aac"

Remarque : certains codecs peuvent nécessiter des options différentes selon le format de sortie ; l'auto-
la détection de ceci ne peut pas fonctionner avec le tee muxer. Le principal exemple est le global_header
drapeau.

webm_dash_manifest
Muxer WebM DASH Manifest.

Ce multiplexeur implémente la spécification WebM DASH Manifest pour générer le manifeste DASH
XML. Il prend également en charge la génération de manifestes pour les flux en direct DASH.

Pour plus d'informations, voir:

· Spécification WebM DASH :
<https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification>

· Spécification ISO DASH :
<http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip>

Options

Ce multiplexeur prend en charge les options suivantes :

ensembles_d'adaptation
Cette option a la syntaxe suivante : "id=x,streams=a,b,c id=y,streams=d,e" où x
et y sont les identifiants uniques des ensembles d'adaptation et a,b,c,d et e sont les
indices des flux audio et vidéo correspondants. N'importe quel nombre d'ensembles d'adaptation
peuvent être ajoutés à l'aide de cette option.

le travail
Réglez-le sur 1 pour créer un DASH Manifest en direct. Par défaut : 0.

chunk_start_index
Index de début du premier bloc. Cela ira dans le Numéro de départ attribut de la
Modèle de segment élément dans le manifeste. Par défaut : 0.

chunk_duration_ms
Durée de chaque morceau en millisecondes. Cela ira dans le durée attribut de la
Modèle de segment élément dans le manifeste. Par défaut : 1000.

utc_timing_url
URL de la page qui renverra l'horodatage UTC au format ISO. Cela ira dans le
Plus-value attribut de la Heure UTC élément dans le manifeste. Par défaut : Aucun.

time_shift_buffer_profondeur
Plus petit temps (en secondes) de tampon de décalage pour lequel une représentation est garantie
être disponible. Cela ira dans le timeShiftBufferDepth attribut de la MPD
élément. Par défaut : 60.

période_de_mise_à_jour_minimale
Période de mise à jour minimale (en secondes) du manifeste. Cela ira dans le
période de mise à jour minimale attribut de la MPD élément. Par défaut : 0.

Exemple

ffmpeg -f webm_dash_manifest -i video1.webm \
-f webm_dash_manifest -i vidéo2.webm \
-f webm_dash_manifest -i audio1.webm \
-f webm_dash_manifest -i audio2.webm \
-carte 0 -carte 1 -carte 2 -carte 3 \
-c copier \
-f webm_dash_manifest \
-adaptation_sets "id=0,streams=0,1 id=1,streams=2,3" \
manifeste.xml

webm_chunk
Multiplexeur WebM Live Chunk.

Ce multiplexeur écrit les en-têtes et les morceaux WebM en tant que fichiers séparés qui peuvent être consommés par
clients qui prennent en charge les flux WebM Live via DASH.

Options

Ce multiplexeur prend en charge les options suivantes :

chunk_start_index
Index du premier morceau (valeur par défaut à 0).

entête
Nom de fichier de l'en-tête où les données d'initialisation seront écrites.

audio_chunk_duration
Durée de chaque morceau audio en millisecondes (par défaut à 5000).

Exemple

ffmpeg -f v4l2 -i /dev/video0 \
-f aussi -i hw:0 \
-carte 0:0 \
-c:vlibvpx-vp9\
-s 640x360 -keyint_min 30 -g 30 \
-f morceau_webm \
-en-tête webm_live_video_360.hdr \
-chunk_start_index 1 \
webm_live_video_360_%d.chk\
-carte 1:0 \
-c:a libvorbis\
-b:a 128k \
-f morceau_webm \
-en-tête webm_live_audio_128.hdr \
-chunk_start_index 1 \
-audio_chunk_duration 1000 \
webm_live_audio_128_%d.chk

METADATA


FFmpeg est capable de vider les métadonnées des fichiers multimédias dans un simple texte de type INI codé en UTF-8
puis rechargez-le à l'aide du muxer/demuxer de métadonnées.

Le format de fichier est le suivant :

1. Un fichier se compose d'un en-tête et d'un certain nombre de balises de métadonnées divisées en sections, chacune
sur sa propre ligne.

2. L'en-tête est un ;FFMETADONNEES chaîne, suivie d'un numéro de version (maintenant 1).

3. Les balises de métadonnées sont de la forme key =

4. Immédiatement après l'en-tête suit les métadonnées globales

5. Après les métadonnées globales, il peut y avoir des sections avec des métadonnées par flux/par chapitre.

6. Une section commence par le nom de la section en majuscules (c'est-à-dire FLUX ou CHAPITRE) dans
supports ([, ]) et se termine par la section suivante ou la fin du fichier.

7. Au début d'une section de chapitre, il peut y avoir une base de temps facultative à utiliser pour
valeurs de début/fin. il doit être en forme BASE DE TEMPS=num/jour, Où num et mes jour sont des nombres entiers.
Si la base de temps est manquante, les heures de début/fin sont supposées être en millisecondes.

Ensuite, une section de chapitre doit contenir les heures de début et de fin de chapitre sous la forme START =num,
FIN=num, Où num est un entier positif.

8. Lignes vides et lignes commençant par ; or # sont ignorés.

9. Clés de métadonnées ou valeurs contenant des caractères spéciaux (=, ;, #, \ et une nouvelle ligne) doit
être échappé avec une barre oblique inverse \.

10. Notez que les espaces dans les métadonnées (par ex. foo = Bar) est considérée comme faisant partie de la
tag (dans l'exemple ci-dessus, la clé est foo , La valeur est
Bar).

Un fichier ffmetadata pourrait ressembler à ceci :

;FFMETADONNEES1
title=vélo\\cabane
; ceci est un commentaire
artiste=équipe de trolls FFmpeg

[CHAPITRE]
BASE DE TEMPS=1/1000
DÉBUT=0
Le #chapitre se termine à 0:01:00
FIN=60000
titre=chapitre \#1
[FLUX]
titre=multi\
en ligne

En utilisant le multiplexeur et le démultiplexeur ffmetadata, il est possible d'extraire les métadonnées d'une entrée
dans un fichier ffmetadata, puis transcodez le fichier dans un fichier de sortie avec le
fichier ffmetadata édité.

Extraire un fichier ffmetadata avec ffmpeg va comme suit:

ffmpeg -i INPUT -f ffmetadata FFMETADATAFILE

La réinsertion des informations de métadonnées modifiées à partir du fichier FFMETADATAFILE peut être effectuée de la manière suivante :

ffmpeg -i INPUT -i FFMETADATAFILE -map_metadata 1 -codec copy OUTPUT

Utilisez les formats ffmpeg en ligne à l'aide des services onworks.net


Ad




×
Publicité
❤ ️Achetez, réservez ou achetez ici — gratuitement, contribue à maintenir la gratuité des services.