Encode dengan ffmpeg menggunakan avi ke mp4

27

Apa baris perintah yang digunakan untuk mengkonversi dari avi ke mp4, tetapi tanpa merusak frameize dan membuat file kecil sebagai ukuran asli atau sedikit lebih besar, dan hal yang sama dengan mp4 ke avi? Setiap kali saya mencoba mengubahnya menjadi seperti 2 gb

lembah
sumber

Jawaban:

33

Bergantung pada bagaimana file asli Anda dikodekan, ukuran file mungkin tidak dapat dipertahankan.

ffmpeg -i infile.avi youroutput.mp4

harus menjaga ukuran dan tingkat bingkai tetap utuh saat membuat file mp4.

ffmpeg -i infile.avi

akan memberi Anda informasi tentang file input Anda - ukuran bingkai, codec yang digunakan, bitrate, dll.

Anda juga dapat bermain dengan opsi acodecdan vcodecsaat Anda menghasilkan output. Ingat juga bahwa file mp4 dan avi dapat menggunakan berbagai codec dan jarak tempuh Anda dapat bervariasi sesuai dengan codec yang Anda pilih.

kasar
sumber
6
Saya pikir lebih baik menggunakan ffprobe -i infile.avidaripada ffmpeg -i infile.avimendapatkan informasi, karena yang terakhir menghasilkan kesalahan "Setidaknya satu file output harus ditentukan".
Francesco Turco
Terima kasih, Francesco. Pendekatan Anda lebih elegan daripada saya ;-)
rbanffy
6

Saya sangat tertarik mengonversi file avi ke mp4. Membaca posting Anda, saya ingat perintah ffmpeg ini:

ffmpeg -i input.avi -strict -2 output.mp4

Perintah -strict -2ini diperlukan oleh codec AAC yang eksperimental, tetapi berfungsi (libaac), jika Anda menambahkan dua parameter tersebut. File output berkualitas tinggi secara default.

Robis54
sumber
2

Sejauh yang saya mengerti itu diperlukan untuk mengganti avi-wadah dengan mp4 satu (secara resmi - ISO format file media dasar ISO / IEC 14496-12).

jika Anda menjalankan perintah berikut:

ffmpeg -i input.avi -y output.mp4

Dalam kasus seperti itu, ffmpeg mengkodekan ulang aliran elementer di dalam input.avi (wadah cahnge dan mengkode ulang adalah mode default dari ffmpeg ). Perlu diperhatikan bahwa pengodean ulang dapat menurunkan kualitas visual dan / atau pendengaran.

Oleh karena itu, disarankan untuk menonaktifkan pengodean ulang dengan opsi codec " c: v copy c: a copy ":

ffmpeg -i input.avi -c:v copy -c:a copy -y output.mp4

Dalam kasus di atas ffmpeg hanya mengubah shell

Shevach Riabtsev
sumber
0

Saya telah menemukan ini :: Libav di Linux.

Instalasi: jalankan perintah

sudo apt-get install libav-tools

Perintah konversi video:

Buka folder yang berisi video dan jalankan di terminal

avconv -i oldvideo.mp4 -ar 22050 convertedvideo.webm
Vishal
sumber