Кодирование с потерями - это в основном сжатие, достигаемое с помощью различных алгоритмов. Давайте рассмотрим крайние случаи, и оттуда мы выведем ответ на ваш вопрос.
Представьте, что ваше входное видео должно быть закодировано с наилучшим качеством. Что именно это значит? Ну, мы просто берем каждый пиксель как есть и храним его так. Сколько времени нам нужно для этого? Почти ничего. Это было бы самым быстрым.
Затем вы можете пойти дальше и попытаться минимизировать различия между кадрами, только кодируя их относительные различия. Вы прогнозируете кадр B из кадра A, а затем сохраняете остаток после вычитания прогноза из B. Это оставляет вас с тем же качеством, но увеличивает время обработки. Это также дает вам гораздо меньший файл.
Что если вы хотите еще больше уменьшить размер файла? Теперь именно здесь начинают действовать различные алгоритмы квантования и оптимизации. Вы можете рассчитать количество пространственных и временных деталей в области кадров, а затем динамически отрегулировать относительное качество этой части видео, чтобы оно воспринималось с определенным уровнем качества. Это режим CRF в x264. В этом случае, если вам нужно высокое качество, кодировщик ничего не сделает - он не должен так много "выбрасывать", просто говоря.
По сути, когда вы говорите кодировщику, что он не должен так усердно работать над оптимизацией качества, это будет быстрее.
Но, может быть, мы должны просто сделать небольшой тест. Я взял 30-секундный образец фильма и закодировал его с помощью x264, используя различные настройки CRF на сервере. Вот необходимое время:
То же самое для битрейтов: