Jika Anda lebih suka baris perintah, Anda dapat menggunakan ffmpeg
(atau handbrake-cli
).
MP4
Dengan asumsi Anda menggunakan versi terbaru dari ffmpeg
:
ffmpeg -i input -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k \
-movflags +faststart -vf scale=-2:720,format=yuv420p output.mp4
-crf
: Kualitas. Rentang adalah logaritmik 0 (lossless) hingga 51 (kualitas terburuk). Standarnya adalah 23. Kisaran waras subjektif adalah ~ 18-28 atau lebih. Gunakan nilai tertinggi yang masih memberi Anda kualitas yang dapat diterima. Jika Anda menyandikan ulang input besar yang tidak praktis untuk diunggah ke YouTube atau sejenisnya maka cobalah nilai 17 atau 18 karena layanan video ini akan menyandikan ulang pula.
-preset
: Kecepatan encoding. Prasetel yang lebih lambat memberikan kompresi yang lebih baik (kualitas per ukuran file) tetapi lebih lambat. Gunakan yang paling lambat yang Anda sabar untuk: ultrafast, superfast, veryfast, lebih cepat, cepat, sedang (default), lambat, lebih lambat, sangat lambat.
-movflags +faststart
: Mengizinkan video diputar sebelum benar-benar diunduh dalam kasus menonton unduhan progresif. Berguna jika Anda meng-hosting video, jika tidak berlebihan mengunggah ke layanan video seperti YouTube.
-vf scale=-2:720,format=yuv420p
: Sebuah filtergraph menggunakan skala dan format filter video. Skala tinggi hingga 720 piksel, dan secara otomatis pilih lebar yang akan mempertahankan aspek, dan kemudian pastikan format piksel kompatibel dengan pemain bodoh.
-b:a 128k
: Audio bitrate. Jika Anda ffmpeg
sudah usang maka Anda harus menambahkan -strict experimental
untuk menggunakan -c:a aac
.
MOV
Karena file MOV dan MP4 Anda mungkin berisi format video dan audio yang sama, Anda dapat menyandikan MP4 dan membuat MOV dengan muxing kembali (dengan mode stream stream ) alih-alih menyandikan ulang:
ffmpeg -i input.mp4 -codec copy output.mov
WMV
FFmpeg hanya mendukung WMV 7 dan 8. Saya tidak mengetahui encoder open source untuk versi 9.
$ ffmpeg -encoders | grep -i windows
[...]
V..... = Video
A..... = Audio
------
V..... wmv1 Windows Media Video 7
V..... wmv2 Windows Media Video 8
A..... wmav1 Windows Media Audio 1
A..... wmav2 Windows Media Audio 2
Karena saya tidak terbiasa dengan pembuat enkode ini, saya hanya bisa memberikan contoh yang belum diuji:
ffmpeg -i input -c:v wmv2 -b:v 1024k -c:a wmav2 -b:a 192k output.wmv
Mendapatkan ffmpeg
Anda dapat mengunduh build Linux dari ffmpeg atau mengikuti panduan kompilasi ffmpeg langkah demi langkah untuk menyesuaikan build Anda.
Menggunakan bash "for loop" untuk melakukan enkode batch
Untuk menyandikan semua video dalam direktori:
$ mkdir encoded
$ for f in *.avi; do ffmpeg -i "$f" -c:v libx264 -crf 23 -preset medium \
-c:a aac -b:a 128k -movflags +faststart -vf scale=-2:720,format=yuv420p \
"encoded/${f%.avi}.mp4"; done
Lihat juga