Encoding lossy pada dasarnya adalah kompresi, dicapai melalui berbagai algoritma. Mari kita pertimbangkan kasus tepi, dan dari sana, kami memotong jawaban untuk pertanyaan Anda.
Bayangkan video input Anda harus dikodekan dengan kualitas terbaik. Apa artinya itu, tepatnya? Yah, kami hanya mengambil setiap piksel apa adanya, dan menyimpannya seperti itu. Berapa banyak waktu yang perlu kita lakukan itu? Hampir tidak ada. Itu akan menjadi yang tercepat.
Anda kemudian dapat melanjutkan dan mencoba untuk meminimalkan perbedaan antara frame dengan hanya mengkode perbedaan relatif mereka. Anda memprediksi bingkai B dari bingkai SEBUAH dan kemudian menyimpan residu setelah mengurangi prediksi B . Itu membuat Anda dengan kualitas yang sama, tetapi meningkatkan waktu pemrosesan. Ini juga memberi Anda file yang jauh lebih kecil.
Bagaimana jika Anda ingin mengurangi ukuran file lebih lanjut? Sekarang di sinilah algoritma kuantisasi dan optimisasi yang berbeda masuk. Anda dapat menghitung jumlah detail spasial dan temporal di wilayah bingkai dan kemudian secara dinamis menyesuaikan kualitas relatif bagian itu dalam video sehingga dirasakan dengan tingkat kualitas tertentu . Ini adalah Mode CRF dalam x264 . Dalam hal ini, jika Anda ingin kualitas tinggi, tidak banyak yang bisa dilakukan oleh pembuat enkode — tidak perlu "membuang begitu banyak", cukup berbicara.
Pada dasarnya, ketika Anda memberi tahu pembuat kode bahwa itu tidak harus bekerja keras dalam mengoptimalkan kualitas, itu akan lebih cepat.
Tapi mungkin kita harus melakukan tes kecil saja. Saya mengambil sampel film 30 detik dan mengkodekannya dengan x264, menggunakan berbagai pengaturan CRF di server. Inilah waktu yang dibutuhkan:
Sama untuk bitrate: