Выбранный кодек не поддерживает текущие настройки рендеринга

Обновлено: 07.07.2024

Доброго времени суток пользователям любителям программного обеспечения фирмы Adobe.

Как то недавно обещал вам запилить пост о том, как сохранить видео в after effects, момент настал как говорится :). Если вы думаете, что это вам не нужно, потому что умеете обращаться с кнопками «Файл-Сохранить как», то ошибаетесь.

Вывод ролика в хорошем качестве и необходимом формате немного сложнее, чем обычное сохранение. Итак, я буду отталкиваться от того, что все необходимые манипуляции с вашим видео материалом вы уже сделали и вам лишь осталось вывести готовый файл.

Да, кстати у меня стоит русская версия программы, если у вас английская, то адаптируйте названия настроек и параметров.

Внимание! Данный пост не призван сделать из вас крутого монтажёра, я и сам им не являюсь. В данной статье я лишь покажу основные базисные кнопки — куда нужно тыкать чтоб вывести проект в видео файл. Остальные тонкости вам придётся освоить в результате своего опыта.

Понятно? Ну тогда начнём.

Делаем AVI файл

Формат AVI является одним из самых популярных, потому что воспроизводится на любом плеере, позволяет добавлять субтитры, несколько звуковых и видео дорожек.

Вдобавок чтобы сжать такой фильм, не нужно использовать кодеки. Итак:

  • На рабочем поле выберите любой файл и зажмите Ctrl+A, чтобы выделить все элементы, которые должны быть включены в запись.


  • Перейдите в главное меню Файл – Экспорт – Добавить в очередь рендеринга (в анг версии Add to Render Queue).


В нижней части программы у вас появится вкладка с текущим модулем, где вы сможете задать все параметры итогового варианта.

Начните с «Вывод в», нажмите «Ещё не указано» (в анг Output To), тут требуется определить папку для хранения на компьютере. Выбрали.

Едем дальше

Чтобы видео сохранилось в формате avi, необходимо выбрать его в соответствующем поле. Нажмите на надпись «Без потерь» рядом с опцией Модуль вывода, откроется меню со всеми настройками:


Это основное меню настроек after effects . Выбираем формат, как я уже говорил мне нужно в AVI, поле «Вывод видео» я обычно не трогаю, оставляю умолчанию, сверьте с изображением выше.

Далее поле «Изменить размер» — здесь можно параметр «Настраиваемый» и поиграться с размерами выводимого видео, но я обычно оставляю стандарт 16:9 или 4:3 (в зависимости от нужной пропорции). Если вы хотите, то можно выбрать другое разрешение, к примеру 720 30 кадров (29,97), либо 720 25 кадров. В основном, все пользуются этими разрешениями: 1080 или 720.


Поле «Обрезать» я не трогаю.

Аудио настройки я обычно ставлю вот такие:


Но вы можете уменьшить для уменьшения общего размера. К примеру поставить 16 бит, 32 кГц. Тут не суть важно.

  • Теперь жмем «Рендеринг» (в нижнем поле, в правом углу) и ждем, пока after effects закончит работу.


У «АВИшных» файлов есть один минус — они много весят. Но за это вы получаете высокое разрешение с повышенной частотой кадров и приятное глазу изображение. Вы же можете выбрать другой формат. Ави я только показал для примера.

Иногда в процессе могут возникнуть ошибки. Ну типа рендеринг не удался и бла бла бла и всё такое. Часто у меня такое бывало из недостатка памяти. Крч перед рендерингом позакрывайте всё что только можно.

Вот поэтому я не люблю программы Адоби, потому что они сильно тяжёлые. Пользуюсь очень редко, в крайней необходимости. А в основном предпочитаю что-нибудь полегче, менее ресурсоёмкое.

Как сохранить видео в after effects в виде MOV файла?

Данный формат изначально был разработан компанией Apple, поэтому не все базовые версии Windows его читают. Но у него есть неоспоримое преимущество — меньший размер, чем у АВИ, при сохранении нормального качества.

Чтобы он воспроизводился, необходимо скачать кодеки «Quick time».

Повторяем все шаги из предыдущей инструкции до выбора формата. Вместо AVI указываем пункт с названием скачанных ранее кодеков (хотя в некоторых новых версиях Аффтер Эффектс есть уже эти кодеки в комплекте).


Нам нужно сохранить MP4 файл

Теперь о грустном. В новых версиях after effects почему то выпилили возможность выводить MP4 формат, не знаю с чем это связано. Ну как выпилили, частично скажем так. Вообще это проблема конечно. Чтобы это сделать нужно ещё установить себе программу Adobe media encoder. И путём конвертации можно получить мп4 файл.

Описывать данную процедуру не буду, так как это тема отдельного разговора, напишу в скорем времени об этом отдельный пост. Извините если я вас огорчил этим, ну вдруг вы искали решение этой проблемы в моей статье.

А пока едем дальше.

О выводе с альфа-каналом

Более опытным редакторам будет интересно узнать об экспорте видео с прозрачным фоном. Как это сделать?

  • Снова повторяем все, что описано в предыдущих способах. Но когда дело дойдет до выбора видеокодека, указываем None (Без) или "Эпизод PNG". А качество ставим максимальное.

В графе каналов выставляем RGB + Alpha, а цвет — "Миллионы цветов" (анг. Premultiplied)

  • Подтверждаем свои действия кнопкой «ОК».
  • Начинаем рендер по той же схеме.

В принципе, тему о том, как сохранить видео в after effects я думаю освятил более-менее понятно.

До новых встреч друзья, заходите ещё, буду рад ;).

Всем привет! Продолжаем тему работы в After Effects. И сегодня речь пойдет о настройке рендера в After Effects.

Те, кто когда-нибудь сталкивался с обработкой любого видео, знают, что заключительным этапом является рендер видео. И, конечно же, существует рендер в After Effects.

Основные настройки

Правильные настройки рендера позволяют корректно записать видео, настроить качество картинки, выбрать необходимое разрешение, формат и т.д.

Итак, рендер в After Effects – необходимые настройки.

В программе After Effects процесс рендрирования отображается во вкладке Render Queue .


Для того, чтобы вызвать настройки рендера, в верхнем меню нужно выбрать вкладку Composition – Add to Render Queue (или нажать сочетание клавиш Ctrl+M).

В открывшемся поле (внизу) необходимо сделать следующие настройки:


  • Quality – Best (всегда)
  • Resolution – Full (полная, размер 1920х1080) – идеальное качество ИЛИ Third (треть, размер 640х360) – плохое качество (используется в том случае, если вам нужно посмотреть видео как «черновик»)


  • Format – QuickTime. Для того, чтобы данный формат присутствовал на вашем компьютере, предварительно вам нужно скачать и установить соответствующий кодек с официального сайта бесплатно


  • Format Options – Video Codec – H.264 (H.264 существенно снижает объем видео)


Output To: эта настройка позволяет выбрать папку на компьютере для сохранения готового видеоролика.


Вот такие несложные настройки рендера в After Effects существуют. Но для более легкой работы возможно создание шаблонов настроек. Шаблон можно настроить для функции Render Settings, указав качество обрабатываемого видеоролика и для Output Module. На его примере и давайте разберем как создать шаблон для рендера.

Рядом с полем Output Module (справа) нужно нажать на «треугольник вниз».


В выпадающем меню выбрать вкладку Make Template (создать шаблон).

В поле Settings Name ввести название шаблона (чтобы было легче ориентироваться) и кнопка New.

Далее ставим те настройки, о которых уже говорилось выше: Format – QuickTime, Format Options – H.264, Quality – 100. Кнопка – Ок. Наш шаблон готов. Теперь нет необходимости в меню Settings Name настраивать все необходимые поля, а просто щелкнув по треугольничку и выбрав готовый шаблон, все настройки встанут самостоятельно.

Для того, чтобы процесс рендера начался, не забудьте справа нажать кнопку Render.


Тема Рендер в After Effects достаточно сложная в том плане, что если не разбираться в функциях рендера, очень сложно самостоятельно сделать правильные настройки. Я думаю, что моя статья вам в этом поможет.

Кстати, в Яндекс Вордстат я встретила запрос Как ускорить рендер в After Effects? Есть один простой способ – нужно нажать клавишу Caps lock. К сожалению, вы не будете видеть как двигается картинка, но процесс рендрирования пойдет несколько быстрее. После окончания рендера не забудьте отжать данную клавишу.

Расскажу самые базовые вещи о рендере в Adobe After Effects. Будет как небольшая подсказка для новичков.

Рендерить можно двумя способами. Через Render Queue внутри After Effects и через стороннюю программу Adobe Media Encoder.

Для слабых компьютеров или тяжёлых проектов советую Render Queue. А для всего остального — Media Encoder.

Две заметки перед началом
1) Если АЕ 2017 года или ниже — скачайте кодеки Quicktime. На macOS не нужно.
2) Если рендерите через Media Encoder проверьте, чтобы он был того же года, что и After Effects.

Рендерим видео с оптимальным соотношением веса и качества через Media Encoder

Сейчас самый распространённый стандарт сжатия видео — H.264. Мало весит, не убивает качество и везде поддерживается.

— Открываем композицию, которую хотим отрендерить.
— Заходим в Composition → Add to Adobe Media Encoder Queue. Немного ждём, открывается Media Encoder.
— Нажимаем на стрелочку в Format и выбираем H.264.


— В Preset выбираем Match Source High Bitrate.


— Output File выбираем куда сохранить. Нажимаем Enter или на зелёный треугольничек справа. Рендер пошёл.

В итоге, минутное видео больше не будет весит несколько гигабайт, а останется где-то в пределах сотни мегабайт.

Рендерим видео с оптимальным соотношением веса и качества через Render Queue

— Открываем композицию, которую хотим отрендерить.
— Заходим в Composition → Add to Render Queue.
— Нажимаем на синий текст рядом с Output Module.


— В Format выбираем Quicktime.


— Нажимаем Format Options.
— В Video Codec выбираем H.264.
Если АЕ 2018 или старше, то H.264 в списке не будет. Выбирайте Animation.
Файл получится тяжеловатый, но легче, чем совсем без сжатия. Поэтому для последних версий АЕ лучше использовать Media Encoder с H.264.


— Кликаем ОК в двух окошках.
— Справа от Output To нажимаем на синий текст и выбираем куда сохранить.


— Нажимаем Enter или кнопку «Render» справа.
Готово! Рендер начался.

Рендерим видео на альфа-канале через Media Encoder

А сейчас рассмотрим как отрендерить анимацию с прозрачным фоном. Это уже чуть-чуть посложнее.

— Открываем нужную композицию.
— Composition → Add To Adobe Media Encoder Queue
— В Format выбираем Quicktime


— В Preset ничего не выбираем, просто нажимаем на синий текст


— Теперь выбираем Video Codec в зависимости от версии AE:
AE 2017 и ниже — PNG.


АЕ 2018 — Animation.


AE 2019 или любая версия на macOS — ProRes 4444.


— Нажимаем кнопку Match Source.
— Проматываем чуть-чуть вниз, в Depth выбираем параметр у которого написано +alpha или 32 bit.


— Нажимаем ОК, в Output выбираем место куда сохранится файл и запускаем рендер.

Всё, теперь ролик отрендерится с прозрачностью, будет потяжелее. Зато на фон можно подставить всё, что угодно.

Рендерим видео на альфа-канале через Render Queue

— Открываем нужную композицию.
— Composition → Add To Adobe Media Encoder Queue
— Кликаем на синий текст рядом с Output Module.


— В Format выбираем Quicktime.


— Нажимаем «Format Options».

— Теперь выбираем Video Codec в зависимости от версии AE:
AE 2017 и ниже — PNG.


АЕ 2018 — Animation.


AE 2019 или любая версия на macOS — ProRes 4444.


— Нажимаем ОК.
— В Channels выбираем RGB+Alpha.


— Нажимаем ОК.
— В Output To выбираем куда сохранить файл.


— Нажимаем Enter или кнопку «Render».
Есть!

Создаём шаблоны для рендера в Media Encoder

Как в Media Encoder, так и в Render Queue можно создавать шаблоны на все случаи жизни: для H.264, альфа-канала, MP3, PNG-секвенций. Один раз настраиваете рендер, сохраняете в темплейт и в нужный момент переключаетесь между ними.

— Чтобы сохранить шаблон достаточно настроить рендер под себя и нажать на эту кнопку


— После этого, созданный темплейт будет доступен в выборе пресетов


Создаём шаблоны для рендера в Render Queue

— Настраиваем рендер, нажимаем справа от Output Module на стрелочку и выбираем Make Template


— Задаём имя шаблону — готово, можно рендерить


— Чтобы сделать шаблон рендером по умолчанию просто выбираем его в Movie Default


Рендерим один кадр из видео

Сохранить текущий кадр можно двумя способами. Одной кнопкой в плагине FX Console.


— Создаём любую композицию
— Нажимаем Composition → Add To Render Queue
— Справа от Output Module нажимаем на маленькую стрелочку и выбираем Make Template


— В появившемся меню нажимаем Edit


— Format ставим PNG Sequence
— Channels — RGB + Alpha
— Нажимаем ОК



— Ставим его во Frame Default. Нажимаем ОК


— Возвращаемся обратно в нашу композицию
— Выбираем Composition → Save Frame As → File и сохраняем кадр куда нужно. Если будет прозрачность, сохранит с прозрачностью.


Теперь в любом проекте можно нажать Save Frame As или Ctrl+Alt+S и кадр сохранится. Настраивать темплейт снова больше не нужно.

Думаю на этом всё.
Надеюсь, что эта заметка поможет кому-нибудь с рендером. Если что-то непонятно — пишите в комментарии, разберёмся.


Многие пользователи не задумываются о том, каким образом они рендерят ролики… выбирают стандартные пресеты и потом ждут часами результат сомнительного качества… Вот не надо так!! Рендер видео — это, пожалуй, самый отвественный момент в создании ролика, после монтажа, конечно же. И подход к нему должен быть соответственный.

Данная публикация была написана год назад для старого блога, который сейчас закрыт. Я переписал её и постарался сохранить оригинальный посыл.

Рассмотрим рендер видео с помощью Sony Vegas Pro 14 (по сути работает на любой версии).

Создаем проект (Файл-Создать…). Появится окно с заполненными полями шаблона по умолчанию. Нужно изменить поля, как показано на рисунке 1.

Вы вправе изменять настройки как пожелаете, но будьте внимательны, изменяя значения здесь, не забудьте сделать подобные изменения и в других местах в соотвествии с опцией.


  1. Будущее название нового шаблона. С помощью него, в дальнейшем можно будет не делать лишние операции и сразу работать с готовым пресетом.
  2. Разрешение видео в зависимости от того, в каком качестве вы хотите работать, пусть то HD (1280x720) или FullHD (1920x1080), как в моем случаи.
  3. Частота кадров видео. В данном случаи стоит 60FPS, ибо ролик был записан именно с такой частотой. *
  4. Порядок полей ставим на Отсутствует. Остальные поля сверяйте с рисунком 1.

* Если частота кадров записанного материала не совпадает с частатой кадров проекта, то убедительная просьба отключить ресемплинг, иначе видео будет сильно размыто. Для этого на таймлайн линии в настройках видео переключаете опцию на Disable resample.

Для того, чтобы приступить к процессу рендеринга нужно смонтировать и поработать над видео. Сделано? Тогда нужно скачать и установить x264vfw кодек. После установки кодека x264vfw нужно обязательно перезапустить Sony Vegas Pro.

Кодек x264 — это кодек с открытыми исходными текстами стандарта H.264. Кодек x264vfw — это неофициальный форк кодека x264 с большим набором настроек для Windows и множеством улучшений.

Я уверен Вы не раз слышали о том, что ютуб пережимает качество картинки ролика и на видео появляются артефакты… Да, это так, но этого можно избежать. YouTube использует стандарт H.264 и в случаи, когда видео загружается, допустим с использованием другого кодека и стандарта сжатия, то процесс обработки видео после загрузки на ютуб, увеличивается в несколько раз, так как серверы ютуба будут конвертировать ваш ролик под свой формат, тем самым, избежать потери качества не выйдет… оно будет неизбежно испорчено.

Чтобы такого не допустить, для youtube нужно рендерить видео только с помощью кодека x264, тогда обработка видео на серверах будет моментальна и ютуб не будет пережимать видео. К тому же, при правильной настройке кодека под компьютер, можно добиться хорошего результата по скорости рендера. Этим далее и займемся.

После установки кодека x264vfw возвращаемся в Sony Vegas и перемещаемся на страницу настройки рендера (File — Render As).

С приходом тяжеловесных видеоформатов, таких как 4K (Ultra HD), проблема эффективности декодирования видеопотока стала достаточно актуальной. На среднем компьютере приходится принимать специальные меры для того, чтобы можно было обработать такой видеопоток в реальном масштабе времени. В статье рассказывается о возможных способах увеличения скорости декодирования видеопотоков в решениях, основанных на FFmpeg, и приводятся результаты экспериментов по измерению скорости декодирования для 4K видеопотоков, закодированных в H264 и HEVC(H265).

Мы будем рассматривать три способа повышения скорости декодирования видеопотока.

  1. Подключение дополнительных рабочих потоков (threads) в стандартных декодерах.
  2. Подключение аппаратного ускорения (HW Acceleration) в стандартных декодерах.
  3. Использование специальных декодеров, реализующих декодирование на графических процессорах.

Первый из них использует исключительно возможности CPU, а два других задействуют возможности графических процессоров.

Доступные способы повышения скорости декодирования видеопотока достаточно сильно зависят от используемой операционной системы, аппаратной конфигурации компьютера и конфигурации FFmpeg. Все приведенные в статье результаты проверялись на следующей программно-аппаратной конфигурации: операционная система — Windows 10, ЦП — Intel i5 8400 2.80 ГГц (6 ядер без hyper-threading), встроенный графический процессор — Intel UHD Graphics 630, память — 16 ГБ, сборка FFmpeg 4.2.1, с zeranoe.

Для лучшего понимания архитектуры кодеков в FFmpeg можно посмотреть предыдущую статью автора, которая находится здесь.

1.1. Подключение дополнительных рабочих потоков в стандартных декодерах

Многие декодеры (но, конечно, не все) позволяют установить количество рабочих потоков, используемых для декодирования. Для этого перед вызовом avcodec_open2() член thread_count структуры AVCodecContext надо установить в требуемое значение. Другой способ — добавить опцию threads в словарь опций, передаваемый в качестве третьего аргумента в avcodec_open2() .

Наиболее популярные декодеры, используемые для тяжелых форматов, ( h264 , hevc , vp9 ) поддерживают эту возможность, а вот theora нет.

Для подключения дополнительных потоков в командной строке надо использовать опцию с ключом -threads .

1.2. Подключение аппаратного ускорения в стандартных декодерах

FFmpeg позволяет для некоторых декодеров подключить аппаратное ускорение. При программировании с использованием FFmpeg API все необходимое для подключения к декодерам аппаратного ускорения находится в заголовочном файле libavutil/hwcontext.h . В этом файле определено перечисление enum AVHWDeviceType , каждый элемент которого и соответствует некоторому типу аппаратного ускорения. Какие типы аппаратного ускорения доступны в текущей сборке FFmpeg можно узнать с помощью следующего кода:

Для описанной выше программно-аппаратной конфигурации мы получим:

Понятно, что cuda требует установки платы Nvidia и соответствущего ПО, qsv использует технологию Intel Quick Sync Video (QSV), реализованную на встроенных графических процессорах Intel (см. [1]), dxva2 и d3d11va используют технологию DirectX Video Acceleration (см. [2]), доступную только в Windows, но зато реализованную для видеокарт разных производителей (Intel, Nvidia, AMD).

Конкретные декодеры не обязаны поддерживать все эти типы аппаратного ускорения (или хотя бы один из них). Для определения типов, поддерживаемых конкретным декодером, можно воспользоваться следующим кодом:

Для описанной выше программно-аппаратной конфигурации декодеры h264 , hevc , vp9 , vc1 поддерживают следующие типы аппаратного ускорения:

А вот theora вообще не поддерживает аппаратного ускорения.

Теперь совсем кратко рассмотрим процедуру подключения к декодеру аппаратного ускорения, за дополнительными деталями надо обратится к примеру hw_decode.c . Также можно посмотреть статью [3], написанную 2expres.

После декодирования данные кадра находится в некотором специальном формате, который определяется типом устройства, поэтому его надо конвертировать в один из обычных пиксельных форматов с помощью функции av_hwframe_transfer_data() . Для dxva2 и d3d11va этот формат будет NV12 .

Для подключения аппаратного ускорения в командной строке надо использовать опцию с ключом -hwaccel .

1.3. Использование специальных декодеров, реализующих декодирование на графических процессорах

В состав FFmpeg входят два семейства кодеков, реализующих кодирование и декодирование на графических процессорах.


Одно семейство использует технологию Intel Quick Sync Video (QSV), реализованную на видеопроцессорах, интегрированных в процессоры Intel семейств i3, i5, i7, i9. Подробнее см. [1]. Эти кодеки имеют суффикс _qsv . В рассматриваемой сборке FFmpeg есть следующие декодеры: h264_qsv , hevc_qsv , vp8_qsv , mpeg2_qsv , vc1_qsv .

Другое семейство использует технологии NVDEC, NVENC реализованные на платах Nvidia. Декодеры имеют суффикс _cuvid . В рассматриваемой сборке FFmpeg есть следующие декодеры: h264_cuvid , hevc_cuvid , mpeg2_cuvid , vc1_cuvid , vp8_cuvid , vp9_cuvid , mjpeg_cuvid , mpeg4_cuvid .

После открытия входного потока доступ к декодеру обычно реализуется следующим образом:

Но таким образом можно получить только декодер по умолчанию для данного идентификатора кодека. Для альтернативных декодеров нужно использовать имя декодера примерно таким образом:

Для использования альтернативных декодеров в командной строке надо использовать опцию с ключом -c:v расположив ее перед ключом -i примерно таким образом

Для экспериментов по измерению скорости декодирования были выбраны два видеоролика, один закодирован в H264, другой в HEVC(H265). Размер кадра — 3840х2160 (Ultra HD), скорость — 30 к/с. Тестировались стандартные декодеры — h264 , hevc и соответствующие QSV декодеры — h264_qsv , hevc_qsv . Стандартные декодеры настраивались в 4х вариантах: по умолчанию, два рабочих потока, четыре рабочих потока, аппаратное ускорение dxva2 . В наших экспериментах dxva2 показал лучшие результаты, чем d3d11va , поэтому последний не участвовал в измерениях скорости декодирования. Для проведения тестов была написана программа которая извлекала пакеты из файла и декодировала их с максимально возможной скоростью, игнорируя метки времени и не выполняя рендеринг или иную обработку. Было два режима этой программы: в первом выполнялось только декодирование, в втором еще производилось конвертирование декодированного кадра в 32-битный формат BGRA с использованием библиотеки libswscale . (На выходе декодера кадр обычно имеет 12-битный планарный формат YUV420P или NV12 .) Проводилось измерение времени, затраченного программой, и фиксировалось относительное время по отношению к номинальной длительности видеопотока (в процентах). Таким образом, если результат меньше 100%, то у нас есть шанс обработать видеопоток в реальном масштабе времени, если больше, то таких шансов нет. Также с помощью Диспетчера задач фиксировалась примерная загрузка ЦП и графического процессора. Использовалась 64-битная сборка FFmpeg.

Большого обсуждения результаты, наверное, не требуют. Единственно на что стоит обратить внимание — это заметные затраты на преобразование в BGRA . И главное, что эти затраты сильно меняются в зависимости от тестовой конфигурации, хотя работа во всех случаях выполнялась очень близкая.

Эксперименты проводились также для 32-битной сборки FFmpeg. Результаты довольно близкие, кроме одного случая: декодер hevc в конфигурациях без аппаратного ускорения показал падение производительности в 2-3 раза. Весьма неожиданный результат.

Описанные тесты можно выполнить в командной строке. Надо использовать глобальную опцию -benchmark и установить нулевой выход. Вот несколько примеров:

На выходе будет показан фактический fps , а параметр speed покажет во сколько раз он выше номинального. Если не задана опция с ключом -threads или для N указано специальное значение auto , то декодер использует максимально возможное число потоков, загрузка ЦП при этом 100%.

В рассматриваемой сборке FFmpeg есть следующие QSV декодеры: h264_qsv , hevc_qsv , vp8_qsv , mpeg2_qsv , vc1_qsv . Два последних оказались неработоспособными. Декодер mpeg2_qsv выдавал искаженную картинку, а vc1_qsv выдавал ошибку при передаче пакета на декодирование. Правда, эти декодеры не особо актуальны, но, все-таки, зачем выкладывать неработоспособные компоненты, не вполне понятно.

К оставшимся декодерам тоже есть претензии. В целом они работают, за исключением одного момента — они некорректно отрабатывают вызов avcodec_flush_buffers() . Ошибки нет, но после этого вызова позиционирование работает некорректно.

В этой статья я предоставлю наиболее оптимальные настройки кодировщика Nvidia NVENC H.264 (new) в OBS для получения наилучшего качества картинки во время проведения трансляции на YouTube.
Настройки для трансляций на Twitch представлены в отдельной статье .
Статья создана на основе огромного количества изученного материала, в том числе научных работ и публикаций, а также сведений полученных при анализе субъективной (визуальной) и объективной оценки качества.

📡 Раздел трансляция

1. Сервис YouTube - RTMPS
2. Cервер Primary YouTube ingest server (Основной сервер).
Вы можете сменить сервер на Backup YouTube ingest server (Резервный), если у вас происходят пропуски кадров и другие сетевые проблемы.
3. Получить ключ потока можно нажав на кнопку " Получить ключ потока ".
Запустится браузер и вас переадресует в Творческую студию/ Прямые Трансляции, где вы и сможете найти Ключ трансляции, либо создать новый.

Для трансляции установите режим Малая задержка .
Это пригодится в дальнейшем, чтобы получить более высокое качество.
Задержка будет составлять в районе 15 секунд .
4. Поставьте галочку Игнорировать рекомендации по настройкам потокового сервиса.

1️⃣ Настройка Видео

Начать стоит именно с раздела Видео, т.к в масштабировании трансляции до 2К разрешения и есть секрет качественной картинки на YouTube.
Об этом я подробно рассказал в отдельной статье по ссылке .
Есть два способа, с помощью которых можно масштабировать трансляцию до 2K, чтобы она обрабатывалась кодеком VP9.

1. Масштабирование до 2K без рескейла в OBS.
С помощью данного способа трансляция будет масштабироваться до 2К разрешения, за счёт транскодирования видео на YouTube.
Этот позволит стримить в нативном разрешении 1920x1080 или ниже, что позволит значительно уменьшить нагрузку на кодировщик.
Подробное видео об этом можно посмотреть по ссылке.

Перейдите в Творческую студии/ Прямые Трансляции и создайте новый ключ трансляции.

- Поставьте галочку " Выбрать частоту кадров и разрешение".
- Укажите разрешение 1440 пкс.
- Поставьте галочку "Включить частоту кадров 60 кадров в секунду". Если вы стримите в 60 к/с, а это галочку не будет стоять, тогда трансляция на YouTube будет работать в 30 к/с.
Теперь трансляция на Youtube будет работать в разрешении до 1440p, в независимости от разрешения, которое указано в OBS.

2. Масштабирование выходного разрешения в OBS.
Прописываем выходное разрешение в разделе видео 2560x1440
Если у вас 2K монитор, то это еще лучше, и OBS не придётся растягивать пиксели, что позволит получить еще более качественную картинку.
Учтите, что увеличение выходного разрешения увеличит нагрузку на кодировщик. Так что, если у вас слабая видеокарта, то, возможно, вам придется снизить настройки кодировщика или частоту кадров видео, если наблюдаются перегрузы кодировщика, либо просто используйте первый способ.

Нагрузку на кодировщик вы можете отследить в диспетчере задач, где Video Encode отображает нагрузка на энкодер Nvenc.

В Фильтре масштабирования выбираем метод ланцоша , что позволит получить более гладкие диагональные линии, уменьшив Алиасинг , и получить более чёткую картинку.

2️⃣ Кодировщик Nvenc (new)

NVENC H.264 (new) - это обновленный и более производительный кодировщик, доступный с ☝️ 23 версии OBS.
Так что обязательно обновите OBS до одной из последних версии.
Главное его отличие от старой версии NVENC H.264 (без new) - это значительное снижение влияния на производительность в играх (до 66%) при кодировании видео, т.к графическому процессору больше не требуется буферизировать кадры в оперативную память, а это стало реализовано внутри самой видеокарты за счёт использования видеопамяти, что гораздо более эффективно.
То, что New доступен только для видеокарт последнего поколения, является не более, чем мифом и заблуждением.

3️⃣ Управление битрейтом

Выбираем CBR (постоянный битрейт).
Данный тип битрейта отлично подходит для трансляций, где необходима постоянная скорость передачи данных, так как при прямой трансляции видеоданные уязвимы к резкому колебанию битрейта.

4️⃣ Битрейт

Разумеется, можно воспользоваться битрейтом, предлагаемым в справке для прямых трансляций . Нас интересует битрейт для 2K разрешения (2560x1440), это 9000-18000 кб/с, но для получения более высокого качества рекомендую использовать битрейт больше.

Оптимальный битрейт для стрима в 2K, на мой взгляд, составляет от 18000 до 30000 кб/с , при условии, что ваш интернет способен поддерживать указанную скорость потоковой передачи данных.

Читайте также: