avconv
y ffmpeg
sont essentiellement la même chose. [Depuis très récemment, il y a quelques divergences, mais il n'y a pas grand-chose à en dire si vous compilez vos propres données. ffmpeg
(celle fournie dans les dépôts Ubuntu, par exemple, est ancienne et souffre du fait que la taille de la vidéo n'est pas un problème [en fait, elle essaie de vous dire que la vidéo n'a pas les bonnes proportions], mais si vous prenez la peine de lire la page d'accueil du site Web de la Commission européenne, vous verrez qu'il n'y a pas de problème. ffmpeg
et le compiler à partir de git, il n'a aucun des problèmes des anciennes versions qui sont livrées en stock dans la plupart des OS. l'avertissement de dépréciation se référant à avconv
vous dit qu'ils ont créé un nouvel utilitaire pour essayer de remplacer ffmpeg
Mais c'est SO largement utilisé que même s'ils essayaient de le couper, nous créerions tous des softlinks à partir de avconv
a ffmpeg
de toute façon, ils ne vont pas arrêter le travail et le laisser tomber.]
Ce n'est pas une mauvaise chose d'utiliser avconv
Je viens de voir la seule réponse mentionnant l'avertissement de dépréciation qui est essentiellement un message vide devrait être plus de pour une alternative à ffpmeg vous pourriez essayer avconv qui est plus fidèle au cas ici.
avconv -i inputfile.flv -map 0 -c:v libx264 -c:a copy outputfile.mp4
est en fait le MEME que
ffmpeg -i filename.flv -vcodec libvpx -acodec libvorbis
essentiellement dans le premier cas, vous utilisez les options à main courte et dans le second, la variété plus écrite.
AUSSI -map 0
fait référence aux pistes audio, donc si vous utilisez quelque chose comme mp4a
qui peut gérer plusieurs pistes audio sans problème, vous pouvez laisser cette option désactivée pour copier tous les flux audio dans le fichier résultant. Ceci n'est nécessaire que si vous utilisez un codec qui ne prend pas en charge plusieurs pistes audio dans le même fichier. Dans ce cas, vous voudrez copier l'audio nécessaire et non pas tous les flux. Bien sûr, si vous essayez de minimiser l'espace utilisé, vous pouvez n'en spécifier qu'un seul pour essayer de réduire un peu la taille du fichier [l'audio fait environ un tiers de la taille de la piste vidéo [et c'est généreux]].
-c:v = codec(video)
donc : -c:v libx264
est identique à l'utilisation : -vcodec libx264
FYI ; même chose pour cet exemple : -c:v copy = -vcodec copy
et de plus, pour les FLVs, faites attention, le fichier flv est le même qu'un avi en ce sens qu'il s'agit d'un conteneur qui peut contenir un nombre quelconque de codecs pour la vidéo ou l'audio. Vous devriez d'abord utiliser l'utilitaire d'inspection des médias de votre choix pour voir ce qui est utilisé dans le fichier lui-même avant de choisir de copier simplement le flux vidéo et/ou audio ou de le transmuter de ce qu'il était vers quelque chose de nouveau. Ainsi, la commande qui fonctionne le mieux pour un FLV peut ne pas être la même pour un autre FLV [bien sûr, si vous obtenez plusieurs FLV de la même source, ils seront TOUJOURS encodés de la même façon, mais ce n'est jamais une garantie].
Je n'essaie pas de pinailler, je suis juste tombé sur ce sujet lors d'une recherche sur Internet et je voulais essayer de clarifier un peu les choses pour les gens.
Encore une fois, comme cette réponse l'indique pour la réponse en dessous de celle-ci, OUI, l'exécution de ffmpeg affichera toujours ce message, il est essentiellement creux car ces 2 utilitaires sont vraiment les mêmes avec très peu de différences. Vous devriez dans presque tous les cas obtenir exactement les mêmes résultats en utilisant l'une ou l'autre commande. Cela ne va pas nécessairement résulter en un re-transcode complet, pourquoi ? A, si ce n'est pas nécessaire, cela permet de gagner une tonne de temps, et B si vous re-transcodez un fichier qui a déjà été compressé dans un codec vidéo, vous exécutez essentiellement une routine de compression contre quelque chose qui est déjà compressé et il en résultera toujours une qualité inférieure à celle de la source. La plupart des nouveaux codecs sont plus ou moins compatibles [pas tous]. Par exemple, un flv pourrait techniquement être un MP4 dans une enveloppe FLV puisque les FLV, comme les AVI, sont juste des conteneurs d'autres codecs. Donc, cela dépend de ce que le flv source a comme codec vidéo et ausio comparé à ce vers quoi vous le convertissez pour savoir s'il a besoin d'être transcodé du tout. Si dans le FLV ils ont utilisé la vidéo H264 MP4 et MP4a pour l'audio, vous n'aurez pas besoin de re-transcoder la chose, vous aurez seulement besoin de la copier et d'ajuster les en-têtes de fichiers pour qu'elle soit lue comme un vrai MP4 au lieu d'une vidéo MP4 dans un fichier FLV.