В этой статье я подробно объясню, почему при загрузке видео или проведении трансляции на YouTube качество картинки сильно отличается от оригинала, и как минимизировать потери качества изображения.
Все, о чем пойдет речь в этой статье, применимо как к загруженным видеороликам, так и к прямым трансляциям.
Кухня Youtube
Самое важное, что следует понимать, что после загрузки видео на YouTube или запуска трансляции происходит следующее:
1. Благодаря инфраструктуре по доставке медиаконтента CDN (Content Delivery Network) сервера получают видеоданные для их обработки, хранения и доставки.
2. На серверах, исходя из разрешения видео и частоты кадров, алгоритм определяет, каким кодеком будет сжато видео.
Видео или трансляция будут еще раз сжаты, чтобы сделать их более доступными для пользователей с различными устройствами, скоростью интернета, а также для последующего хранения на серверах.
Здесь как раз и кроется ключевой момент, от которого будет зависеть качество картинки на YouTube — кодек, с помощью которого сервера обработают видео или трансляцию.
Кодеки на Youtube
Чаще всего YouTube использует три кодека для сжатия видео.
- H.264/AVC — самый распространённый кодек, применяемый для видео с разрешением 1920×1080 и ниже.
- VP9 — более эффективный кодек, предоставляющий лучшее качество изображения при том же битрейте по сравнению с H.264/AVC.
- AV1 — еще более эффективный кодек, который недоступен при трансляции. Он пока применяется только для сжатия загруженных видео, так как требует значительных вычислительных серверных ресурсов для обработки.
Обычно кодек AV1 применяется для сжатия популярных видеороликов, намеренно получить его невозможно, алгоритмы делают это выборочно.
Да, это жёстко
Предположим, что мы запустили трансляцию на YouTube в разрешении 1920x1080 (Full HD) 60 к/с.
Для сжатия видеопотока серверами будет использован кодек H.264/AVC. Качество картинки оставит желать лучшего, в особенности, если это динамичное видео.
Несмотря на то, что H.264/AVC самый распространённый и эффективный кодек, проблема даже не в нём, а в высокой степени сжатия, с которой видео перекодируется серверами.
Если скачать одну из трансляций, битрейт которой составлял 25000 кбит/с и взглянуть на свойства файла с помощью MediaInfo, можно заметить, что битрейт теперь составляет 5961 кбит/с. Это указывает на сильную компрессию видеоданных.
Кроме того, если это трансляция динамичного контента, например, игры, а битрейт в программе для вещания указан слишком низкий, то всё станет еще хуже, поскольку качество исходных видеоданных изначально низкого качества!
Cекрет качественной картинки на YouTube
Чтобы добиться лучшего качества, необходимо, чтобы стрим или загруженное видео сжимались серверами с помощью кодека VP9.
Хотя степень сжатия видеоданных по-прежнему останётся высокой, кодек VP9 предоставляет заметно лучшее качество, чем AVC: более высокую детализацию и значительно меньше артефактов блочности, особенно в динамичных сценах.
Чтобы гарантированно получить кодек VP9, необходимо чтобы видео или трансляция имели разрешение 2К (QHD) или выше, например, 2560x1440.
Если точнее, загруженное видео должно быть в разрешении более Full HD (1920x1080), а трансляция в разрешении не менее QHD (2560x1440).
Имейте в виду, что для загруженного видео может потребоваться значительное время, чтобы оно было перекодировано с помощью VP9. Для трансляций это происходит в режиме реального времени.
Транскодирование
На YouTube всегда доступно транскодирование. Это означает, что стрим или видео будут иметь несколько копий видеодорожек с более низким разрешением и битрейтом, между которыми видеоплеер будет автоматически переключаться, анализируя скорость интернета и производительность устройства воспроизведения.
Это очень важная опция, которая предоставляется платформой для всех, и делает видео более доступным для воспроизведения на различных устройствах.
Более того, при использовании разрешения 2560x1440 и выше, трансляция или видео будут перекодированы не только в разных разрешениях, но еще и с помощью двух кодеков одновременно — VP9 и H.264/AVC (для видео может также применяться AV1). Это позволяет обеспечить максимальную совместимость и качество.
Пример всех доступных видео и аудиодорожек видеоролика Tokyo in 8K ULTRA HD хранящихся на CDN-серверах YouTube.
Всё это по-прежнему необходимо для того, чтобы сделать трансляцию или видео максимально доступными для воспроизведения у пользователей, устройства которых могут не поддерживать кодек VP9.
Битрейт имеет значение
Всегда следует придерживаться правила, которое работает не только для YouTube, но и в целом, при записи видео или трансляции.
«Чем более качественные исходные видео и аудио данные, тем меньше потерь качества при их дальнейшей обработке.»
То есть, чтобы уменьшить потери качества при загрузке видео или проведении трансляции, следует использовать максимально возможные настройки кодировщика, а также высокий битрейт.
Битрейт определяет объём закодированной информации, передаваемой за единицу времени. Больше битрейт - лучше качество.
Для битрейта на YouTube нет жестких ограничений для трансляций и загружаемых видео. Нельзя только загружать файлы размером более 256 Гб, а максимальная продолжительность видео должна составлять не более 12 часов.
Если, например, установить битрейт 25-50 Мбит/с для трансляции в 2K разрешении (QHD), то даже после сжатия видеоданных серверами YouTube качество картинки будет значительно выше, чем при использовании битрейта 8000 кбит/с.
Всё дело в том, что платформе предоставлены исходные видеоданные с высоким битрейтом, который позволяет сохранить высокую степень детализации в видео.
Однако стоит учитывать скорость и стабильность интернет-соединения, а также насколько насколько оправдано увеличение битрейта, поскольку визуальная разница будет уменьшаться с его ростом.
Кодировщики
Фаворитом на данный момент является аппаратный кодировщик NVIDIA NVENC благодаря его высокой ресурсоэффективности. Он способен обеспечить высокое качество изображения при минимальном влиянии на производительность.
Также себя отлично зарекомендовал аппаратный кодировщик Intel Quick Sync, которые доступен на процессорах Intel со встроенной графикой и видеокартах Intel ARC.
Масштабирование для получения кодека VP9
Масштабирование в OBS
Большинство для трансляций используют OBS Studio, так что для начала в программе не забудьте поставить галочку в разделе вещания «Игнорировать настройки потокового сервиса».
Для того, чтобы задать 2К разрешение в OBS, во вкладке видео необходимо вручную прописать выходное разрешения 2560x1440.
Если у вас 2K монитор, то это еще лучше, так как программе не придётся растягивать пиксели, что позволит гораздо более чёткую картинку.
В фильтре масштабирования укажите «Метод Ланцоша», что позволит улучшить четкость картинки при масштабировании.
Учтите, что с увеличением выходного разрешения увеличивается нагрузка на кодировщик, что может негативно отразиться на производительности и быстродействии игры при записи или трансляции.
Eсли у вас слабая видеокарта, или вы используйте кодировщик x264, который использует ресурсы центрального процессор, то, возможно, вам придется уменьшить настройки в OBS, либо вообще отказаться от масштабирования до 2K разрешения, если происходит перегрузка кодировщика.
Масштабирование за счёт YouTube
Существует также способ, с помощью которого можно масштабировать трансляцию до 2К разрешения за счёт ресурсов YouTube. Это снижает нагрузку на кодировщик и уменьшает влияние стрима на производительность системы.
Метод особенно полезен для владельцев Full HD мониторов и слабых ПК. Подробное описание метода вы найдете в отдельной статье.
Трансляция на Youtube будет работать в разрешении 1440p вне зависимости от разрешения, которое указано в OBS.
Битрейт для трансляций
Разумеется, можно воспользоваться битрейтом, предлагаемым в справке для прямых трансляций, но для получения высокого качества изображения битрейт следует указывать как можно больше.
Оптимальный битрейт для трансляции в 2K (QHD) разрешении составляет 12000 - 25000 кбит/с, при условии, что ваш интернет способен поддерживать указанную скорость потоковой передачи данных.
- от 25 000 кбит/с для динамичного контента (шутеры, RPG, гоночные симуляторы, экшены).
- от 12 000 кбит/с для контента с низким количеством движений (стратегии, MMO, МOBA, платформеры, спортивные симуляторы).
Технически, существует такой показатель как BPP (количество бит на пиксель) для расчёта оптимального битрейта. Для того, чтобы он соответствовал значению 0.1 BPP, для видео в разрешении 2560x1440 60 fps, требуется использовать битрейт 22118 кбит/с.
HLS протокол для трансляций в 4К
При использовании RTMP-протокола битрейт в OBS ограничен до 52 000 кбит/с, что более чем достаточно для высококачественных трансляций. Однако, если вы хотите использовать ещё более высокий битрейт, что актуально в основном для 4K разрешения, то можно запустить трансляцию через HLS протокол.
Учтите, что стабильность трансляции при использовании HLS-протокола может варьироваться и сильно зависит от качества интернет-соединения.
Битрейт для видеороликов
Для загружаемых видеороликов, аналогично как и для прямых трансляций, есть значения в справке «Рекомендуемые настройки кодирования», но для записи динамичных игр указанного битрейта недостаточно.
Если запись видео осуществляется в Full HD разрешении 60 fps и с такими же параметрами будет загружена на YouTube, то рекомендую использовать следующие значения:
- 12 000 - 25 000 кбит/с для записи игр с низким количеством движений (стратегии, MMO, МOBA, платформеры, спортивные симуляторы).
- 25 000 - 50 000 кбит/с для записи современных динамичных игр (шутеры, RPG, гоночные симуляторы).
2К / 4К разрешения:
- Для записи в 2К (QHD) 60 fps установите 25 — 100 Мбит/с.
- Для в 4К (UHD) 60 fps 50 - 200 Мбит/с.
☝️ Чем динамичнее контент, тем выше битрейт нужно указать для сохранения качества.
Этот битрейт вы указываете как при записи, так и в дальнейшем при рендеринге в видеоредакторе.
Масштабирование в видеоредакторе
Если у вас монитор с разрешением Full HD, записывать видео в разрешении 2K (QHD) вовсе не обязательно. Можно оставить разрешение 1920x1080, чтобы снизить нагрузку на кодировщик.
Если же ваш монитор 2K или 4K, то рекомендуется записывать видео в его исходном (нативном) разрешении.
В дальнейшем вы сможете указать 2K (QHD) разрешение при экспорте в программе для видеомонтажа.
Для аудио при записи видео и рендеринге следует указывать битрейт 320 кбит/с, так как аудиоданные на YouTube также будут сжаты.
Подписывайте на наше сообщество ВКонтакте, если еще этого не сделали! Здесь вы найдете еще больше полезного и интересного контента.
Youtube | Twitch | ВКонтакте | Поддержать автора