Apa yang dilakukan opsi AVOptionVideo cpu yang digunakan oleh ffserver?

3

Saya tidak dapat menemukan ini di mana pun, tetapi sebagian besar file konfigurasi ffserver yang saya lihat sudah termasuk - apa fungsinya:

AVOptionVideo cpu-used 0
CoryG
sumber

Jawaban:

6

Ini merupakan pilihan bagi para libvpxencoder (Google WebM encoder). Ini adalah opsi khusus codec dan tidak digunakan dalam enkode lain sejauh yang saya tahu.

-cpu-used 0 sepertinya default yang bagus, jadi mungkin itu sebabnya orang memasukkannya dalam konfigurasi mereka.

-cpu-usedhanya dapat digunakan saat -qualityopsi disetel. Karena itu Anda dapat menggunakannya dengan -quality goodatau -quality rt. Untuk daftar opsi, jalankan ffmpeg -h fulldan lihat libvpxbagian.

Berikut cara mengatur nilai.

Dengan -quality good:

The -cpu-usednilai berkisar dari 0 sampai 5. ini menetapkan perilaku encoder sehubungan dengan kecepatan.

Dari dokumen VP8 :

Pengaturan --cpu-used=1atau --cpu-used=2akan memberikan dorongan signifikan lebih lanjut untuk menyandikan kecepatan, tetapi akan mulai memiliki dampak yang lebih nyata pada kualitas dan juga dapat mulai mempengaruhi keakuratan kontrol kecepatan data.

Menetapkan nilai 4 atau 5 akan mematikan "optimisasi tingkat distorsi" yang memiliki dampak besar pada kualitas, tetapi juga sangat mempercepat encoder.

Menonaktifkan pengoptimalan tingkat distorsi akan benar-benar berdampak pada kualitas, jadi Anda tidak boleh mengatur ini kecuali benar-benar diperlukan.

Dengan -quality rt:

Dalam mode ini, pengorbanan CPU / kualitas dipilih oleh pembuat enkode. Penggunaan CPU dihitung sebagai:

utilisasi cpu target = (100 * (digunakan 16-cpu) / 16)%

Anda dapat mengatur -cpu-useddari 0-15 di sini.

slhck
sumber