comment convertir avi (xvid) en mkv ou mp4 (h264)

19

Très noob en matière de vidéo. J'essaie de donner un sens à ce que je trouve via Google ... mais c'est surtout grec pour moi.

J'ai un tas de fichiers Avi qui ne seront pas lus dans ma boîte WD TV Play. Mediainfo me dit qu'ils sont xvid. Les spécifications de la boîte montrent que cela devrait être bien ... mais creuser à travers les forums en dit long. Je voudrais donc essayer de les convertir en fichiers MKV ou mp4 encodés en h264.

Je suppose qu'avconv est l'outil, mais la lecture du manuel me rend vraiment très confus.

J'ai essayé l'exemple très basique de:

avconv -i file.avi -c copy file.mp4

cela a pris moins de 4 secondes. Et cela a fonctionné ... en quelque sorte. Cela "jouait" en ce sens que quelque chose apparaissait à l'écran ... mais il y avait d'horribles artefacts et les scènes se fondaient en quelque sorte les unes dans les autres. Je veux préserver la qualité si possible.

Je ne suis pas préoccupé par la taille du fichier. Je ne suis pas non plus très préoccupé par le temps que cela prend, à condition que je puisse les faire en lot.

Une personne familière avec le processus peut-elle me donner une commande avec les options?

Merci de votre aide.

Je poste le mediainfo au cas où cela aiderait:

General
Complete name                            : \\SERVER\Video\Public\test.avi
Format                                   : AVI
Format/Info                              : Audio Video Interleave
File size                                : 189 MiB
Duration                                 : 11mn 18s
Overall bit rate                         : 2 335 Kbps
Writing application                      : Lavf52.32.0

Video
ID                                       : 0
Format                                   : MPEG-4 Visual
Format profile                           : Advanced Simple@L5
Format settings, BVOP                    : 2
Format settings, QPel                    : No
Format settings, GMC                     : No warppoints
Format settings, Matrix                  : Default (H.263)
Muxing mode                              : Packed bitstream
Codec ID                                 : XVID
Codec ID/Hint                            : XviD
Duration                                 : 11mn 18s
Bit rate                                 : 2 129 Kbps
Width                                    : 720 pixels
Height                                   : 480 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 29.970 fps
Standard                                 : NTSC
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 0.206
Stream size                              : 172 MiB (91%)
Writing library                          : XviD 1.2.1 (UTC 2008-12-04)

Audio
ID                                       : 1
Format                                   : MPEG Audio
Format version                           : Version 1
Format profile                           : Layer 3
Mode                                     : Joint stereo
Mode extension                           : MS Stereo
Codec ID                                 : 55
Codec ID/Hint                            : MP3
Duration                                 : 11mn 18s
Bit rate mode                            : Constant
Bit rate                                 : 192 Kbps
Channel(s)                               : 2 channels
Sampling rate                            : 48.0 KHz
Compression mode                         : Lossy
Stream size                              : 15.5 MiB (8%)
Alignment                                : Aligned on interleaves
Interleave, duration                     : 24 ms (0.72 video frame)
bcsteeve
la source
Vous devriez envisager de ne pas recoder d'un codec avec perte à un autre. Dans le cas où votre vidéo est en codec Xvid, remixez-la simplement dans le conteneur Matroska.
v010dya

Réponses:

44

La commande standard de http://manpages.ubuntu.com/manpages/precise/man1/avconv.1.html montre ceci:

avconv -i test.avi -c:v libx264 -c:a copy outputfile.mp4

Cela va ré-encoder votre vidéo en h264 (= AVC) et garder votre son inchangé qui est mp3 et complètement légal.

Quelques autres options à considérer avec cette ligne de commande sont:

  • Ajustez la qualité de la vidéo de sortie en utilisant le -bparamètre (débit binaire) ou utilisez le facteur de débit constant (CRF) avec quelque chose comme-crf 22
  • Utilisez un préréglage libx264 comme -preset veryslowpour une vidéo améliorée

Si vous les utilisez, les options doivent être placées après l' -c:v libx264option ...

Vous pouvez également regarder les programmes GUI winffet avidemuxqui rendront les choses moins compliquées. ( handbrakeest également un bon mais je ne l'ai jamais accepté)

thom
la source
Ha! Je ne sais pas comment vous regardez ce gobble-de-gook d'une page de manuel et tirez cette ligne comme une "commande standard" évidente ... mais je suis reconnaissant que vous l'ayez fait! Ça a marché. Je vous en suis reconnaissant.
bcsteeve
Merci d'avoir mentionné Handbrake - je l'ai eu et je l'ai complètement oublié. J'ai fini par l'ouvrir, à la recherche de mon dossier de films, j'ai récupéré toutes les vidéos, les ai toutes mises en file d'attente et j'ai cliqué sur "Encode"!
scorpiodawg
Pour le son AAC, de nombreux appareils peuvent avoir un décodeur matériel, donc le garder au format MP3 n'est pas nécessairement mieux.
ccpizza
4

Dans le cas où vous recherchez quelque chose de graphique, vous pouvez envisager d'utiliser le package mkvtoolnix-gui. Cela dépend en fait de l'utilitaire de ligne de commande, mais il exécutera la commande avec toutes les options nécessaires pour vous.

mkvmerge gui 1

La première chose que vous devrez faire est d'ajouter les fichiers contenant tous les flux nécessaires. Vous faites cela (évidemment) en appuyant sur le bouton Ajouter et en sélectionnant le fichier ou en faisant glisser vos fichiers dans la zone "Fichiers d'entrée". Vous ne devez pas utiliser le bouton Ajouter, sauf si votre intention est de placer le contenu d'un fichier après le contenu d'un autre (en faisant de la durée du fichier final la somme de tous les fichiers ajoutés).

Puisque vous dites que vous prévoyez de convertir simplement des .avifichiers, vous devez simplement ajouter un fichier à la fois. Notez que le premier fichier que vous ajouterez définira automatiquement le nom du fichier de sortie, il correspondra au nom d'entrée, mais l'extension sera modifiée en .mkv. Vous pouvez bien sûr changer cela si vous le souhaitez.

Après avoir ajouté quelque chose, vous pourrez modifier les paramètres des flux (tels que la langue attribuée, si la piste est "activée" par défaut et si un utilisateur peut choisir de désactiver ce flux tous ensemble si vous le souhaitez).

Vous pouvez donner le titre du flux. Je suggère que si vous avez une vidéo multi-audio que vous utilisez avec la langue. Par exemple, vous pouvez avoir "original" ou "doublage d'une seule voix" ou "commentaire du réalisateur" pour les noms des pistes. De nombreux joueurs vous les montreront lorsque vous sélectionnez le flux à jouer, et c'est très utile. Cependant, essayez de ne pas répéter les informations. Il n'y a aucune raison d'écrire "langue anglaise" lorsque vous pouvez simplement définir le code de langue de la piste.

Il existe également des options spécifiques, qui dépendent du flux sur lequel vous travaillez.

mkvmerge gui 2

Parfois, vous souhaiterez peut-être ajouter des pièces jointes à votre fichier. Si vous ajoutez une image, de nombreux gestionnaires de fichiers afficheront cette image comme icône pour le fichier vidéo final. Si vous muxez une sorte de film et que vous avez la couverture, il peut être judicieux de le mettre en pièce jointe.

mkvmerge gui 3

Enfin, dans l'onglet Global, vous pouvez définir les métadonnées pour l'ensemble du fichier. La chose la plus courante consiste à définir le titre. Il sera prérempli par les données extraites du premier fichier que vous avez ajouté aux "Fichiers d'entrée".

Vous pouvez également ajouter des informations de chapitre. Mkvmerge est capable de lire le fichier de chapitre ogm ainsi que les chapitres xml. Il vous permet également de modifier les fichiers de chapitre, mais gardez à l'esprit que cet onglet fonctionne comme une application distincte, de sorte que vous ne modifierez pas les chapitres ajoutés à votre fichier de sortie, vous devrez les enregistrer dans cet onglet, puis ajoutez-les comme entrée au fichier que vous muxez maintenant.

La fonctionnalité intéressante de mkvmerge gui est le "Copier dans le presse-papiers" qui copie la commande de terminal exacte que l'application prévoit d'exécuter. Si vous avez l'intention de multiplexer de nombreux fichiers, vous pouvez en créer un, comme vous l'aimez, puis copiez la commande dans le presse-papiers et créez un script bash qui fait tous les fichiers que vous voulez en même temps.

v010dya
la source
Comment commencez-vous?
uvasal
1
mmg est la réponse
uvasal
2

Avidemux est un éditeur vidéo gratuit conçu pour les tâches simples de découpe, de filtrage et d'encodage. Il prend en charge de nombreux types de fichiers, y compris AVI, fichiers MPEG compatibles DVD, MP4 et ASF, en utilisant une variété de codecs. Les tâches peuvent être automatisées à l'aide de projets, d'une file d'attente de travaux et de puissantes capacités de script. Avidemux est disponible pour Ubuntu.

sudo apt-get update
sudo apt-get install avidemux
kyodake
la source
0

J'ai utilisé les deux commandes suivantes pour convertir mes fichiers AVI en fichiers MP4 qui seraient diffusés correctement depuis mon WD My Cloud Mirror:

ffmpeg -i infile.AVI -strict -2 -profile:v baseline -pix_fmt yuv420p temp.mp4
MP4Box -mpeg4 -brand mp42:0 -add temp.mp4#video:name= -add temp.mp4#audio:name= -new outfile.mp4

ffmpegconvertit le fichier AVI en MP4, changeant le profil vidéo et le format de pixel pour se conformer aux valeurs largement acceptées. MP4Boxreconditionne les flux dans le MP4 final et ajoute des métadonnées standard.

Bague Patrick
la source
-strict -2n'est pas nécessaire pour encoder l'audio AAC, sauf si votre ffmpegest très ancien. Vous pourrez peut-être ignorer MP4Boxsi vous ajoutez l' -movflags +faststartoption de sortie dans ffmpeg.
llogan