Apakah mungkin menjalankan pekerjaan pada banyak prosesor atau utas untuk mempercepat avconv?
Apakah ada fitur yang sedang berjalan, jika tidak saya bertanya-tanya mengapa?
Apakah mungkin menjalankan pekerjaan pada banyak prosesor atau utas untuk mempercepat avconv?
Apakah ada fitur yang sedang berjalan, jika tidak saya bertanya-tanya mengapa?
Jawaban:
Anda mencari opsi -threads dari avconv. Pengaturan teraman adalah:
-threads auto
tetapi Anda juga dapat mengatur bilangan bulat di sana jika Anda ingin bereksperimen sedikit. FFmpeg modern (sekarang standar di Ubuntu) menetapkan ini secara auto
default seperti yang terlihat di bagian halaman man 'ffmpeg-all':
threads integer (decoding/encoding,video)
Set the number of threads to be used, in case the selected
codec implementation supports multi-threading.
Possible values:
auto, 0
automatically select the number of threads to set
Default value is auto.
Perhatikan 2 poin penting:
Jika Anda melakukan transcoding audio dari banyak file, lihat menggunakan GNU Parallel. Ini akan mengambil daftar file sebagai input dan memprosesnya secara paralel berdasarkan jumlah core di sistem Anda. Sebagai contoh, berikut adalah contoh bash yang akan mengubah musik menjadi format audio opus secara paralel menggunakan ffmpeg.
find ./* -depth -type f -name \*.ogg -o -name \*.flac -o -name \*.m4a -o -name \*.mp3 -o -name \*.ogg | parallel -j+0 --gnu nice -n 19 ffmpeg -i "{}" -acodec libopus "{.}.opus" -loglevel quiet