come convertire avi (xvid) in mkv o mp4 (h264)


19

Molto rumoroso quando si tratta di video. Sto cercando di dare un senso a ciò che sto trovando tramite Google ... ma per me è principalmente greco.

Ho un sacco di file Avi che non verranno riprodotti nella mia scatola di riproduzione WD TV. Mediainfo mi dice che sono xvid. Le specifiche per il box mostrano che dovrebbe andare bene ... ma scavare nei forum dice che è incostante. Quindi vorrei provare a convertirli in file MKV o mp4 con codifica h264.

Ho capito che avconv è lo strumento, ma leggere il manuale mi ha davvero confuso.

Ho provato l'esempio molto semplice di:

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

ci sono voluti meno di 4 secondi. E ha funzionato ... in un certo senso. Ha "giocato" in quel qualcosa che è apparso sullo schermo ... ma ci sono stati artefatti orribili e le scene si sarebbero semplicemente unite l'una con l'altra. Voglio preservare la qualità, se possibile.

Non sono preoccupato per le dimensioni del file. Neanche io mi preoccupo molto del tempo necessario, a condizione di poterli fare in gruppo.

Qualcuno può familiarizzare con il processo per favore mi dia un comando con le opzioni?

Grazie per l'aiuto.

Sto pubblicando mediainfo nel caso in cui aiuti:

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)

Dovresti considerare di non ricodificare da un codec con perdita a un altro. Nel caso in cui il tuo video sia nel codec Xvid, rimodellalo nel contenitore Matroska.
v010dya,

Risposte:


44

Il comando standard da http://manpages.ubuntu.com/manpages/precise/man1/avconv.1.html mostra questo:

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

Questo ricodificherà il tuo video su h264 (= AVC) e manterrà il tuo suono invariato che è mp3 e completamente legale allo standard.

Alcune altre opzioni da considerare con questa riga di comando sono:

  • Modifica la qualità del video di output utilizzando il -bparametro (bitrate) o usa il fattore di frequenza costante (CRF) con qualcosa di simile-crf 22
  • Utilizzare un predefinito libx264 come ad esempio -preset veryslowper un video migliorato

Se li usi, le opzioni dovrebbero essere posizionate dopo l' -c:v libx264opzione ...

Puoi anche guardare i programmi della GUI winffe avidemuxquesto renderà le cose meno complicate. ( handbrakeè anche buono ma non ho mai fatto i conti con esso)


Ha! Non so come guardi quel gobble-de-gook di una manpage e tiri fuori quella linea come un ovvio "comando standard" ... ma sono grato che tu l'abbia fatto! Ha funzionato. Lo apprezzo.
bcsteeve

Grazie per aver menzionato il freno a mano: l'ho avuto e me ne sono completamente dimenticato. Ho finito per aprirlo, cercando la mia cartella del film, ho bevuto tutti i video, li ho accodati tutti e ho premuto "Encode"!
scorpiodawg,

Per il suono AAC molti dispositivi potrebbero avere un decodificatore hardware, quindi tenerlo come MP3 non è necessariamente migliore.
ccpizza,

4

Se stai cercando qualcosa di grafico, puoi prendere in considerazione l'uso del pacchetto mkvtoolnix-gui. In realtà dipende dall'utilità della riga di comando, ma eseguirà il comando con tutte le opzioni necessarie per te.

mkvmerge gui 1

La prima cosa che devi fare è aggiungere i file contenenti tutti i flussi necessari. Lo fai (ovviamente) premendo il pulsante Aggiungi e selezionando il file o trascinando i tuoi file nell'area "File di input". Non è necessario utilizzare il pulsante Aggiungi, a meno che non si desideri collocare il contenuto di un file dopo il contenuto di un altro (rendendo la durata del file finale la somma di tutti quelli aggiunti).

Dal momento che stai dicendo che stai pensando di convertire solo i .avifile, allora dovresti semplicemente aggiungere un file alla volta. Si noti che il primo file che verrà aggiunto imposterà automaticamente il nome del file di output, corrisponderà al nome di input, ma l'estensione verrà modificata in .mkv. Ovviamente puoi cambiarlo se lo desideri.

Dopo aver aggiunto qualcosa, sarai in grado di modificare i parametri dei flussi (come la lingua assegnata, se la traccia è "attiva" per impostazione predefinita e se un utente può scegliere di disabilitare questo flusso tutti insieme se lo desideri.

Puoi dare il titolo per lo stream. Suggerisco che se si dispone di video multi-audio che si utilizza insieme alla lingua. Ad esempio puoi avere "originale" o "doppia voce" o "commento del regista" per i nomi delle tracce. Molti giocatori ti mostreranno questi quando selezioni lo stream da riprodurre ed è molto utile. Cerca comunque di non ripetere le informazioni lì. Non c'è motivo di scrivere "lingua inglese" quando puoi semplicemente impostare il codice della lingua della traccia.

Ci sono anche alcune opzioni specifiche, che dipenderanno dal flusso su cui stai lavorando.

mkvmerge gui 2

A volte potresti voler aggiungere alcuni allegati al tuo file. Se aggiungi un'immagine, molti file manager visualizzeranno questa immagine come icona per il file video finale. Se stai mescolando una sorta di film, e ti capita di avere la copertina, potrebbe essere una buona scelta metterlo come allegato.

mkvmerge gui 3

Infine, nella scheda Globale puoi impostare i metadati per l'intero file. La cosa più comune è impostare il titolo. Sarà precompilato dai dati presi dal primo file che hai aggiunto ai "File di input".

È inoltre possibile aggiungere informazioni sul capitolo. Mkvmerge è in grado di leggere file di capitoli ogm e capitoli xml. Ti consente anche di modificare i file dei capitoli, ma tieni presente che questa scheda funziona come un'applicazione separata, quindi non modificherai i capitoli aggiunti al tuo file di output, dovrai salvarli in quella scheda e quindi aggiungili come input al file che stai combinando.

La caratteristica interessante di mkvmerge gui è "Copia negli Appunti" che copia l'esatto comando del terminale che l'applicazione sta pianificando di eseguire. Se intendi combinare molti file, puoi configurarne uno come preferisci, quindi copiare il comando negli Appunti e creare uno script bash che esegua tutti i file desiderati contemporaneamente.


Come si avvia?
uvasal,

1
mmg è la risposta
uvasal

2

Avidemux è un editor video gratuito progettato per semplici operazioni di taglio, filtraggio e codifica. Supporta molti tipi di file, tra cui AVI, file MPEG compatibili con DVD, MP4 e ASF, utilizzando una varietà di codec. Le attività possono essere automatizzate utilizzando progetti, coda di lavoro e potenti funzionalità di scripting. Avidemux è disponibile per Ubuntu.

sudo apt-get update
sudo apt-get install avidemux



0

Ho usato i seguenti due comandi per convertire i miei file AVI in file MP4 che sarebbero stati trasmessi correttamente dal mio 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

ffmpegconverte il file AVI in MP4, modificando il profilo video e il formato pixel per adattarsi ai valori ampiamente accettati. MP4Boxriconfeziona i flussi nell'MP4 finale e aggiunge metadati standard.


-strict -2non è necessario per codificare l'audio AAC a meno che tu non ffmpegsia molto vecchio. Potresti essere in grado di saltare MP4Boxse aggiungi l' -movflags +faststartopzione di output in ffmpeg.
Llogan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.