что такое аппаратное кодирование в obs
Рекомендуемые параметры для работы в OBS
Рекомендуемые настройки видеобитрейта для различных кодировщиков и разрешений трансляции:
Для кодирования через кодировщик x264:
30 FPS
1080p: 3200–4200 кбит/с
720p: 2300–3100 кбит/с
480p: 1600–2200 кбит/с
60 FPS
1080p: 4500–6000 кбит/с
720p: 3200–4300 кбит/с
Для кодирования через NVENC:
30 FPS
1080p: 4100–5500 кбит/c
720p: 3600–4900 кбит/c
60 FPS
1080p: 4500–6000 кбит/c
720p: 3200–4300 кбит/c
Для кодирования через Quick Sync:
30 FPS
1080p: 3600–4500 кбит/с
720p: 3400–4200 кбит/с
60 FPS
1080p: 4300–5200 кбит/с
720p: 3900–4700 кбит/с
Для всех трансляций рекомендованы:
CBR
Keyframe interval 2
Профиль High 4.1
Для того чтобы запустить трансляцию, нужно произвести базовые настройки программы. Чаще всего это Open Broadcaster Software (OBS), чуть реже встречается Xsplit, мы же будем приводить примеры, которые актуальны для OBS. Но при этом, их без проблем можно использовать и в Xsplit и в какой-нибудь менее популярной программе.
Переходим во вкладку «Вывод». Тут есть несколько ключевых параметров, которые нам нужно настроить: это кодировщик и видеобитрейт. Начнём с кодировщика.
У нас на выбор x264, NVENC и Quick Sync. Чем же они отличаются?
Quick Sync — это технология аппаратного ускорения, которая встроена в современные процессоры компании Intel. Она использует интегрированный GPU в процессор и через него уже производит кодирование.
Nvidia NVENC — это аппаратный многопоточный кодировщик видео, который работает в режиме реального времени. Доступен только для обладателей современных видеокарт Nvidia GeForce.
Какой же кодировщик тогда использовать? Здесь нужно посмотреть на конфигурацию вашего компьютера, а также на игры которые вы собираетесь транслировать. Если ваш компьютер обладает достаточно большим потенциалом, то стоит стримить через x264, так как качество трансляции будет немного выше, чем у конкурентов. Nvenc используем в тех случаях, когда компьютер в целом не обладает большими мощностями, но при этом имеет хорошую видеокарту. Quick Sync нужно использовать лишь в крайних случаях, когда нету оптимальной возможности стримить через x264 или же Nvenc.
С кодировщиком вроде как разобрались. Что же такое битрейт, и на что он влияет? Битрейт отвечает за то, какой объем данных вы будете передавать вашему зрителю. Необходимо понимать, что если этот объем будет небольшим, то качество картинки будет плохим. Если слишком большим, то, вероятно, ваш зритель не сможет адекватно смотреть трансляцию, так как у него может быть плохой интернет. Также нужно учитывать то, во что вы играете. Если игра динамичная и в ней большое количество объектов, то битрейт нужно делать больше.
Последний ключевой параметр, который нам нужно настроить, находится во вкладке «Видео». Здесь имеется базовое разрешение — это, по сути, разрешение вашего монитора. Можно ставить значение меньше, но тогда и видео на трансляции будет меньше. Далее — выходное разрешение. Оно отвечает за то, какое качество трансляции будет у зрителя: 1080p или же 720p. В теории можно сделать качество ещё хуже, но тогда трансляцию будет очень тяжело смотреть на персональных компьютерах. Последний параметр — это общие значения FPS. Обычно это 30 fps, но если вы обладаете достаточно сильным компьютером это значение можно делать и больше, например 60 fps. Чем выше этот параметр, тем плавнее картинка у зрителя.
Оптимальные настройки для лучшего качества стрима
Для начала, прежде чем мы перейдём непосредственно к тестированию, поговорим о тестовой платформе.
В последние несколько месяцев кодирование с помощью видеокарты вышло на новый уровень за счёт того, что Nvidia обновили движок аппаратного кодирования на видеокартах с новой архитектурой Turing.
Фото с Techspot.com
На новых видеокартах много внимания было уделено повышению производительности и улучшению совместимости с HEVC, что не особо важно для стриминга. Новый движок архитектуры Turing предполагает 15% улучшение качества видео стандарта H.264, в сравнении с прошлым поколением видеокарт на Pascal (серия GTX 10xx). Мы определённо обратим на это внимание, а заодно посмотрим, как Turing работает с программным кодированием x264. Итак, в тестах мы будем использовать видеокарту RTX 2080, чтобы посмотреть на работу с кодированием Turing, Titan X Pascal для тестов видеокарты на Pascal, и Vega 64, чтобы увидеть, как пойдут дела у AMD.
Фото с Techspot.com
Все тесты проводились на разогнанном до 4.9 GHz Core i7-8700k и 16 ГБ оперативной памяти DDR4-3000. Именно такую платформу мы рекомендуем для игр на максимуме. В будущем мы также планируем разобраться, насколько хорош 9900K в сравнении с процессорами Ryzen от AMD.
Для захвата мы используем последнюю версию OBS, настроенную на запись в 1080p при 60 кадрах в секунду с постоянным битрейтом 6000 кбит/с. Это максимальные настройки качества, рекомендованные Twitch. Если вы собираетесь сделать запись игрового процесса для иных целей, то мы рекомендуем вам поднять битрейт, но для ведения трансляции на Twitch, вам нужно иметь 6 Мб/с или ниже, если ваш канал не подключен к партнёрской программе.
Начнём с кодирования при помощи видеокарт, ведь долгие годы с ним были огромные проблемы. Больше всего нам интересно, получилось ли у Turing исправить ошибки своих предшественников, с которыми использовать кодирование было практически невозможно.
На видеокартах от Nvidia мы использовали NVENC в OBS и выбрали “Высокое Качество” при битрейте 6 Мбит/c. Разумеется есть и другие надстройки, но “Высокое Качество” выдаёт, как вы могли догадаться, самое высокое качество. На видеокартах Vega 64 от AMD мы опробовали множество разных настроек (как качества в целом, так и битрейта), но без особых успехов, как вы сами вскоре увидите.
Фото с Techspot.com
Фото с Techspot.com
Фото с Techspot.com
С тем, что энкодер от AMD “отвалился” еще в самом начале, давайте рассмотрим противостояние NVENC от Nvidia с процессорным программным кодингом x264. В более медленном тесте производительности Assassin’s Creed Odyssey, NVENC даже на “Высоком Качестве” заметно хуже, чем x264 с надстройками “Veryfast”, особенно при сравнении мелких деталей, хотя в обоих случаях используется битрейт 6 Мб/с. Veryfast x264 не идеален, но на фоне NVENC видеокарт Turing с огромным количеством макроблокинга и нечёткими деталями, он выглядит явным лидером.
Фото с Techspot.com
В более быстром тесте производительности Forza Horizon 4, NVENC видеокарт Turing местами уделывает надстройку veryfast x264. Вариант от Nvidia всё ещё страдает от макроблокинга, но у veryfast огромные проблемы с качеством деталей в движении. В игре с таким количеством движения, NVENC по качеству надстройки примерно равен “faster” x264. Тем не менее, надстройка “fast” x264 работает с движущимися объектами намного лучше, чем NVENC и даже полностью уделывает её, в случаях, когда движение на экране минимально, либо отсутствует вовсе.
Фото с Techspot.com
Фото с Techspot.com
Эти две надстройки лучше оставить для тех случаев, когда качество не особо важно, поскольку при битрейте 6 Мбит/с изображение получается весьма посредственным.
Фото с Techspot.com
Фото с Techspot.com
Для быстрого движения в Forza Horizon 4, опять же, стоит сразу забыть о veryfast, поскольку в случае с подобными играми он даже хуже NVENC. К сожалению, из-за битрейта в 6 Мбит/с, любая надстройка будет далека от оригинального материала, но medium визуально будет к нему ближе всего, да и смотрится намного лучше, чем с fast.
Производительность
Начнём, пожалуй, с графиков влияния кодирования при помощи видеокарты на производительность.
Включив NVENC на картах Pascal или Turing, вы потеряете примерно 10-20% кадров в секунду, в зависимости от игры. Другими словами, между трансляцией с NVENC и выключенным стримом, разница в производительности будет 10-20%. Однако, чем больше игра зависит от видеокарты, тем сильнее NVENC ударит по производительности. Вот почему Forza Horizon 4 теряет больше кадров, чем зависимая от процессора Assassin’s Creed Odyssey.
Но есть и хорошие новости! Пусть вы и будете играть на чуть более низких кадрах в секунду при использовании NVENC, на трансляции будет идеальная картинка без падения кадров, даже если игра грузит видеокарту на 100%. Кодирующий движок карт AMD не так сильно влияет на производительность игры, но в случае высокой загрузки видеокарты происходит падение числа кадров в секунду примерно на 90%, что, как мы упоминали ранее, делает его бесполезным.
Производительность в режиме программного кодирования зависит от конкретной игры. В случае с требовательной как к процессору, так и к видеокарте Assassin’s Creed Odyssey, использование программного кодирования процессора для ведения трансляции может негативно сказаться на частоте кадров, да и надстройки, обеспечивающие высокое качество, могут не справляться.
Во второй части исследования будет интересно разобраться в том, как покажут себя другие процессоры. Но в этой части 8700K, популярный игровой процессор высокого уровня, показал примерную ситуацию с трансляцией игры, которая крайне требовательна к процессору и видеокарте. Тем не менее, процессоры похуже, особенно малоядерные от Intel, в основном будут нормально работать на надстройке veryfast.
Надстройка veryfast x264 снизила производительность всего на 6% (если верить минимальным кадрам в секунду), но разница между veryfast и fast равнялась всего 5%, несмотря на то, что для кодирования видео на надстройке fast требовалось значительно больше мощностей процессора.
На самой трансляции мы не увидели падения числа кадров на надстройках veryfast и faster, но уже на fast можно было заметить снижение числа кадров трансляции примерно на 12%. Из-за этого она периодически шла рывками. Учитывая, что игра работала на 120 кадрах в секунду, можно запросто поставить ограничение в 60 кадров, тем самым снизив нагрузку на процессор. С подобным ограничением, надстройка fast в итоге работает уже без падения числа кадров трансляции. Кроме того, это ограничение дает нам возможность опробовать medium, но даже с нашим процессором 8700K, наблюдалось падение числа кадров примерно на 2%, что не годится. Если мы бы планировали и дальше работать с надстройкой medium, то пришлось бы немного покопаться в настройках графики, чтобы ещё сильнее снизить нагрузку на процессор.
Предварительные итоги
По итогам тестирования, можно сделать несколько интересных выводов. Мы узнали, что кодирующий движок видеокарт Turing в H.264 стал не особо лучше (хотя было заявлено обратное), в сравнении с Pascal, а кодирование при помощи видеокарты всё ещё не стоит рассматривать, как вариант для стримов.
Фото с Techspot.com
Стримерам стоит использовать, как минимум, надстройку fast, так как это первая с конца надстройка, выдающая достаточно неплохое качество при битрейте 6 Мбит/с. Пусть она и не идеальна для быстрых сцен, эта надстройка работает в разы лучше, чем faster и veryfast, при этом оставаясь более-менее доступной для средних систем. Если у вас очень мощное железо, то можно попробовать и medium, а вот более медленные надстройки лучше даже не трогать.
Мы рассмотрели оптимальные надстройки с точки зрения качества, а в следующей статье мы постараемся разобраться в том, какие процессоры способны кодировать на этих надстройках. Оставайтесь с нами!
OBS Studio. Полный гайд по настройкам программы
На данный момент есть две версии OBS:
Для начала работы с OBS скачайте OBS Studio с официального сайта. Скачивание начнется после нажатия на кнопку с Вашей операционной системой. На выбор предоставляется Windows 7, 8, 8.1, 10, mac OS x 10.11+ и Linux. Проверьте название скачиваемого файла и убедитесь, что скачиваете полную версию программы. Установщик должен содержать словосочетание Full-Installer после версии программы. Например, OBS-Studio-22.0.2-Full-Installer.
Главное окно
Открывая OBS, мы видим главное окно, которое состоит из:
Чтобы изменить размер источника, кликните на его название и в превью трансляции появится выделенная красным граница источника. Потяните мышкой за одну из сторон, и вы измените размер.
Кнопки управления источниками и сценами (слева направо):
Основные настройки
Перед запуском онлайн трансляции необходимо настроить программу, выбрать сервер, выставить качество, назначить горячие клавиши и т.д. Для этого нажимаем на «Настройки».
Вкладка «Общие»
Вкладка «Общие» отвечает за язык OBS, тему программы (Acri, Dark, Default, Rachni), общие настройки онлайн трансляции и источников. Пропустим детальный разбор каждой опции, заметим только «Автоматически включать запись во время трансляции». Если вы хотите иметь записи трансляций на физическом носителе, то эта опция будет вам полезна (учтите только то, что это добавит дополнительную нагрузку на ЦП).
Вкладка «Вещание»
В этой вкладке вы можете прикрепить свою трансляцию к платформе, на которой будет она проходить.
Настройка «Тип вещания» предлагает два выбора:
Вкладка «Вывод»
Данная вкладка отвечает за настройку кодирования трансляции и локальную запись. Окно настроек поделено на 2 «Режима вывода»:
Расширенный режим вывода предоставляет больше настроек для трансляции и рекомендуется к использованию. С более детальной настройкой качество изображение на вашей трансляции будет выглядеть лучше.
Разберем более детально два режима вывода, начнем с простого.
Простой режим
Теперь рассмотрим расширенный режим.
«Потоковое вещание» содержит основные настройки кодировщика.
Настройки кодировщика NVENC H.264
Настройки кодировщика NEW NVENC H.264
Настройки кодировщика x264
Настройки для кодировщика QuickSync H.264
Следующий по важности параметр трансляции это битрейт. Для меня с настройкой CBR (постоянный битрейт) оптимальным является 5500. Этот параметр зависит от вашего интернет-провайдера, провайдера трансляций и самой игры. Меняйте, наблюдайте за результатом, выставляйте оптимальный для вашей конфигурации. Кодировщики NVENC и QuickSync требуют больший битрейт, чем программный x264, но выставляя слишком высокий битрейт вы можете ухудшить качество трансляции. В интернете есть обширные статьи по настройке битрейта, но так как я использую только Twitch, Youtube, для оптимального битрейта мне хватает указанного выше показателя.
Настройки для кодировщика H264/AVC Encoder (AMD Advanced Media Framework)
(Статья требует дополнительного описания, если вы знаете и разбираетесь в параметрах H264/AVC Encoder (AMD Advanced Media Framework) свяжитесь с нами через страницу контактов)
«Аудио»
Содержит настройки для отдельных звуковых дорожек если вы используете разные дорожки в микшере.
Включает буфер повтора, нужно настроить горячие клавиши, по нажатию на определённую кнопку запустит повтор выбранного вами отрезка времени, по умолчанию отмотает время на 20 секунд назад и будет повторять этот момент пока не прервёте его горячей клавишей.
Вкладка «Аудио»
Вкладка для настройки аудио устройства для трансляции. Дополнительно можно настроить функцию включать/выключать микрофон по нажатии и функцию push-to-talk (микрофон работает только пока нажата заданная клавиша). Настройки задержки включения и выключения микрофона определяют задержку перед использованием функции в миллисекундах (ms).
Вкладка «Видео»
Вкладка для настройки разрешения вашей трансляции. По умолчанию соотношение сторон выбрано равное соотношениям сторон для мониторов 16:9 это 1280х720, 1680х1050, 1920х1080 и т.д. Лучше отталкиваться от принятых к стандарту разрешений, если у вас монитор 16:10 или более широкий, ориентируйтесь на стандартные разрешения и старайтесь транслировать в 16:9 иначе зрители будут наблюдать чёрные полосы на трансляции снизу, либо вам придётся пожертвовать и обрезать изображение с боков.
Чтобы не нагружать процессор ещё сильнее, лучше не использовать масштабирование и выставлять одинаковое значение в опциях «Базовое разрешение» и «Выходное разрешение».
Вкладка «Горячие клавиши»
Вкладка настройки горячих клавиш для управления трансляцией, настройка функций включить/отключить звук, включить/выключить звук по нажатии. Можно задать горячие клавиши для запуска, остановки трансляции, начала и остановки записи и т.д.
Вкладка «Расширенные»
Вкладка для дополнительных настроек программы. Если вы плохо разбираетесь в программе, то вас заинтересует параметр «Приоритет процесса», формат имени файла записи и задержка потока. Остальные параметры лучше оставить без изменений, и менять только в том случае, если вы знаете, что они означают и это изменение улучшит качество вашей трансляции.
«Кодировщик перегружен: попробуйте понизить настройки видео в OBS»: откуда ошибка?
На экране появилась ошибка «Кодировщик перегружен, попробуйте понизить настройки видео OBS» и работоспособность программы нарушилась? Такое может случиться с каждым – ситуация рядовая, причин паниковать нет. Внимательно читайте советы и подсказки, один из способов поможет справиться с возникшей проблемой. Поехали!
Изменение приоритета процесса
Ошибка OBS Studio «Кодировщик перегружен» может появляться из-за неправильного выставления приоритетов – в случаях, когда в диспетчере задач для программы выставлен низкий уровень приоритета. Соответственно, операции приложения имеют низкий приоритет и ЦП не обслуживает запросы на обработку.
Решение максимально простое – нужно поменять приоритет процесса, чтобы процессор обрабатывал задачи программы в первую очередь. Программное обеспечение должно соответствовать игровому экрану/ потоковому окну в соотношении один к одному, а скорость игры – соответствовать скорости ее трансляции. Как только параметры совпадут, ошибка кодировщика OBS исчезнет. Попробуем вместе понизить приоритет игры – или повысить уровень, но уже в рамках программного обеспечения.
Теперь повторите попытку – откройте приложение и проверьте, молчит ли кодировщик OBS? В большинстве случаев эти действия помогают исправить ошибку за несколько минут!
Уменьшение разрешения на выходе
Максимально простое условие, которое поймет даже начинающий пользователь – чем выше показатель разрешения вывода, тем больше ресурсов использует программа. Отсюда берется ошибка!
Что делать, если кодировщик в OBS перегружен из-за выставления неправильных цифр? Ответ прост, как и условие задачи – необходимо уменьшить разрешение и снять лишнюю нагрузку.
Если настройки кодировщика OBS в норме, процесс загруженности спадает, ошибка исчезает. Внимательно следите за параметрами вывода в любой трансляции – это убережет от огромного числа проблем.
Уменьшение частоты кадров
Иногда стримеры слишком гонятся за качеством картинки (это объяснимо) – поэтому сталкиваются с падением производительности. Как настроить кодировщик в OBS правильно, чтобы устранить ошибку перегрузки?
Обратите внимание на значение FPS – если вы выставили 60 кадров, лучше снизить значение. Для этого необходимо сделать следующее:
Не забудьте сохранить внесенные изменения и попробуйте заново запустить трансляцию – теперь перегрузка должна уйти.
Изменение предустановки
Вы уже поняли, что делать, если кодировщик OBS перегружен? Обращаться к настройкам программы – в большинстве случаем трудности прячутся за неправильными параметрами. Не переживайте – постепенно вы научитесь выбирать оптимальные настройки.
Следующая причина возникновения ошибки, на которую стоит обратить внимание – предустановка видеокодера х264. По умолчанию его стоит настроить на предустановку «очень быстро», что означает поиск определенного баланса между качеством видео и скоростью процессора.
Обратите внимание – все инструкции приводим на примере программы Studio! Однако советы можно использовать в поисках ответа на вопрос, как снизить настройки кодировщика в Streamlabs OBS или любой другой программе. Все методы рабочие – только помните об отличиях в названиях пунктов меню. Более подробно о том, как пользоваться Streamlabs OBS читайте в другой статье на нашем сайте!
Аппаратное кодирование
Как понять, программный или аппаратный кодировщик OBS лучше использовать? Если программные настройки не помогли и все описанные выше способы оказались бесполезны, стоит обратить внимание на аппаратные возможности.
Аппаратные кодировщики (AMF, Quicksync и NVENC) поддерживаются как в стандартных графических процессорах Intel, так и в процессорах AMD / NVIDIA. Вы можете перенаправить часть нагрузки на аппаратные кодеры с незначительными потерями. Это очень помогает, если кодировщик OBS перегружен при ограниченных возможностях процессора – хотя и снижает общее качество трансляции.
Все дополнительные кодеры по умолчанию появятся в списке – система находит доступные варианты автоматически.
Дополнительные меры
Если произошла ошибка кодировщика во время записи OBS, но описанные выше методы не помогли, воспользуемся двумя дополнительными опциями – это просто и быстро, при этом значительно увеличит шансы на успех.
Больше ошибка OBS «Кодировщик перегружен, попробуйте понизить настройки видео» не будет вас пугать – немного внимания и усердия, вы обязательно разберетесь в тонкостях работы программы! Сохраняйте инструкции в закладки – они обязательно пригодятся в трудную минуту.