Apa daftar perintah yang harus saya lakukan di ffmpeg / mencoder / some_other_CLI_app untuk mendapatkan video dalam semua format yang tepat untuk menggunakan Video untuk Semua Orang ?
yaitu Apakah ada kehalusan yang mencegah ada tutorial mekanik yang mengatakan
VIDEO=video.mp4
TYPE=$(ffmpeg --find-information-about-the-video ... )
ffmpeg ... > video.mov
ffmpeg ... > video.flv
ffmpeg ... > video.webm
ffmpeg ... > video.h.264
...
Lalu salin dan tempel kode Video untuk Semua Orang ke halaman Anda?
Tujuan saya adalah memiliki video tertanam di laman web pribadi saya yang dihosting oleh saya. HTML5 dengan flashbackback lebih disukai, jadi cara paling sederhana tampaknya adalah Video untuk Semua Orang. Tetapi halaman itu meninggalkan bagian yang paling rumit, menyandikan video ke dalam semua format yang berbeda, untuk dibaca pembaca dengan membaca artikel yang panjang dan lengkap tentang format video . Tentunya ini tidak perlu. Saya bisa memberikan daftar perintah bagi pengguna untuk secara buta mengkonversi file audio ke banyak format yang berbeda. Semoga seorang guru ffmpeg dapat melakukan hal yang sama untuk video.
.mov
untuk video HTML5, dan tidak adah.264
ekstensi juga. Ada adalah.264
, yang merupakan baku bytestream Annex B untuk unit NAL. Pengkodean video bukanlah ilmu roket, tetapi Anda perlu menginvestasikan sedikit waktu untuk mengenal konsepnya.Jawaban:
Catatan: Jawaban ini sangat diedit sejak posting aslinya. Sekarang tahun 2017; streaming berfungsi berbeda dari biasanya. Panduan ini mengasumsikan pengunduhan progresif sederhana dari satu aliran video pada satu resolusi yang diberikan - tidak ada streaming adaptif.
Persyaratan
Pertama, pastikan untuk mengunduh
ffmpeg
versi terbaru (unduh versi statis; jangan panggilapt-get install ffmpeg
atau sejenisnya). Idealnya, kompilasi sendiri . Tidak butuh waktu lama.Untuk menghasilkan video yang didukung oleh sebagian besar browser, selalu periksa tabel kompatibilitas terbaru . Tidak ada satu codec / format yang berfungsi di setiap browser, tetapi jika Anda menghasilkan H.264 di MP4 dan VP9 di WebM, dengan masing-masing codec audio, Anda akan memiliki dukungan untuk Chrome, Firefox, Safari, dan beberapa versi IE.
WebM (VP9 / Vorbis)
Ikuti rekomendasi dalam panduan FFmpeg VP9 dan gunakan pendekatan pengkodean dua jalur dengan batasan laju:
Bitrate target tergantung pada resolusi Anda, frame rate, jenis konten, dan kualitas apa yang Anda inginkan. 2,5 MBit / s harus menjadi kompromi yang baik untuk video HD pada 30 fps. Lihat panduan Google ini untuk beberapa rekomendasi.
MP4 (H.264 / AAC)
Ikuti rekomendasi dalam panduan FFmpeg H.264 dan gunakan pendekatan pengkodean dua-pass dengan batasan laju:
Di sini, bitrate target harus sekitar 50% lebih tinggi daripada untuk video VP9, karena H.264 tidak begitu efisien. Tambahkan
-movflags faststart
opsi ke pass kedua untuk membuat pemuatan awal video lebih cepat.Untuk mengatur opsi audio, lihat panduan pengkodean AAC .
sumber