cara mengkonversi avi (xvid) ke mkv atau mp4 (h264)

19

Sangat noob dalam hal video. Saya mencoba memahami apa yang saya temukan melalui Google ... tetapi kebanyakan dalam bahasa Yunani bagi saya.

Saya memiliki banyak file Avi yang tidak dapat diputar di kotak WD TV Play saya. Mediainfo mengatakan kepada saya bahwa mereka jelas. Spesifikasi untuk kotak pertunjukan itu harusnya baik-baik saja ... tetapi menggali melalui forum mengatakan ini adalah hit-and-miss. Jadi saya ingin mencoba mengubahnya menjadi file MKV atau mp4 yang dikodekan h264.

Saya mengumpulkan avconv adalah alat, tetapi membaca manual hanya membuat saya benar-benar bingung.

Saya mencoba contoh yang sangat mendasar:

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

butuh kurang dari 4 detik. Dan itu berhasil ... semacam. Itu "dimainkan" di mana sesuatu muncul di layar ... tapi ada artefak yang mengerikan dan pemandangan akan saling mencair satu sama lain. Saya ingin menjaga kualitas jika memungkinkan.

Saya tidak peduli tentang ukuran file. Saya tidak terlalu khawatir dengan waktu yang dibutuhkan, asalkan saya bisa melakukannya dalam satu batch.

Bisakah seseorang yang akrab dengan proses tolong beri saya perintah dengan opsi?

Terima kasih untuk bantuannya.

Saya memposting mediainfo jika itu membantu:

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
sumber
Anda harus mempertimbangkan untuk tidak memasukkan kembali kode dari satu codec yang hilang ke yang lain. Dalam kasus di mana video Anda berada di Xvid codec, cukup remux ke dalam wadah Matroska.
v010dya

Jawaban:

44

Perintah standar dari http://manpages.ubuntu.com/manpages/precise/man1/avconv.1.html menunjukkan ini:

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

Ini akan menyandikan ulang video Anda ke h264 (= AVC) dan menjaga suara Anda tidak berubah yang merupakan mp3 dan sepenuhnya legal untuk standar.

Beberapa opsi lain untuk dipertimbangkan dengan commandline ini adalah:

  • Tweak kualitas video output dengan menggunakan -bparameter (bitrate) atau gunakan Constant Rate Factor (CRF) dengan sesuatu seperti-crf 22
  • Gunakan preset libx264 seperti -preset veryslowuntuk video yang lebih baik

Jika Anda menggunakan ini opsi harus ditempatkan setelah -c:v libx264opsi ...

Anda juga dapat melihat program winff- program GUI dan avidemuxyang akan membuat segalanya lebih mudah. (juga handbrakebagus tapi saya tidak pernah setuju)

mereka
sumber
Ha! Saya tidak tahu bagaimana Anda melihat halaman manual gobble-de-gook dan menarik garis itu sebagai "perintah standar" yang jelas ... tapi saya bersyukur Anda berhasil! Itu berhasil. Saya menghargainya.
bcsteeve
Terima kasih telah menyebutkan Handbrake - Saya sudah dan benar-benar lupa. Saya akhirnya membukanya, mencari folder film saya, menghirup semua video, membuat semuanya enqueued, dan menekan "Encode"!
scorpiodawg
Untuk suara AAC, banyak perangkat mungkin memiliki dekoder perangkat keras, jadi menyimpannya sebagai MP3 belum tentu lebih baik.
ccpizza
4

Jika Anda mencari sesuatu yang grafis, Anda dapat mempertimbangkan untuk menggunakan paket mkvtoolnix-gui. Ini sebenarnya tergantung pada utilitas baris perintah, tetapi itu akan menjalankan perintah dengan semua opsi yang diperlukan untuk Anda.

mkvmerge gui 1

Hal pertama yang perlu Anda lakukan adalah menambahkan file yang berisi semua aliran yang diperlukan. Anda melakukan itu (jelas) dengan menekan tombol add dan memilih file atau dengan menyeret file Anda ke area "Input files". Anda tidak boleh menggunakan tombol append, kecuali jika Anda bermaksud untuk menempatkan konten dari satu file setelah konten yang lain (menjadikan durasi file akhir jumlah dari semua yang ditambahkan).

Karena Anda mengatakan Anda berencana untuk hanya mengonversi .avifile, maka Anda cukup menambahkan satu file pada saat itu. Perhatikan bahwa file pertama yang akan Anda tambahkan akan secara otomatis menetapkan nama file output, itu akan cocok dengan nama input, tetapi ekstensi akan diubah menjadi .mkv. Tentu saja Anda dapat mengubahnya jika diinginkan.

Setelah Anda menambahkan sesuatu, Anda akan dapat mengubah parameter aliran (seperti bahasa yang ditetapkan, apakah trek "aktif" secara default, dan apakah pengguna dapat memilih untuk menonaktifkan aliran ini bersama-sama jika diinginkan.

Anda dapat memberikan judul untuk streaming. Saya sarankan jika Anda memiliki video multi-audio yang Anda gunakan bersama-sama dengan bahasa. Misalnya, Anda dapat memiliki "asli" atau "pangkat satu suara" atau "komentar direktur" untuk nama trek. Banyak pemain akan menunjukkan ini kepada Anda ketika Anda memilih aliran untuk dimainkan, dan itu sangat berguna. Namun, cobalah untuk tidak mengulangi informasi di sana. Tidak ada alasan untuk menulis "Bahasa Inggris" ketika Anda hanya dapat mengatur kode bahasa trek.

Ada juga beberapa opsi spesifik, yang akan bergantung pada aliran mana yang sedang Anda kerjakan.

mkvmerge gui 2

Terkadang Anda mungkin ingin menambahkan beberapa lampiran ke file Anda. Jika Anda menambahkan gambar, banyak manajer file akan menampilkan gambar ini sebagai ikon untuk file video final. Jika Anda muxing semacam film, dan Anda memiliki penutup untuk itu, mungkin itu adalah pilihan yang baik untuk meletakkannya sebagai lampiran.

mkvmerge gui 3

Akhirnya di tab Global Anda dapat mengatur metadata untuk seluruh file. Hal yang paling umum adalah mengatur judul. Ini akan diawali dengan data yang diambil dari file pertama yang telah Anda tambahkan ke "File input".

Anda juga dapat menambahkan informasi bab. Mkvmerge dapat membaca file bab ogm dan juga bab xml. Ini juga memungkinkan Anda untuk mengedit file bab, tetapi perlu diingat bahwa tab ini berfungsi sebagai aplikasi terpisah, sehingga Anda tidak akan mengedit bab yang ditambahkan ke file output Anda, Anda harus menyimpannya di tab itu, dan kemudian tambahkan mereka sebagai input ke file yang sekarang Anda muxing.

Fitur menarik dari mkvmerge gui adalah "Salin ke clipboard" yang menyalin perintah terminal persis yang aplikasi berencana untuk jalankan. Jika Anda ingin mux banyak file Anda dapat mengatur satu, seperti yang Anda suka, kemudian salin perintah ke clipboard dan buat skrip bash yang melakukan semua file yang Anda inginkan sekaligus.

v010dya
sumber
Bagaimana Anda memulainya?
uvasal
1
mmg adalah jawabannya
uvasal
2

Avidemux adalah editor video gratis yang dirancang untuk tugas pemotongan, pemfilteran, dan pengodean sederhana. Ini mendukung banyak jenis file, termasuk AVI, file MPEG yang kompatibel DVD, MP4 dan ASF, menggunakan berbagai codec. Tugas dapat diotomatisasi menggunakan proyek, antrian pekerjaan dan kemampuan skrip yang kuat .videmux tersedia untuk Ubuntu.

sudo apt-get update
sudo apt-get install avidemux
Kyodake
sumber
0

Saya menggunakan dua perintah berikut untuk mengonversi file AVI saya ke file MP4 yang akan streaming dengan benar dari WD My Cloud Mirror saya:

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

ffmpegmengonversi file AVI ke MP4, mengubah profil video dan format piksel agar sesuai dengan nilai yang diterima secara luas. MP4Boxmengemas ulang aliran ke MP4 final dan menambahkan metadata standar.

Patrick Ring
sumber
-strict -2tidak diperlukan untuk menyandikan audio AAC kecuali Anda ffmpegsudah sangat tua. Anda mungkin dapat melewati MP4Boxjika Anda menambahkan -movflags +faststartopsi output di ffmpeg.
Logan