logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:media:ffmpeg [02/09/2017 09:57]
smolski [Images Fixes] huffyuv
doc:media:ffmpeg [19/08/2018 11:26]
kao [Encoder la vidéo] ajout du h265
Ligne 24: Ligne 24:
 ===== Installation ===== ===== Installation =====
  
-ffmpeg est dans [[doc:​systeme:​apt:​sources.list#​les-depots-deb-multimedia|les fichiers sources.list - deb-multimedia]] : +<code root>apt install ffmpeg</​code>​
-<code root>apt-get install ffmpeg</​code>​+
 ===== Utilisation ===== ===== Utilisation =====
  
Ligne 243: Ligne 242:
  
 ==== Encoder la vidéo en VP8 ==== ==== Encoder la vidéo en VP8 ====
 +<​note>​Le VP8 est souvent déprécié au profit du VP9 plus souple et plus performant</​note>​
 VP8 est un codec vidéo libre promu par Google, un bon équivalent au h264/mp4 : VP8 est un codec vidéo libre promu par Google, un bon équivalent au h264/mp4 :
 <code user>​ffmpeg -i tears_of_steel_720p.mkv -c:v:0 libvpx -crf 10 -vb 4M -c:a copy   ​tears_of_steel_vp8.mkv</​code>​ <code user>​ffmpeg -i tears_of_steel_720p.mkv -c:v:0 libvpx -crf 10 -vb 4M -c:a copy   ​tears_of_steel_vp8.mkv</​code>​
Ligne 251: Ligne 250:
   *-vb 4M permet de donner un objectif de débit à 4 Megabit/s   *-vb 4M permet de donner un objectif de débit à 4 Megabit/s
  
-Une liste des options possibles pour encoder en vp8 est disponible ici: +Une liste des options possibles pour encoder en vp8 est disponible ici: [[http://​wiki.webmproject.org/​ffmpeg]]
-  * [[http://​wiki.webmproject.org/​ffmpeg]]+
  
 +==== Encoder la vidéo en VP9 ====
 +
 +VP9 est un codec vidéo libre promu par Google pour concurrencer le h265/HEVC :
 +
 +<code user>​ffmpeg -i tears_of_steel_720p.mkv -c:v:0 libvpx-vp9 -threads 8 -crf 10 -vb 4M -c:a copy   ​tears_of_steel_vp9.mkv</​code>​
 +
 +Ici on utilise la librairie libvpx-vp9 avec trois options :
 +
 +    -crf permet de définir un niveau de qualité entre 0 et 63 (petit nombre = meilleure qualité mais plus de temps de calcul)
 +    -vb 4M permet de donner un objectif de débit à 4 Megabit/s
 +    -threads reste nécessaire pour forcer le nombre de core, libvpx-vp9 ne les detecte pas encore automatiquement. ​
 +
 +Une liste des options possibles pour encoder en vp9 est disponible ici: [[http://​wiki.webmproject.org/​ffmpeg/​vp9-encoding-guide]]
  
 ==== Encoder la vidéo en H264/Mpeg4 ==== ==== Encoder la vidéo en H264/Mpeg4 ====
Ligne 263: Ligne 274:
   * **-crf** ​ permet de définir un niveau de qualité entre 0 et 51 (petit nombre = meilleure qualité mais plus de temps de calcul)   * **-crf** ​ permet de définir un niveau de qualité entre 0 et 51 (petit nombre = meilleure qualité mais plus de temps de calcul)
  
-Une documentation plus détaillé en anglais est disponible ici: +Une documentation plus détaillé en anglais est disponible ici: [[https://​trac.ffmpeg.org/​wiki/​x264EncodingGuide | trac.ffmpeg.org]] 
-  * [[https://​trac.ffmpeg.org/​wiki/​x264EncodingGuide | trac.ffmpeg.org]]+ 
 +==== Encoder la vidéo en H.265/HEVC ==== 
 + 
 +Le H.265/HEVC est un nouveau codec propriétaire,​ successeur du H264/Mpeg4. La syntaxe suit celle du H264 
 + 
 +<code user>​ffmpeg -i tears_of_steel_720p.mkv -c:v:0 libx265 -preset slow -crf 22 -c:a copy tears_of_steel_h265.mkv</​code>​ 
 + 
 +Une documentation plus détaillée en anglais est disponible ici : https://​trac.ffmpeg.org/​wiki/​Encode/​H.265 et ici http://​x265.readthedocs.org/​en/​default/​
  
 ==== Regrouper plusieurs vidéos mp4 en 1 seule ==== ==== Regrouper plusieurs vidéos mp4 en 1 seule ====
Ligne 350: Ligne 368:
 <code user>​ffmpeg -i film.avi -aspect 16:9 -c copy film2.mkv</​code>​ <code user>​ffmpeg -i film.avi -aspect 16:9 -c copy film2.mkv</​code>​
  
 +==== CRF (Constant Rate Factor) ====
 +
 +Il faut utiliser le CRF pour définir une qualité d'​image constante. L'​objectif est d'​obtenir une qualité d'​image stable entre plusieurs vidéos. À durée égale, la taille du fichier peut varier suivant si la vidéo est facilement compressible ou pas.\\
 +<note tip>Une vidéo de 30mn avec beaucoup de scènes fixes, typiquement une conférence,​ sera beaucoup moins lourde qu'une vidéo de 30mn avec des explosions et effets stroboscopiques tout du long. L'​encodeur fait varier le bitrate pour s'​adapter à différentes scènes, en gardant comme objectif une certaine qualité d'​image.</​note>​
 +
 +L'​encodage en 1 ou 2 passes en spécifiant un bitrate était utile à une certaine époque pour utiliser le maximum de place disponibles sur des supports comme le CD ou le DVD, typiquement obtenir la meilleure qualité de vidéo sur 700Mo exactement. En définissant un bitrate de 1000kb/s (vidéo+audio) pour une vidéo de 30mn00s, on obtient un fichier de 219,72 Mio exactement (ajouter quelques Mio pour le conteneur mkv). \\
 +Si tu ne comptes pas utiliser ces formats de stockage, je te conseille vivement d'​utiliser le CRF. Pour info, un encodage en 2 passes ne fait que définir précisément un CRF lors de la première passe, et fait un encodage tout à fait normal en 2ème passe avec le CRF défini précédemment.
 +
 +Voir discussion avec un des devs du x264 :
 +  * https://​forum.doom9.org/​showthread.php?​t=143904
 +Par défaut le CRF est fixé à 23, ce qui donne une très bonne qualité.
 +  * Réduire ce facteur accroit la qualité de l'​image,​
 +  * l'​augmenter abaisse la qualité de l'​image.
 +L'​échelle est logarithmique,​ une différence de 6 points double ou divise par 2 environ la taille du fichier final
 +  * Un CRF de 18-20 donne une qualité très proche des disques commerciaux,​
 +  * un CRF de 26-28 est suffisant pour une conférence.
 +<note important>​Attention toutefois, la définition de la vidéo est importante. \\
 +Une vidéo en 1080p à CRF 23 sera excellente, alors qu'une vidéo en 240p à CRF 23 pourrait faire apparaître des artefacts.</​note>​
 +
 +=== Pense-bête à ska ===
 +
 +^ Commentaire ​ ^ Option |
 +|On peut séparer plusieurs filtres avec une virgule, l'​ordre est important |-vf filtre1,​filtre2,​etc |
 +|Rogner l'​image,​ origine = en haut à gauche |-vf crop=largeurX:​hauteurY:​decalageX:​decalageY |
 +|Mettre à l'​échelle |-1 conserve le ratio et flag peut être '​bicubic'​ : -vf scale=-1:​480:​flags='​lanczos'​ |
 +|Débruitage de vidéo|défaut = 4. Utiliser 2 pour les vidéos faiblement bruitées : -vf hqdn3d=2 |
 +|Désentralaçage (mcdeint et kerndeint sont moins efficaces) |-vf yadif |
 +|Ajustement des couleurs |([mini/​maxi%%|%%défaut]) : -vf mp=eq2=gamma:​contraste:​luminosite:​saturation |[0.1/​10%%|%%1:​-2/​2%%|%%1:​-1/​1%%|%%0:​0/​3%%|%%1] |
 +|Modifie le ratio, le lecteur affichera la vidéo en 16/9 peut importe la définition |-aspect 16:9 |
 +|Change le départ, la fin ou la durée |-ss départ en secondes\\ -t durée en secondes\\ -to fin en secondes |
 +|Désactive les flux audios ou vidéos |-an sans audio\\ -vn sans vidéo |
 +|Audio Opus | bitrate -c:a libopus -b:a 64k |
 +|Audio Vorbis, qualité | -c:a libvorbis | -q:a 0 (~64 kbps)\\ -q:a 2 (~96 kbps\\ -q:a 3 (~112 kbps standard)\\ -q:a 4 (~128 kbps)\\ -q:a 5 (~160 kbps) |
 +|Conversion audio multi-canaux vers stéréo |-ac 2 |
 +
 +Et le lien vers la doc complète de ffmpeg avec toutes les options disponibles pour faire des trucs vraiment spéciaux :
 +  * https://​ffmpeg.org/​ffmpeg-all.html
 +Les conseils pour du x264 sur le wiki ffmpeg :
 +  * https://​trac.ffmpeg.org/​wiki/​Encode/​H.264
 +
 +Pompé du forum df là :
 +  * https://​forum.doom9.org/​showthread.php?​t=143904
 +Merci **ska** ! //Que ton chemin se couvre de pétales de rose...// :-D
 ===== Encoder le son ===== ===== Encoder le son =====
  
Ligne 404: Ligne 465:
 Ici on spécifie 24 images par seconde et un bitrate de 1800kb/s. Ici on spécifie 24 images par seconde et un bitrate de 1800kb/s.
  
-==== huffyuv ​====+=== huffyuv ===
  
 Transformer une image fixe jpg en video mp4 : Transformer une image fixe jpg en video mp4 :
-ffmpeg -i votre_image.jpg -c:v huffyuv -vcodec libx264 -r 0.07 votre_image.mp4+<code user>ffmpeg -i votre_image.jpg -c:v huffyuv -vcodec libx264 -r 0.07 votre_image.mp4</​code>​
  
 L'​option : L'​option :
 <​code>​-r 0.-r 0.07</​code>​ <​code>​-r 0.-r 0.07</​code>​
  
-Implique ​environ ​12s de durée ​pour la video MP4.+module à environ ​1/15e la vitesse ​de défilement ​pour la video MP4. 
 +Si on augmente, ça accélère, si on diminue, ça ralentit. 
 + 
 +Merci au **captnfab** qui de son vaisseau flambloie les tutos à tour de bras ! LOL
  
 ==== Transformer une vidéo en une série images ==== ==== Transformer une vidéo en une série images ====
Ligne 470: Ligne 534:
 =====Liens===== =====Liens=====
  
 +  * Forum df - Améliorer la qualité des vidéos : [[https://​debian-facile.org/​viewtopic.php?​pid=244397#​p244397]]
   * Site officiel: (en)[[http://​ffmpeg.org/​]]   * Site officiel: (en)[[http://​ffmpeg.org/​]]
   * Documentation ffmpeg: (en)[[http://​trac.ffmpeg.org/​wiki]]   * Documentation ffmpeg: (en)[[http://​trac.ffmpeg.org/​wiki]]
doc/media/ffmpeg.txt · Dernière modification: 22/06/2024 19:25 par vv222

Pied de page des forums

Propulsé par FluxBB