Что делать если нет кодировщика видеокарты в обс
В этой статья я предоставлю наиболее оптимальные настройки кодировщика Nvidia NVENC H.264 (new) в OBS для получения наилучшего качества картинки во время проведения трансляции на YouTube.
Настройки для трансляций на Twitch представлены в отдельной статье .
Статья создана на основе огромного количества изученного материала, в том числе научных работ и публикаций, а также сведений полученных при анализе субъективной (визуальной) и объективной оценки качества.
Настройка х264 для записи
- Управление битрейтом:
- VBR - переменный битрейт, используется для записи.
- для записи можно использовать повышенные битрейт от 10 000 до 100 000.
- 23 - можно изменять от 0 до 51, когда 0 - лучшее качество изображения, а 51 - худшее.
- 0 - 2 - можно выбрать или ноль, или два.
- veryfast - для обладателей медленных процессоров veryfast или ultrafast- самый оптимальный выбор.
- high - высокий профиль - не устанавливает ограничений кодировщику. Цветовое пространство с потерей качества.
- (Нет) - отключите преднастройку.
- bframes=16 b_adapt=1 rc_lookahead=18 ref=4 - можно внести данные ключи для улучшения качества изображения, но следите за показателями перегрузки.
Дополнительные настройки видео
В разделе «Видео» задается нативное разрешение экрана, выходное разрешение для трансляции и определяется максимальное значение FPS.
Фильтр масштабирования – очень полезная функция. Объясню, чем отличаются методы и какой лучше подобрать под ваш компьютер.
Первый метод - билинейный. Он подходит для слабых компьютеров и среднего качества трансляции. Картинка будет немного замылена, особенно в динамических сценах. Но потребляемые ресурсы будут значительно меньше.
Второй метод – бикубический. Его стримеры используют чаще всего. Оптимальное сочетание нагрузки и качества изображения.
Третий и самый ресурсозатратный метод – Ланцоша. Качество трансляции будет максимальным, как и нагрузка на ПК. Не рекомендую использовать с процессорами слабее Ryzen 5 1400, Intel Сore i5 6400 и видеокартах младше GTX 1060 с 6 GB.
В разделе «Горячих клавиш» можно задать комбинации или отдельные бинды на быстрое включение определенных функции или смены сцен трансляции.
В «Расширенных настройках» советую поставить приоритет процесса на высокий, чтобы фоновые обновления или другой софт не занимали необходимые ресурсы. Цветовой формат, пространство и диапазон лучше не трогать.
Тип кодирования.
CABAC - контекстно-адаптивное бинарное арифметическое кодирование. Это более эффективный алгоритм сжатия, чем CAVLC, который больше подходит для совместимости воспроизведения на более старых устройствах.
Психовизуальная корректировка
Психовизуальная корректировка (psycho visual tuning) корректирует искажение скорости кодировщика и включает параметры кодировщика, которые оптимизируют использование битрейта для повышения визуального восприятия качества, выделяя больше битрейта при кодировании для более однородных областей, где потенциально могут образоваться блочности. Это достигается за счёт ухудшения других отдельных фрагментов, на которые человек визуально обычно не обращает внимание.
✔️ Опция уменьшает количество блочной и артефактов в видео, поэтому её следует включить.
Какой битрейт лучше всего использовать
➜ Для партнеров твича можете смело использовать битрейт 8000 кб/с.
➜ Если вы компаньон твича, то вы можете также использовать битрейт 8000 кб/с, особенно для игр с высоким количеством движений.
Однако после запуска стрима рекомендую убедиться, что ваш видеопоток транскодируется.
Если этого не произошло, то лучше изменить битрейт до 6000 кб/с.
➜ 6000 кб/с и ниже, если вы начинающий стример.☝️ Вы можете изменять битрейт в OBS прямо во время проведения трансляции. Чтобы изменить битрейт, перезапускать трансляцию не обязательно.
Подробнее о партнерской программе Twitch и требованиях:
Присоединение к партнерской программе.Выбор платформы, поиск ключа потока
Для начала нам потребуется вкладка «Вещание», в которой мы выбираем платформу для стриминга. Можно выбрать Youtube, Twitch, и другие. Для мультитрансляций на несколько платформ можно использовать сервис Restream.io.
У каждого сервиса есть свой уникальный ключ потока, с помощью которого мы подключаем программу для стрима к каналу.
Чтобы его найти для Youtube, заходим в «Творческую студию» и внизу копируем «Ключ трансляции». После чего в OBS вставляем в соответствующую строку.
На Twitch ключ трансляции находится в «Панели управления», подкатегория «Канал». При необходимости его всегда можно сбросить.
Часто бывает, что на выходных серверы перегружены и стрим может подтормаживать. Поэтому предусмотрены дополнительные серверы для приема потока.
У Youtube их всего два. А для Twitch рекомендую подобрать сервер с минимальным пингом. Это можно сделать с помощью сайта Twitch Inspector, на котором можно проверить стабильность тестовой трансляции.
Перейдем к самому главному и интересному пункту настройки – «Вывод». В нем и происходит вся магия, и найти оптимальные значения вам придется на практике самим. Я же дам пару советов, которые помогут создать трансляцию в максимальном качестве при минимальной нагрузке железа.
Настройка кодировщика
Настройка битрейтов
Управление битрейтом – рекомендую устанавливать постоянный (CBR). С ним картинка не будет периодически «сыпаться», как это было бы с VBR. Сжатие с помощью ABR позволяет установить минимальное и максимальное значение битрейта, за которые OBS не будет выходить.
Битрейт – это количество информации, которая будет передаваться за единицу времени. Так что именно этот параметр больше всего влияет на качество картинки.
Однако замечу, что битрейт нужно подбирать исходя из вашей скорости интернета и качества трансляции. Учитывать нужно скорость передачи от вас на сервер (картинка speed-теста).
Вот еще одна таблица с форума для стримеров:
Учтите, что эти значения руководствуются критериями качества на youtube. Т.е. эти значения во многом соответствую не игровой тематике, а формату видеороликов, снятых на камеру.
"Супер качество" - это максимальный функциональный предел; при стриме игр смысла выставлять его особо нет, т.к. визуально качество будет практически такое же как и в "Высоком качестве".
Поэтому для игр "Низкое качество" зачастую является приемлемым. Например, на твиче считается нормальным брать битрейт 1800 для стрима в 720p - это дефолтное значение в OBS для данной платформы.
Итого, для стримов на твиче я рекомендую следующий битрейт:
240p 500 360p 700 480p 1000 720p 2000 (если лагает - 1500) 1080p 3500 АПДЕЙТ: Твич повысил максимальный битрейт с 3500 до 6000. Так что если у вас мощный комп, можно смело ставить, например, 720 в 60фпс с битрейтом 5к Также важно понимать, что выбор битрейта зависит от конкретной игры. Если вы играете в пиксельную игру вроде Realm of the Mad God, большой битрейт погоды не сделает, т.к. сама игра не блещет графикой. Также высокое качество картинки не важно в статичных играх вроде Hearthstone, где большинство зрителей и так в курсе какая карта что делает.
Мой личный выбор для большинства игр - битрейт для youtube:
720p (разрешение 1280x720), 30 фпс - 2500
1080p (разрешение 1920x1080), 30 фпс - 4300Регулировка интервала между ключевыми кадрами (например, 8) может улучшить качество картинки и более эффективно использовать выбранный битрейт. Ключевой кадр кодируется полностью, следующий за ним содержит только отличия от ключевого, третий – отличия от второго и так далее до следующего ключевого кадра.
Для не слишком динамичных игр интервал можно повысить, поскольку там картинка кардинально и быстро не меняется. Для динамичных больше одного ключевого кадра в 3 секунды ставить не рекомендую – картинка будет сильно замылена.
Предустановка использования ЦП отвечает за нагрузку процессора и качество картинки. Если процессор мощный, то можно повысить параметр, получив более качественную картинку.
И наоборот, если машина не справляется со стримом и игрой одновременно, то стоит понизить использование ЦП, чтобы видео было плавнее. Рекомендуемое значение для слабых и средних процессоров «Veryfast».
Пункт профиль напрямую зависит от вашего железа. Для более старых комплектующих желательно устанавливать main, для более новых – high. При этом потеря качества будет минимальна.
Отдельный пункт «Настройка» под профилями - это некая оптимизация для вашей трансляции. Рекомендую устанавливать параметр нулевой задержки, который как раз и предназначен для потокового видео.
Уровень профиля
Уровень – это определенный набор ограничений, который указывает степень требуемой производительности декодера для профиля.
Практически тоже самое, что и профиль, только уровень ограничивает максимальное разрешение, частоту кадров, битрейт и ряд других параметров.
Указываем Автоматически , чтобы кодировщик сам задавал уровень в зависимости от параметров видео.Переменный битрейт (VBR)
VBR - метод управления скоростью битрейта, при котором битрейт динамически изменяется пропорционально сложности видеофрагментов в пределах установленных значений.
VBR битрейт способен предоставить более высокое качество видеоданных, чем постоянный, т.к количество выделяемого битрейта может варьироваться до максимально установленного значения, но большую часть времени будет стремиться у целевому.
Как и в случае с постоянным битрейтом, установленные показатели не столь важны, т.к основным параметром, регулирующим количество выделяемого битрейта, будет оставаться QP.Частота кадров
Стандартное значение ✔️ 60 к/c.
При трансляции в 60 к/с картинка будет более плавной при просмотре, но качество будет хуже, чем при более низкой частоте кадров.
➜ Для шутеров и динамичный игр лучше использовать 60 или 50 к/с.
➜ Для игр с низким количеством движений можно указать 30 к/c, чтобы улучшить общее качество за счёт экономии битрейта.
☝️ Если большую часть времени фпс в игре составляет ниже 60 к/с, то и стримить в 60 к/с не имеет смысла.
Если у вас слабая видеокарта, то уменьшение частоты кадров и выходного разрешения будет гораздо более оправданным, чем уменьшение параметров в настройках вывода, чтобы снизить нагрузку на кодировщик.Макс.кол-во B-кадров
B-кадры - самые сжатые кадры и наименее требовательные к битрейту, что позволяет существенно увеличить степень сжатия видео.
Использование b-кадров крайне рекомендуется, в особенности при ограниченном битрейте, но их не должно быть слишком много, т.к они весьма уязвимы к артефактам в динамичных фрагментах видео.Обратите внимание на размер b-кадров (отмечены зеленым цветом), по сравнению с p-кадрами (синие) и i-кадрами (красные).
Обратите внимание на размер b-кадров (отмечены зеленым цветом), по сравнению с p-кадрами (синие) и i-кадрами (красные).
➜ Оптимальным значением является ✔️ 2 b-кадра .
Это отличный компромисс для сохранения качества, как в относительно статичных, так и в динамичных фрагментах.➜ 3 или 4 b-кадра лучше использовать для трансляции игр с низким количеством движений, что позволит улучшить качество картинки, особенно в статичных фрагментах, где камера неподвижна.
Общие настройки
Для начала сразу рассмотрим оптимальные настройки для стрима и записи видео для большинства пользователей.
Ниже будет представлено подробное описание каждого параметра.
Все тесты проводились на видеокарте Sapphire Radeon RX 570 NITRO+1. Укажите режим просмотра Эксперт .
Этого режима будет достаточно, чтобы настроить кодировщик, как нужно, и скрыть параметры, которые могут вызвать сбои в работе кодировщика.
2. В предустановке выбираем пустую строку , чтобы разблокировать опции для настройки кодировщика.Принудительно использовать HRD
HRD (Hypothetical Reference Decoder) необходим для проверки выходного видеопотока, чтобы битрейт соответствовал заданному значению.
Полезная опция для ограничения битрейта, особенно при стриме.
Важно понимать, что опция не сможет строго ограничить битрейт, если сложность видеофрагментов превысит установленный.
Включить.Новые кодировщики в OBS Studio версии 27.2
В версии OBS Studio 27.2 появятся в виде эксперимента следующие кодировщики AOM AV1 и SVT-AV1.
Новые кодировщики AOM AV1 и SVT-AV1
Предугадывание
Предугадывание ( look-ahead ) повышает точность управления скоростью видеокодера, позволяя кодировщику буферизовать определенное количество кадров (до 32 для Nvenc), оценивать их сложность и соответствующим образом распределять биты между этими кадрами пропорционально их сложности. Это также позволяет кодировщику динамически выбирать B и P-кадры в зависимости от сложности сцен.
Опция взаимосвязана с установленным значением в Макс. B-кадров и сокращает их количество вплоть до 0, в зависимости от сложности видеофрагмента.
✅ Включить.
- Для игр с низким количеством движений и при использовании более 2 б-кадров.
❎ Отключить.
- При трансляции шутеров или динамичных игр c использованием 2 или 1 b-кадра.
Это позволит сэкономить битрейт за счёт статичного кодирования b-кадров, что улучшит общее качество.Настройка Видео
Начать стоит именно с раздела "Видео", т.к в масштабировании трансляции до 2К разрешения и есть секрет качественной картинки на YouTube. Об этом подробно рассказано в отдельной статье по ссылке .
Есть два способа, с помощью которых можно масштабировать трансляцию до 2K, чтобы она обрабатывалась кодеком VP9.1. Масштабирование до 2K без рескейла в OBS.
С помощью данного способа трансляция будет масштабироваться до 2К разрешения за счёт транскодирования видео на YouTube.
Этот позволит стримить в нативном разрешении 1920x1080 или ниже, что позволит значительно уменьшить нагрузку на кодировщик.
Подробное видео об этом можно посмотреть по ссылке.
Именно этот способ я рекомендую использовать.Создание ключа трансляции.
- Перейдите в Творческую студии/ Прямые Трансляции и создайте новый ключ трансляции как показано на скриншоты ниже.- Поставьте галочку "Выбрать частоту кадров и разрешение".
- Укажите разрешение 1440 пкс.
- Поставьте галочку "Включить частоту кадров 60 кадров в секунду".
Если вы стримите в 60 к/с, а это галочку не будет стоять, тогда трансляция на YouTube будет работать в 30 к/с.
- Скопируйте новый ключ трансляции и укажите его в OBS.
Теперь трансляция на Youtube будет работать в разрешении в 1440p, в независимости от выходного разрешения, которое указано в OBS.Если вы решили создать ключ трансляции в 4К, то могу вас заверить, что это имеет смысл лишь в том случае, если трансляцию зрители будут запускать в 4К, либо стрим останется в отрытом доступе на канале, чтобы люди имели возможность выбрать более высокое разрешение.
В остальных случаях достаточно 2К, чтобы получить кодек VP9, т.к большинства зрителей будут смотреть трансляцию в 1080p.2. Масштабирование выходного разрешения в OBS.
Данный способ позволит получить немного более четкую картинку при просмотре трансляции в разрешении 1440p за счёт использования фильтра масштабирования в OBS.
Преимущество получат только те зрители, которые будут смотреть трансляцию в 2K разрешении.Я постараюсь максимально быстро и информативно рассказать про важные пункты, подобрать оптимальные настройки для разных компьютеров под каждый кодировщик: NVENC, x264, Quick Sync и AVC Encoder для видеокарт AMD.
У некоторых может возникнуть вопрос, почему OBS, а не Xsplit. Во-первых, OBS бесплатна. А во-вторых, менее требовательна к ресурсам ПК. И при одинаковых пресетах OBS будет загружать компьютер намного меньше.
Да, кстати, если в турбо-версии страницы картинки у вас будут сильно размыты, перейдите на оригинальную версию страницы на сайте. Там все изображения в высоком качестве. Давайте уже начнем!
Стриминг через процессор кодеком x264
Сразу же включаем параметр «Расширенный», чтобы получить доступ к максимуму настроек. Для начала рассмотрим стриминг с помощью процессора через кодек x264.
Его плюсы: - высокое качество картинки на слабых ускорителях.
Минусы: - большая нагрузка на процессор с высоким битрейтом без потерь качества.
Оптимальное разрешение для стрима – 1920 на 1080 точек для средних и мощных ПК. Если же у вас слабый ПК или большое разрешение не обязательно, то можно оставить 720p. При меньшем смотреть стрим будет некомфортно.
Пропуск кадров
Пропуск кадров позволяет кодировщику пропускать кадры в целях соответствия требованиям целевого битрейта.
Опция практически бесполезная, можно отключать.Интервал ключ. кадров
Этот параметр определяет, как часто будет кодироваться ключевой кадр в видео.
Красным цветом указаны ключевые кадры (i-frames) в структуре видео. Здесь они кодируются через каждые 2 секунды.
Красным цветом указаны ключевые кадры (i-frames) в структуре видео. Здесь они кодируются через каждые 2 секунды.
Ключевой кадр (опорный) - это кадр, который содержит полные сведения об изображении, и при кодировании на него ссылаются динамические кадры , в которых отображаются данные об изменении в последовательности изображений.
👌 Оптимальное значение для трансляции ✔️ 2 секунды.
Это необходимо для синхронизации с кодировщиком потоковой службы и сокращения буферизации при воспроизведении.Для не динамичных игр с низким количеством движений можно указать ✔️ 4 секунды, что позволит сэкономить битрейт для динамических кадров и немного улучшить общее качество, т.к ключевые кадры (i-frames) являются самыми требовательными к битрейту.
Из примеров можно назвать такие жанры игр как моба, стратегии, платформеры, карточные игры или IRL - трансляции.
Во всех остальных случаях оставляйте 2 секунды.Профиль
Профиль определяет, какие комплекты возможностей может использовать кодировщик для сжатия видео, для обеспечения совместимости при его воспроизведении на устройствах, которые имеют разные возможности декодирования.
✔️ High профиль позволяет кодировщику использовать больше доступных функций для сжатия видео, что напрямую улучшает его качество и степень сжатия (размер).
Визуально разницу в качестве между main и high профилем будет сложно заметить, но это не значит, что её нет.Передача OpenCL
Передача кадров с помощью OpenCL вместо памяти GPU.
Передача через OpenCL при использовании GPU менее спорадическая, чем передача через память.
Отключить.Оптимальные настройки кодировщика
📌 Настройки для большинства пользователей в независимости от типа контента, который вы стримите, и поколения видеокарты.
Настройка процессорного кодировщика x264, а также AOM AV1 и SVT-AV1, в этой статье мы затронем настройку для записи и трансляций, оптимизацию системы, производительности и нагрузки, а также рассмотрим основные параметры кодировщика, ключей для него.
Постоянный битрейт (CBR)
CBR - метод управления скоростью битрейта, при котором заданный битрейт не изменяется на протяжении всего видео или трансляции.
Данный тип битрейта отлично подходит для трансляций, где необходима постоянная скорость передачи данных, так как при прямой трансляции видеоданные весьма уязвимы к резкому колебанию битрейта.*В кодировщике AMF ключевым параметром, определяющим количество выделяемого битрейта, является не указанное значение в строке битрейт, а минимальный и максимальный QP.
Именно поэтому кодировщик AMF плохо подходит для проведения трансляции при строго ограниченном битрейте, т.к кодировщиком не предусмотрен адаптивный выбор QP, а их нужно подбирать самостоятельно, чтобы соответствовать заданному битрейту.Степень сжатия определяется двумя ползунками.
Минимальное QP определяет минимальную степень сжатия видео.
Чем ниже значение, тем лучше будет максимальное качество и больше битрейта будет выделяться, чтобы соответствовать заданному качеству.
На практике, чем ниже вы зададите значения, тем лучше будет качество в статике.
Максимальное QP определяет максимальную степень сжатия видео.
Чем выше значение, тем сильнее будет сжиматься видео, и хуже будет качество в динамике.Режим пред-прохода
Режим пред-прохода улучшает распределение битрейта в последовательности кадров (GOP) за счёт предварительного анализа видеоданных.
Опция незначительно улучшает качество, но её лучше отключить, чтобы уменьшить нагрузку на кодировщик.
Включение опции увеличивает нагрузку на кодировщик на 10-15% .Настройка х264 для трансляций
- Управление битрейтом:
- CBR - постоянный битрейт, предназначен в основном для трансляций.
- зависит от платформы смотри тиблицы
- 2 - для платформ Twitch, Youtube нужно выставить на 2
- veryfast - для обладателей медленных процессоров veryfast или ultrafast- самый оптимальный выбор.
- high - высокий профиль - не устанавливает ограничений кодировщику. Цветовое пространство с потерей качества.
- zerolatency - используется для потокового видео устанавливает ограничения кодировщику --bframes 0 --force-cfr --no-mbtree --sync-lookahead 0 --sliced-threads --rc-lookahead 0
- intra_refresh=1 - не допускается применение IDR кадров, снижается степень сжатия видеоряда обеспечивает стабильный битрейт без колебаний.
Раздел трансляция
1. Сервис Twitch .
Рекомендую Подключить аккаунт , чтобы отображался чат трансляции в отдельном окне (док-панель).
Запускать чат в браузере больше не потребуется, что сэкономит ресурсы.
(Если не хотите подключать аккаунт, то выберите "Использовать ключ потока" и нажмите на пункт "Получить ключ потока".
Скопируйте ключ основной трансляции и вставьте в строку в OBS).
2. Сервер Автоматически .
OBS автоматически определит наиболее оптимальный сервер.
Если вы хотите самостоятельно подобрать сервер, то можете воспользоваться специальной утилитой TwitchTest .
3. Включение режима тестирования пропускной способности позволит протестировать стабильность трансляции без выхода в эфир.
4. Дополнения чата Twitch. Выберите для отображения смайликов BetterTTV и FrankerFaceZ в док-панели чата.
Смайлики для канала нужно подключать и настраивать отдельно.5. Поставьте галочку "Не следовать ограничениям, накладываемые потоковой службы", чтобы OBS не ограничивал битрейт и интервал ключевых кадров до рекомендуемых значений стриминговой платформы.
Если вы пользуетесь Streamlabs OBS, то галочку Enforce Streaming Service Encoder Settings ставить не нужно!
Решение есть!
Масштабирование до 2K на YouTube без рескейла в OBS.
С помощью данного способа трансляция будет масштабироваться до 2К разрешения за счёт транскодирования видео на YouTube.
Это позволит стримить в нативном разрешении 1920x1080 или ниже, что позволит значительно уменьшить нагрузку на кодировщик.
Подробное видео об этом можно посмотреть по ссылке.
В моем случае, на видеокарте Radeon RX 570, разрешение при котором отсутствуют перегрузы кодировщика составляет 1664x936Перейдите в Творческую студии/ Прямые Трансляции и создайте новый ключ трансляции.
- Поставьте галочку " Выбрать частоту кадров и разрешение".
- Укажите разрешение 1440 пкс.
- Поставьте галочку "Включить частоту кадров 60 кадров в секунду". Если вы стримите в 60 к/с, а это галочку не будет стоять, тогда трансляция на YouTube будет работать в 30 к/с.
Теперь трансляция на Youtube будет работать в разрешении до 1440p, в независимости от разрешения, которое будет указано в OBS.После установки параметров тщательно проверьте, чтобы не было перегруза кодировщика, и трансляция работала стабильно.
Никакой речи о высоком качестве картинки, сравнимой с владельцами видеокарт Nvidia или при использовании x264, и быть не может, но для YouTube качество будет хорошее.Пресет
✔️ Качество - это универсальный выбор.
✔️ Макс. качество включает использование кодировщиком двухпроходного кодирования для предварительного анализа видеоданных, что позволяет более эффективно распределить битрейт при кодировании кадров. Это незначительно улучшает качество видео, но существенно увеличивает нагрузку на энкодер (до 50%).
Если у вас современная видеокарта на архитектуре Pascal, Turing или Ampere, то можете смело использовать пресет Макс. качество.
Если у вас слабая видеокарта, и вы испытываете проблемы с производительностью при стриме или записи видео в играх, то можете переключить пресет на качество, чтобы уменьшить нагрузку на кодировщик.Нагрузку на кодировщик вы можете отследить в диспетчере задач, где Video Encode отображает нагрузка на энкодер Nvenc.
Настройка стрима через видеокарту и кодек NVENC H.264
Теперь рассмотрим настройки трансляции через NVENC H.264 кодек для видеокарт NVIDIA. Особых отличий здесь нет. Всё та же строчка с битрейтом, пресетами и профилями.
Пресеты здесь уже обозначены по-человечески, и из названия можно понять, как повысить качество картинки и как снизить нагрузку на видеокарту. Однако параметр уровень (чего?) – это уже более точная поднастройка, куда нам, нубам, пока еще лезть рано. Поэтому оставляем его в режиме «авто».
При использовании двухпроходного кодирования качество картинки улучшится, но нагрузка на GPU возрастет. Но это адекватная цена, поэтому ставим галочку.
Если ты мажор и у тебя несколько видеокарт в SLI, то в следующем пункте GPU устанавливай значение «один» для двух видеокарт, значение два – для трех и тд. Если у тебя только одна видеокарта, то оставляй значение «ноль».
Использование B-кадров означает, что данный кадр ссылается на два соседних – предыдущий и следующий. Это ускоряет отрисовку и снижает нагрузку на железо. Оставляем значение в 2.
Раздел трансляция
Обязательно поставьте эту галочку в разделе Трансляция, чтобы OBS не ограничивал битрейт и интервал ключевых кадров для выбранной платформы, в независимости от того, куда вы планируете стримить.
Если вы пользуетесь Streamlabs OBS, то галочку Enforce Streaming Service Encoder Settings ставить не нужно!Буфер VBV
VBV - верификатор буферизации видео.
VBV используется для проверки скорости передачи данных и правильной буферизации видео.
В стандартах H.264 и VC-1 VBV заменен обобщенной версией, называемой гипотетическим эталонным декодером (HRD).
Установите Автоматически со значениями по умолчанию, чтобы буфер сам изменял размер в зависимости от установленного битрейта.
При установке вручную обычно следует указать размер буфера в 2 раза больше, чем заданный битрейт, но лучше оставить автоматически.Подробное описание каждого параметра
Раздел трансляция
1. Сервис YouTube - RTMPS
2. Cервер Primary YouTube ingest server (Основной сервер).
Вы можете сменить сервер на Backup YouTube ingest server (Резервный), если у вас происходят пропуски кадров и другие сетевые проблемы.
3. Получить ключ потока можно нажав на кнопку " Получить ключ потока ".
Запустится браузер и вас переадресует в Творческую студию/ Прямые Трансляции, где вы и сможете найти Ключ трансляции, либо создать новый.Для трансляции установите режим Малая задержка .
Это пригодится в дальнейшем, чтобы получить более высокое качество.
Задержка будет составлять в районе 15 секунд .
4. Поставьте галочку Игнорировать рекомендации по настройкам потокового сервиса.Разрешение видео при трансляции на twitch
Дело всё в том, что 6000 кб/c для трансляции современный игр на твиче, особенно шутеров, слишком мало, поэтому имеет смысл уменьшать выходное разрешение видео, чтобы сэкономить битрейт. За счёт этого можно улучшить качество картинки и сократить количество блочностей в видео.
👌 Оптимальные разрешения для стрима динамичных игр в 60 фпс при сохранении чёткости изображения:
✔️ 1664x936, 1600x900, 1536x864
1280x720 также можно рассматривать, особенно, если у вас слабая видеокарта, но картинка будет слишком размытой.
- Для стрима игр с низким количеством движений лучше использовать разрешение 1920x1080.
- Если у вас 2К или 4K монитор, то я крайне не рекомендую стримить в исходном разрешении на твич по вышесказанной причине.
☝️ В Фильтре масштабирования выберите метод ланцоша , что позволит повысить чёткость картинки при масштабировании и сгладить "лесенки"( алиасинг ) на диагональных линиях.Подробней о разрешении для twitch вы можете узнать в моем видео:
Настройки аудио
Следующий пункт – «Аудио». Здесь вы можете подключить несколько аудио устройств для воспроизведения в трансляции, выбрать качество, определить количество каналов, задать задержку включения и выключения микрофона.
Аудио битрейт для стрима должен также отличатся в зависимости от вашего разрешения, иначе звук может лагать. Рекомендую следующие значения аудио битрейта:
240p (426 x 240) - 32 kbps (mono)
270p (480x270) - 40 kbps (mono)
360p (640x360) - 48 kbps
480p (854x480) - 64 kbps
540p (960x540) - 96 kbps
720p (1280x720) - 128 kbps
1080p (1920x1080) - 128 kbpsПри стриминге на низких разрешениях (до 720) можно попробовать и более высокий аудиобитрейт, экспериментируйте.
Многопоточность
Использовать более одного потока для обработки отправляемых кадров и получаемых пакетов. Это может помочь на медленных процессорах, но будет использоваться больше системных ресурсов в целом. Отрицательно повлияет на производительность быстрых процессоров.
Отключить.В этом руководстве я поделюсь подробными настройками кодировщика Nvidia NVENC H.264 (new) в OBS для получения наилучшего качества картинки во время проведения трансляции на Twitch, а также предоставлю достоверное определение для каждого параметра.
Настройки для трансляций на YouTube представлены в данной статье .
Несмотря на то, что информации может показаться довольно много, это всего лишь треть от исходного материала, чтобы сделать статью более доступной для восприятия.
Статья создана на основе огромного количества изученного материала, в том числе сведений из научных работ и публикаций, а также анализе субъективной (визуальной) и объективной оценки данных.Максимум кадров-ссылок.
Опция определяет количество референсных (опорных) кадров, на которые могут ссылаться динамические кадры при межкадровом сжатии.
Рекомендую использовать не более 4.
Большие значения используют для анимационного или статичного видео, где большое количество повторяющихся кадров, что дает незначительное улучшение качества.Мониторинг нагрузки
Отследить нагрузку на кодировщик можно в диспетчере задач в разделе производительность, где нужно выбрать графический процессор.
Videо Encode и есть нагрузка на кодировщик при стриме или записи видео.
Часто такое случается, что диспетчер задач не корректно отображает нужные данные, и требуется вручную указать нужный кодировщик.
Это является основным источником для мониторинга нагрузки на кодировщики при его настройке, чтобы избежать его перегрузку.
Это очень важно и потребуется при дальнейшей настройке, чтобы подобрать наиболее оптимальные параметры.Тестирование производительности и нагрузка на кодировщик
Запустите трансляцию и откройте статистику -> нажмите «Вид» -> «Статистика» следите за показаниями пропуска кадров при рендеринге, кодировании и сети процент пропуска в скобках не должен превышать (0.2%) желтого или красного значения, а в идеале должен быть (0.0%).
Проверка нагрузки на процессор в диспетчере задач Windows 10 нажатием клавиш CTRL + ALT + DEL . Достаточно спорный вопрос какая идеальная нагрузка на процессор должна быть? Всё зависит от сложности задачи и нагрузки на процессор другими приложениями.
Уникальный опыт доступен благодаря ВК группе «OBS Studio | Open Broadcaster».
Настройка первого стрима
Теперь создадим нашу первую сцену с игрой и нашей веб-камерой. Для начала слева внизу нажимаем на плюс и создаем первую сцену.
Правее находятся источники, которые мы будем постепенно заполнять.
Начнем с добавления игры, которую будем транслировать. Нажимаем в источниках «плюс», выбираем «Захват игры».
В пункте «Режим» ставим «Захват отдельного окна». В будущем при выведении чата на экран это поможет его отобразить на трансляции.
В пункте «Окно» выбираем уже запущенную на фоне игру и нажимаем «ОК».
Далее нам необходимо добавить веб-камеру. В источниках выбираем пункт «Устройства захвата видео» и откроется окно настройки.
Выбираем устройство, выставляем желаемое разрешение и количество FPS для вашей камеры.
В основном окне OBS задаем размер и расположение картинки с веб-камеры. При зажатом ALT можно кадрировать картинку.
Теперь добавим в источники свой микрофон. Там же в плюсике "Источники" выбираем «Захват входного аудиопотока», из выпадающего списка находим микрофон и подтверждаем.
Если сильно фонит и захватывает все посторонние шумы, воспользуйтесь фильтрами и шумоподавлением.
Каждому придется подбирать настройки самостоятельно, поскольку микрофон микрофону рознь. И не забудьте отключить лишние источники аудио, иначе будет неприятное эхо.
Базовые настройки для создания первой трансляции я вам рассказал. В следующий раз я объясню, как подключить донат-систему, отобразить чат и покажу интересные программы для интерактива на ваших стримах.
В этой статье пойдет речь о настройке кодировщика Amd Advanced Media Framework в OBS.
Сразу хочу отметить, чтобы получить приемлемое качество картинки, вам придётся самостоятельно подбирать определенные параметры в зависимости от типа контента, который вы планируете стримить или записывать.
Использование кодировщика от amd в основном подходит для локальной записи видео, т.к в техническом плане кодировщик малоэффективен и сильно уступает кодировщикам nvenc или x264, т.к AMF банально не поддерживает более сложные алгоритмы сжатия видео и является менее ресурсоэффективным.
За счёт высокого битрейта при записи видео можно нивелировать этот недостаток, получая относительно хорошее качество, но когда речь идет о записи видео или проведении трансляции при ограниченном битрейте, то кодировщик предоставляет крайне низкое качество видео.
Поэтому, если вас убеждали о качественной картинке при стриме через видеокарту Radeon, то это всего лишь сказки.
Стримить с помощью кодировщика AMF я могу порекомендовать только лишь в том случае, если у вас просто нет других альтернатив.
Таким образом, если в будущем вы планируете заниматься стримингом или записывать игровые ролики, то переход на видеокарту nvidia или покупка производительного процессора для вас будут неизбежны, чтобы использовать более эффективный кодировщик.Настройка AMD AMF H.264/AVC при использовании StreamFX
Если вы не хотите тратить время на изучение всех параметров и их настройки, то рекомендую использовать более простое и эффективное решение.
Кодировщик
NVENC H.264 (new) - это обновленный и более производительный кодировщик, доступный с ☝️ 23 версии OBS.
Главное его отличие от старой версии NVENC H.264 (без new) - это значительное снижение влияния на производительность в играх (до 66%) при кодировании видео, т.к графическому процессору больше не требуется буферизировать кадры в оперативную память, а это стало реализовано внутри самой видеокарты за счёт использования видеопамяти, что гораздо более эффективно.Интервал ключевых кадров.
Этот параметр определяет, как часто будет кодироваться ключевой кадр в видео.
Оптимальное значение составляет 2 секунды.
Ключевой кадр (опорный) - это кадр, который содержит полные сведения об изображении, и при кодировании на него ссылаются динамические кадры, в которых отображаются только данные об изменении в последовательности изображений.Quick Sync
Также есть возможность кодирования трансляции через Quick Sync и встроенного видеоядра в процессоры Intel. Однако качество будет ниже среднего, хоть и снизится основная нагрузка на процессор. Quick Sync - технология аппаратного ускорения кодирования и декодирования видео, встроенная в некоторые процессоры компании Intel.
Для включения технологии необходимо зайти в BIOS и изменить пункт мульти-монитора в разделе встроенного видеоядра на Enable. На разных материнских платах название может отличаться. Далее настройка аналогичная как для стриминга через процессор.
Профиль
Профиль определяет, какие комплекты возможностей может использовать кодировщик для сжатия видео, для обеспечения совместимости при его воспроизведении на устройствах, которые имеют разные возможности декодирования.
High профиль позволяет кодировщику использовать больше доступных функций для сжатия видео, что напрямую улучшает его качество и степень сжатия (размер).
По факту, те функции, которые доступны в высоком профиле, кодировщик AMF не поддерживает, но хуже от этого не станет.Фильтр деблокинга
Фильтр деблокинга улучшает визуальное качество и уменьшает артефакты блочностей в видео.
Следует включить.
Выберите четверть и пол пиксельная.Стриминг через видеокарты AMD AVC Encoder
Стриминг через видеокарты AMD. Здесь есть тоже свои пресеты, в которых достаточно поменять битрейт на желаемый под ваше разрешение.
Если перейти в режим просмотра «Эксперт», то можно максимально детально настроить кодер под свои нужды. Однако я на этом заострять внимание не буду, так как, во-первых, это растянет обзор на длинную простыню, а во-вторых – мало кто использует видеокарты AMD для стриминга.
CQP (Constant Quantization Parameter) – постоянный параметр квантования.
Суть этого метода заключается в том, что видео будет кодироваться с постоянным качеством в независимости от сложности видеофрагментов.
CQ (Constant Quantization) – параметр квантования.
Это определяющий параметр для количества выделяемого битрейта, который будет распределяться пропорционально сложности сцен в пределах заданного параметра квантования для получения желаемого качества видео.
Данный метод кодирования лучше всего подходит для локальной записи видео, где важно однородное качество видеоданных, а не их конечных объем.
Есть еще похожий по принципу метод кодирования CRF (Constant Rate Factor). Он чуть более эффективный, но доступен для кодировщика x264.Степень сжатия определяется двумя ползунками.
I-кадр QP определяет степень квантования для макроблоков в ключевом кадре.
P-кадр QP - для предугаданного кадра, то есть для p-frame.
Еще не хватает параметра квантования для двунаправленного кадра, он же b-frame, но они не поддерживаются кодировщиком.
Для большинства пользователей лучшего всего устанавливать одинаковые значения, для i и p – кадра, чтобы получить однородное качество.➜ Чем ниже значение параметра квантования, тем лучше будет качество видео и меньше степень сжатия. Однако размер видеоданных будет увеличиваться.
➜ Чем выше значение, тем качество будет хуже, а степень сжатия выше, но размер видео будет меньше.
Оптимальными значениями для параметров квантования являются от 16 до 30 единиц для получения высокого качества.Раздел трансляция
1. Сервис YouTube - RTMPS
2. Cервер Primary YouTube ingest server (Основной сервер).
Вы можете сменить сервер на Backup YouTube ingest server (Резервный), если у вас происходят пропуски кадров и другие сетевые проблемы.
3. Получить ключ потока можно нажав на кнопку " Получить ключ потока ".
Запустится браузер и вас переадресует в Творческую студию/ Прямые Трансляции, где вы и сможете найти Ключ трансляции, либо создать новый.Для трансляции установите режим Малая задержка .
Это пригодится в дальнейшем, чтобы получить более высокое качество.
Задержка будет составлять в районе 15 секунд .
4. Поставьте галочку Игнорировать рекомендации по настройкам потокового сервиса.Данные наполнителя
Включение данных наполнителей позволяет кодировщику сохранять, по крайней мере, целевой Битрейт, заполняя оставшееся пространство в последовательности с пустой информации.
Отключить.Оптимизация системы с использованием х264
Преобразование OpenCL
Преобразует кадр на GPU, используя OpenCL вместо DirectCompute.
Отключить.Предустановка качества
Это шаблоны настроек, в которых указано, какие опции и параметры будет использовать кодировщик для сжатия видео.
Выбор пресета существенно влияет на качество видео и нагрузку на кодировщик.
Однозначно рекомендую выбирать пресет Качество, чтобы получить максимально возможное качество картинки, но обязательно убедитесь, что нет перегрузов кодировщика.
Если кодировщик загружен под 100%, чтобы его разгрузить, требуется изменить пресет, либо уменьшить выходное разрешение видео или частоту кадров.
Пресеты Скорость и Баланс гораздо менее эффективны, т.к кодировщик не будет использовать более сложные функции для сжатия видео.Пресет Скорость. При кодировании используются только блоки 4x4 и 16x16 при межкадровом сжатии, что крайне малоэффективно.
Пресет Качество. Кодировщик использует адаптивные блоки 8x8, что уже очень хорошо, но нагрузка на кодировщик существенно увеличивается.
Пресет Скорость. При кодировании используются только блоки 4x4 и 16x16 при межкадровом сжатии, что крайне малоэффективно.
Кодировщик AMF не поддерживает b-кадры и преобразование пространственных блоков 8x8 и 4x4.
Это всё говорит о том, что кодировщик весьма примитивен.Битрейт
Битрейт определяет объём закодированной информации, передаваемой за единицу времени.
Рекомендуемый битрейт для твича составляет 6000 кб/с, макс. 8000 кб/с и 8500 макс. возможный включая аудио.
Если вы не являетесь аффилированным стримером (компаньоном), тогда лучше использовать битрейт ✔️ 6000 кб/с и ниже, т.к на трансляции у зрителей чаще всего не будет возможности выбора других разрешений с меньшим битрейтом.Это опция называется транскодирование видео, которое в приоритете предоставляется компаньонам и всегда партнерам твича .
То есть серверы твича будут кодировать ваш видеопоток в несколько меньших разрешениях с меньшим битрейтом, чтобы он был более доступным.
Если ваш стрим не транскодируется, то вы потенциально можете терять зрителей, т.к зрители с медленным интернет соединением не смогут запустить ваш стрим, либо у них могут возникнуть проблемы с воспроизведением (буферизация видео), т.к проигрыватель в браузере не сможет переключиться на подходящее разрешение с меньшим битрейтом, ведь их просто нет.Поэтому для начинающего стримера важно стать компаньоном твича, чтобы получить приоритет для транскодирования трансляции.
Основное описание параметров x264
- Управление битрейтом - параметры работы битрейта:
- CBR - постоянный битрейт, предназначен в основном для трансляций.
- VBR - переменный битрейт, используется для записи.
- ABR - средний битрейт;
- CRF - вариация постоянного битрейта определяется отдельным CRF значением. СRF. Изначально имеет значение 23, можно изменять от 0 до 51, когда 0 - лучшее качество изображения, а 51 - худшее.
- определённое количество данных отправляемых в сеть либо используемых для записи
- установка значения буфера, по умолчанию должен быть равен битрейту или в 2 раза больше.
- параметр, отвечающий за интервал ключевых кадров. Ключевой кадр отвечает за начальную и конечную точку между более сжатыми кадрами и является опорным кадром для всех последующих кадров. Для платформ Twitch, Youtube нужно выставить на 2.
- предустановка, определяющая скорость кодирования и степень использования процессора (выше значение = меньше нагрузка). Изначально установлена veryfast. Самая быстрая скорость у ultrafast, но и самое худшее качество кодирования. Самая медленная скорость у placebo, как и самое лучшее качество кодирования. Не каждый процессор может нормально работать даже с fast, поэтому для обладателей медленных процессоров veryfast или ultrafast- самый оптимальный выбор.
- high - высокий профиль - не устанавливает ограничений кодировщику. Цветовое пространство с потерей качества.
- main - основной профиль устанавливает ограничения кодировщику --no-8x8dct --cqm flat. Цветовое пространство с потерей качества.
- baseline - базовый профиль - устанавливает ограничения кодировщику --no-8x8dct --bframes 0 --no-cabac --cqm flat --weightp 0. Цветовое пространство с потерей качества. Без интерлейсинга.
- параметр, определяющий оптимизацию видео для конкретных целей. По умолчанию не используется.
- поле для задания собственных настроек кодировщика, в данное поле пишутся специальные ключи, разделённые пробелом пример:
Тип битрейта
CBR - метод управления скоростью битрейта, при котором заданный битрейт не изменяется на протяжении всего видео или трансляции. Данный тип битрейта отлично подходит для трансляций, где необходима постоянная скорость передачи данных, так как при прямой трансляции видеоданные весьма уязвимы к резкому колебанию битрейта, что может негативно отразиться на качестве видео и вызвать проблемы при воспроизведении у некоторых зрителей.
Кодировщик AMF
По аналогии с кодировщиком Nvenc от Nvidia, Advanced Media Framework является аппаратным (физическим) компонентом в графическом процессоре видеокарты.
То есть, при кодировании или декодировании видео основная нагрузка ложится на отдельный компонент в графическом процессоре видеокарты.Разрешение
Для трансляций на Twitch
- Для трансляции динамичных игр используйте 1280x720 при 60 к/c.
Если вы хотите указать разрешение выше, то потребуется увеличить Максимальный QP, чтобы не выйти за рамки установленного битрейта в 6000 кб/с, но качество в динамике будет хуже. - Для трансляции игр с низким количеством движений вы можете увеличить разрешение до 1600x900 или 1664x936 и указать 30 к/c, что улучшит качество картинки на стриме за счёт экономии битрейта, но сделает её менее плавной.
Для YouTube для наилучшего качества
В отличие от twitch, ютуб еще раз сжимает видео после его получения серверами с высокой степенью сжатия для адаптации для платформы, соц.сетей и моб.устройств.
Качество будет зависеть от того, с помощью какого кодека ютуб будет обрабатывать трансляцию и это зависит от разрешения видео.
Нам необходимо, чтобы трансляция обрабатывалась более эффективный кодеком VP9, который доступен для 2К разрешения и выше.Если просто указать 1920x1080 60 к/c, то трансляция будет обрабатываться серверами менее эффективным кодеком AVC.
Качество будет гораздо хуже.Если указать разрешение 2560x1440 в выходном разрешении в OBS, то будут перегрузы кодировщика.
VBAQ
VBAQ (Variance Based Adaptive Quantization) - адаптивное квантование на основе дисперсии пикселей.
Зрительная система человека обычно менее чувствительна к артефактам в сильно текстурированной области. В режиме VBAQ используется дисперсия пикселей, чтобы указать сложность пространственной текстуры. Это позволяет выделить больше бит для более однородных областей за счёт уменьшения качества в более текстурированных. Включение такой функции приводит к субъективным улучшениям визуального качества.
На практике опция призвана уменьшить количество блочностей и артефактов в видео за счёт перераспределения битрейта, поэтому её следует включить.Метод кодирования.
Это параметры для контроля скорости битрейта, и какой тип битрейта будет использоваться при кодировании видео.
Параметры, которые требуется изменить.
➜ Если вы стримите на Twitch, то укажите битрейт 6000 кб/с.
➜ Для ютуба битрейт не ограничен, и всё зависит от макс. скорости вашего интернета. Отправной точкой для приемлемого качества можно считать от 12000 кб/с, но старайтесь указывать больше.
Я бы порекомендовал 25000 кб/с , если у вас хороший интернет.
➜ Для записи видео в высоком качестве измените Минимальное QP от 15 до 18, а Максимальное QP от 25 до 35, чтобы нивелировать низкую эффективность кодировщика за счёт высокого битрейта.
Более подробнее о данных параметрах можете почитать ниже.
Битрейт измените до 40000 кб/с.
Предустановка качества: Баланс .
Если вы не испытываете проблемы с перегрузом кодировщика, то измените пресет на Качество.HighMotionQualityBoost
HMQB - повышение качества изображения с быстрым движением.
Эта опция призвана улучшить качество при кодировании видео, но является эксклюзивной для графических процессоров AMD серии Navi (RDNA). AMD RX 5700 (XT / XT Anniversary).
По умолчанию, либо отключить.Читайте также: