Oct 13, 2023
Обеспечьте невероятно быстрый экспорт в Davinci Resolve с помощью двойных кодировщиков Nvidia RTX 4000 от Ника Лира.
Экспортируйте до 6 раз быстрее, изменив одну настройку! Недавно сделав
Экспортируйте до 6 раз быстрее, изменив одну настройку!
Недавно проведя тщательную серию тестов моей новой видеокарты Nvidia RTX 4080 в ряде NLE и интенсивных графических приложений, я хотел углубиться в новый кодировщик Nvidia 8-го поколения (NVENC), входящий в состав серии 4000, который ускоряет кодирование AV1, H.265 (HVEC) и H.264 (AVC). Я хотел узнать, как максимально эффективно использовать аппаратное обеспечение, особенно двойные кодеры — на этот раз Nvidia включила два чипа кодировщика.
Часто говорят: «Хорошо, быстро, дешево – выбери два», и это очень хорошо подходит для постобработки. Кодирование имеет аналогичную взаимосвязь между качеством, скоростью и размером файла.
Например, если вы исправите размер файла, зафиксировав битрейт, как это обычно бывает, вы можете получить более высокое качество, если кодирование займет больше времени. Если вы исправите качество (скажем, с помощью ползунка постоянного качества в Handbrake), вы можете немного уменьшить размер файла, заняв больше времени на кодирование. Это можно сделать, выбрав другую предустановку — например, показанную здесь для кодировщика x264 в Handbrake.
Предустановка определяется следующим образом:
Предустановка — это набор параметров, которые обеспечивают определенную скорость кодирования и степень сжатия. Более медленная предустановка обеспечит лучшее сжатие (сжатие — это качество на размер файла). Это означает, что, например, если вы ориентируетесь на определенный размер файла или постоянную скорость передачи данных, вы добьетесь лучшего качества с более медленной предустановкой. Аналогично, для кодирования постоянного качества вы просто сэкономите битрейт, выбрав более медленный пресет (источник).
Однако настоящий вопрос заключается в том, стоит ли вам тратить это дополнительное время. Некоторые люди просто выбирают самый медленный пресет, зная, что им нужно самое высокое качество, и они готовы его дождаться. Лично мне всегда хотелось бы знать, стоит ли делать что-то медленнее — что, если вы будете каждый день ждать дополнительных 10 минут для улучшения на 0,01%, которого никто никогда не увидит? Что ж, оказывается, именно так — не только для программных кодировщиков вроде x264, но и для новой серии RTX 4000, о которой я расскажу позже.
Некоторое время назад я наткнулся на замечательное исследование Яна Озера под названием «Выбор пресета x264», которое ясно показывает, что вы почти ничего не получаете, используя что-то более медленное, чем «более быстрый» пресет с точки зрения качества, но это стоит вам немало времени. если да.
Аппаратный кодер Nvidia (NVENC) также имеет предустановки — официально называемые P1 (самый быстрый) — P7 (самый медленный), которые, по словам Nvidia, «определяют, например, структуру GOP, B-кадры, упреждающее кодирование и т. д.» — то, что делает большинство из нас. нет времени разбираться, но дело то же самое – потратить чуть больше времени, чтобы получить чуть более качественный или меньший файл.
И оказывается, что время экспорта в этих пресетах сильно различается. Я провел несколько тестов на RTX 4080, экспортировав 5-минутный клип DNxHR UHD со скоростью 25 кадров в секунду во все три варианта вывода (H.264, H.265 и AV1) во всех 7 предустановках. Для H.265 и AV1:самый быстрый пресет был примерно в 6 раз быстрее, чем самый медленный, от 50 FPS до 300 FPS. Чтобы поместить это в некоторый контекст,если у вас есть 30-минутный график, настройка «Очень медленно» займет более 15 минут, а настройка «Очень быстро» — 2,5 минуты. Такое время складывается, если вы делаете это каждый день. Чтобы получить такую скорость экспорта, входной кодек должен быть ProRes или DNxHR (или эквивалентный мезонинный кодек) с уже кэшированными/отрисованными эффектами — в противном случае кодер не будет работать достаточно быстро.
Есть также причина, по которой скорость кодирования резко возрастает для двух самых быстрых пресетов – именно здесь в игру вступают двойные кодеры. Судя по всему, при определенных условиях новые карты могут разделить видео на две половины и передать каждую половину каждому кодировщику, а затем снова объединить их. Чтобы использовать двойные кодеры в новой серии RTX 4000, необходимо, чтобы выполнялось следующее:
Мне также удалось добиться этого только в Davinci Resolve (например, не в Premiere Pro или Shutter Encoder). Интересно, что кодирование H.265 теперь в целом быстрее, чем H.264 – я думаю, что пришло время начать его использовать, если вы еще этого не сделали.