Có thể chạy các công việc trên nhiều bộ xử lý hoặc luồng để tăng tốc avconv?
Có một tính năng trong tiến trình, nếu không tôi tự hỏi tại sao?
Có thể chạy các công việc trên nhiều bộ xử lý hoặc luồng để tăng tốc avconv?
Có một tính năng trong tiến trình, nếu không tôi tự hỏi tại sao?
Câu trả lời:
Bạn đang sau -threads tùy chọn avconv. Cài đặt an toàn nhất sẽ là:
-threads auto
nhưng bạn cũng có thể đặt một số nguyên ở đó nếu bạn muốn thử nghiệm một chút. Một FFmpeg hiện đại (hiện là tiêu chuẩn trong Ubuntu) đặt auto
mặc định này như được thấy trong phần này của trang 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.
Lưu ý 2 điểm quan trọng:
Nếu bạn đang thực hiện chuyển mã âm thanh cho nhiều tệp, hãy xem xét sử dụng GNU Parallel. Nó sẽ lấy một danh sách các tệp làm đầu vào và xử lý chúng song song dựa trên số lượng lõi trong hệ thống của bạn. Ví dụ, đây là một ví dụ bash sẽ chuyển đổi âm nhạc thành định dạng âm thanh opus song song bằng cách sử dụng 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