Нвидиа НВЕНК
Nvidia NVENC (сокращение от Nvidia Encoder) [ 1 ] — это функция Nvidia видеокарт , которая выполняет кодирование видео , перекладывая эту трудоемкую задачу с центрального процессора на выделенную часть графического процессора . Он был представлен в Kepler на базе серии GeForce 600 в марте 2012 года (GT 610, GT620 и GT630 — это архитектура Fermi). [ 2 ] [ 3 ]
Кодировщик поддерживается во многих программах потокового вещания и записи, таких как vMix , Wirecast , Open Broadcaster Software (OBS) и Bandicam , а также в приложениях для редактирования видео, таких как Adobe Premiere Pro или DaVinci Resolve . Он также работает с функцией захвата игр Share , которая включена в программное обеспечение GeForce Experience от Nvidia. [ 4 ] [ 5 ] [ 6 ]
До марта 2023 года потребительские видеокарты GeForce официально поддерживают не более 3-х одновременно кодирующих видеопотоков независимо от количества установленных карт, но это ограничение можно обойти в системах Linux и Windows , применив неофициальный патч к драйверам . Это также разблокирует NVIDIA Frame Buffer Capture (NVFBC) , быстрый API захвата рабочего стола , который использует возможности графического процессора и его драйвера для ускорения захвата. [ 7 ] Профессиональные карты поддерживают от 3 до неограниченных одновременных потоков на карту, в зависимости от модели карты и качества сжатия. [ 2 ] В 2023 году ограничения были ослаблены, что позволило одновременно кодировать до 5 видеопотоков. [ 8 ] С января 2024 года базовым стало одновременное кодирование 8 видеопотоков. [ 9 ]
Чипы Nvidia также оснащены встроенным декодером NVDEC (сокращение от Nv idia Dec oder), позволяющим переносить декодирование видео с ЦП на выделенную часть графического процессора. [ 2 ]
Версии
[ редактировать ]NVENC претерпел несколько аппаратных изменений с момента своего появления с первым графическим процессором Kepler (GK104). [ 10 ]
Аппаратное обеспечение графического процессора | H.264 (AVC)
(В H.264 NVENC всегда поддерживает B Frame, максимальное разрешение 4096x4096 и максимальную глубину 8 бит) |
H.265 (HEVC) | АВ1 | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Поколение NVENC | Кодовое имя графического процессора | NVENC на чип | Цветность | Кодирование без потерь | Цветность | Кодирование без потерь | Разрешение | Глубина цвета | Б-кадры | АВ1 | ||||||||||||
4:2:0 | 4:4:4 | 4:2:0 | 4:4:4 | |||||||||||||||||||
1-е поколение | ГК110 | 1 | H.265 не поддерживается | AV1 не поддерживается | ||||||||||||||||||
ГК107 | ||||||||||||||||||||||
ГК106 | ||||||||||||||||||||||
ГК104 | ||||||||||||||||||||||
2-е поколение | GM107 | 1 | H.265 не поддерживается | AV1 не поддерживается | ||||||||||||||||||
3-е поколение | ГМ206 | 1 | И? [ 12 ] Н? [ 11 ] | 4096 х 4096 | 8-битный | |||||||||||||||||
ГМ204 | 2 | |||||||||||||||||||||
ГМ200 | ||||||||||||||||||||||
4-е поколение | ГП108 | 0 | Кодеры NVENC недоступны. | |||||||||||||||||||
ГП107 | 1 | 8192 х 8192 | 10-битный | AV1 не поддерживается | ||||||||||||||||||
ГП106 | ||||||||||||||||||||||
ГП104-2хх+ | 2 | |||||||||||||||||||||
ГП104-1хх | 1 | |||||||||||||||||||||
ГП102 | 2 | |||||||||||||||||||||
ГП100 | 3 | 4096 х 4096 | ||||||||||||||||||||
5-е поколение | ГВ10х | 8192 х 8192 | ||||||||||||||||||||
ТУ117 | 1 | |||||||||||||||||||||
6-е поколение | ТУ116 | |||||||||||||||||||||
ТУ106 | ||||||||||||||||||||||
ТУ104 | ||||||||||||||||||||||
ТУ102 | ||||||||||||||||||||||
7-е поколение | GA107 | 1 | 8192 х 8192 | 10-битный | Только декодирование | |||||||||||||||||
GA106 | ||||||||||||||||||||||
GA104 | ||||||||||||||||||||||
GA102 | ||||||||||||||||||||||
GA100 [ 13 ] | 0 | Кодеры NVENC недоступны. | ||||||||||||||||||||
8-е поколение | AD107 | 1 | 8192 х 8192 | 10-битный | ||||||||||||||||||
AD106 | ||||||||||||||||||||||
АД104-250 | ||||||||||||||||||||||
АД104-400 | 2 | |||||||||||||||||||||
AD103 | ||||||||||||||||||||||
AD102 | ||||||||||||||||||||||
Поколение NVENC | Кодовое имя графического процессора | NVENC на чип | Цветность | Кодирование без потерь | Цветность | Кодирование без потерь | Разрешение | Глубина цвета | Б-кадры | АВ1 | ||||||||||||
4:2:0 | 4:4:4 | 4:2:0 | 4:4:4 |
Первое поколение, Кеплер GK1xx
[ редактировать ]Первое поколение NVENC, которое используется всеми графическими процессорами на базе Kepler , поддерживает высокопрофильный H.264 (YUV420, кадры I/P/B, CAVLC/CABAC), H.264 SVC Temporal Encode VCE и режим кодирования дисплея . (нем. марка).
В документации NVidia указывается, что пиковая пропускная способность кодировщика составляет 8× в реальном времени при разрешении 1920×1080 (где базовый уровень «1×» равен 30 Гц). Фактическая пропускная способность зависит от выбранной предустановки, управляемых пользователем параметров и настроек, а также тактовой частоты графического процессора/памяти. Опубликованный рейтинг 8× достижим с использованием высокопроизводительной настройки NVENC, которая жертвует эффективностью и качеством сжатия ради пропускной способности кодера. Предустановка высокого качества работает значительно медленнее, но создает меньше артефактов сжатия.
Второе поколение, Maxwell GM107.
[ редактировать ]первого поколения Представленное в архитектуре Maxwell , NVENC второго поколения добавляет поддержку высокопроизводительного профиля HP444 (YUV4:4:4, прогнозирующее кодирование без потерь) и увеличивает пропускную способность кодировщика до 16 раз в реальном времени, что соответствует примерно 1080p @ 480. Гц с предустановкой высокой производительности.
Maxwell GM108 не поддерживает аппаратный кодировщик NVENC.
Третье поколение, Maxwell GM20x
[ редактировать ]Представленный архитектурой Maxwell второго поколения, NVENC третьего поколения реализует алгоритм сжатия видео High Efficiency Video Coding (также известный как HEVC, H.265), а также увеличивает пропускную способность кодера H.264 для покрытия разрешения 4K с частотой 60 Гц (2160p60). Однако он не поддерживает B-кадры для кодирования HEVC (только кадры I и P ). Максимальный размер единицы дерева кодирования (CU) NVENC HEVC составляет 32 (стандарт HEVC допускает максимум 64), а минимальный размер CU — 8.
В кодировании HEVC также отсутствует адаптивное смещение выборки (SAO). Адаптивное квантование, управление скоростью с упреждением, адаптивные B-кадры (только H.264) и функции адаптивной GOP были добавлены с выпуском Nvidia Video Codec SDK 7. [ 14 ] Эти функции полагаются на ядра CUDA для аппаратного ускорения.
SDK 7 поддерживает две формы адаптивного квантования; Пространственный AQ ( H.264 и HEVC) и временной AQ (только H.264).
Карты потребительского уровня (GeForce) от Nvidia и некоторые профессиональные карты Quadro более низкого уровня ограничены тремя одновременными заданиями кодирования. Карты Quadro более высокого класса не имеют этого ограничения.
Четвертое поколение, Паскаль GP10x
[ редактировать ]NVENC четвертого поколения реализует 10-битное аппаратное кодирование HEVC Main10. Он также удваивает производительность кодирования 4K H.264 и HEVC по сравнению с NVENC предыдущего поколения. 4:4:4 Он поддерживает HEVC 8K, субдискретизацию цветности , кодирование без потерь и адаптивное смещение выборки (SAO).
В Nvidia Video Codec SDK 8 добавлена эксклюзивная функция взвешенного прогнозирования Pascal ( на основе CUDA ). Взвешенное прогнозирование не поддерживается, если сеанс кодирования настроен с использованием B-кадров (H.264).
нет поддержки B-Frame Для кодирования HEVC , а максимальный размер CU составляет 32×32.
NVIDIA GT 1030 и Mobile Quadro P500 — это чипы GP108, которые не поддерживают кодировщик NVENC. [ 11 ]
В графике для ноутбуков NVIDIA MX Graphics не включает NVENC, поскольку они основаны на чипе GM108 поколения Maxwell или GP108 поколения Pascal. [ 15 ] GeForce MX350 — это чип GP107, кодировщик NVENC которого отключен во время производства.
Пятое поколение, Volta GV10x/Turing TU117
[ редактировать ]Volta NVENC имеет производительность, аналогичную NVENC Паскаля. [1]
Он не поддерживает B-кадры HEVC.
В мобильной графике, как и в большинстве других видеокарт серии GeForce MX, GeForce MX450 не поддерживает NVENC, поскольку это чип TU117, аппаратный кодер которого постоянно отключен при его производстве. Однако GeForce MX550 поддерживает NVENC, поскольку его аппаратный кодировщик остается включенным на уровне производства.
Шестое поколение, Тьюринг TU10x/TU116
[ редактировать ]NVENC шестого поколения реализует кодирование HEVC 8K со скоростью 30 кадров в секунду, B-кадры HEVC и B-кадры HEVC в качестве эталона (с поддержкой каждого и среднего режимов). [ 16 ] ) и Альфа HEVC [ 17 ] поддерживает и обеспечивает экономию битрейта до 25 % для HEVC и до 15 % экономии битрейта для H.264. Однако первоначальный выпуск Nvidia GeForce GTX 1650 не был исключен из этого поколения, поскольку вместо Turing использовался Volta NVENC. В 2020 году Nvidia обновила кодировщик NVENC карт GTX 1650, чтобы также использовать движок Тьюринга. [ 18 ] В GTX 1650 Super используется двигатель Turing NVENC, поскольку он основан на TU116, а не на TU117, использовавшемся в оригинальной GTX 1650. [ 19 ]
Седьмое поколение, Ampere GA10x
[ редактировать ]У Ampere по сути тот же движок поколения NVENC, что и у Turing. [ 20 ] Единственное существенное отличие — NVDEC получила поддержку декодирования AV1 (с зернистостью пленки).
Что касается мобильной графики начального уровня, GeForce MX570 на базе чипа GA107 выпускается в двух версиях, одна из которых (GeForce MX570 A) имеет аппаратный декодер и кодировщик, постоянно отключенные во время производства.
Восьмое поколение, Ада Лавлейс AD10x
[ редактировать ]Nvidia анонсировала NVENC следующего поколения с аппаратным кодером AV1 с фиксированной функцией 8K, 10 бит, 60 кадров в секунду, в графических процессорах Ada Lovelace . [ 21 ] [ 22 ]
Поддержка операционной системы
[ редактировать ]Ядро Nvidia NVENC SIP должно поддерживаться драйвером устройства . Драйвер предоставляет один или несколько интерфейсов (например, OpenMAX IL ) для NVENC. Доступ к ядру NVENC SIP возможен только через собственный NVENC API (в отличие от API VDPAU с открытым исходным кодом ).
Он поставляется в комплекте с драйвером GeForce от Nvidia .
NVENC доступен для операционных систем Windows и Linux. [ 2 ] Бесплатный драйвер устройства nouveau с открытым исходным кодом не поддерживает Nvidia NVENC. [ 23 ]
Поддержка прикладного программного обеспечения
[ редактировать ]- В Adobe Premiere Pro добавлена поддержка NVENC в версии 14.2 в мае 2020 г. [ 24 ]
- AJA Бридж Live [ 25 ]
- Avidemux поддерживает NVENC как минимум с 2016 года в формате H.264 или H.265. [ 26 ]
- Бандикут
- CyberLink PowerDirector поддерживает NVENC начиная с бета-версии GM7 3424 версии 16 (2016 г.). [ 27 ]
- DaVinci Resolve Studio при экспорте видео в H.264 или H.265 [ 28 ]
- FFmpeg поддерживает NVENC с 2014 года. [ 29 ] и поддерживается драйверами Nvidia [ 30 ]
- HandBrake поддерживает NVENC начиная с версии 1.2.0 (декабрь 2018 г.) для H.264 и H.265. [ 31 ]
- HitFilm express/pro при предварительном просмотре видео на временной шкале или экспорте видео в формате H.264 или H.265. [ 32 ]
- Jellyfin поддерживает NVENC для транскодирования в реальном времени. [ 33 ]
- Логитек захват
- MacroSystem BogartSE поддерживает экспорт NVENC, начиная с версии 9.4 (октябрь 2017 г.), и UHD-дисков , начиная с версии 11.3 (октябрь 2019 г.). кодирование [ 34 ]
- Медиакодер
- Открытое программное обеспечение для вещания (OBS)
- Выстрел
- СтаксРип
- Турбо Игра
- Видкодер
- ВидеоПроцесс
- vMix поддерживает NVENC как минимум с 2016 года, а поддержка H.265 и AV1 начинается с версии 27 (январь 2024 года). [ 35 ]
Пропускная способность графического процессора
[ редактировать ]Этот раздел может потребовать очистки Википедии , чтобы соответствовать стандартам качества . Конкретная проблема заключается в следующем: устаревшая и неудавшаяся проверка, как говорит наш друг из июня 2022 года. У Tom's Hardware есть тест 2023 года на H.264 и H.265 для нескольких последних моделей, возможно, используйте его. ( январь 2024 г. ) |
Сравнение пропускной способности кодирования [ 36 ] [ нужна ссылка ]
Потоки | Кодирование H.264 (1080p30) |
---|---|
GM204(Тесла М6) | 18 |
GM107(Тесла М10) | 28 |
GM200(Тесла М40) | 18 |
GM204(Тесла М60) | 36 |
ГП104(Тесла П4) | 24 |
ТУ104(Тесла Т4) | 32 |
Р100 | 36 |
В100 | 36 |
См. также
[ редактировать ]- Intel Quick Sync Video , эквивалентное ядро SIP от Intel
- Video Coding Engine , эквивалент ядра SIP AMD до 2017 года.
- Video Core Next — видеоядро AMD, сочетающее в себе функциональность Video Coding Engine и Unified Video Decoder.
- Nvidia PureVideo , аппаратное декодирование видео
- Список всех графических процессоров Nvidia
- Нвидиа НВДЕК
Ссылки
[ редактировать ]- ^ «Видеокарты серии NVIDIA GeForce RTX 40» . NVIDIA . Проверено 28 февраля 2024 г.
- ^ Перейти обратно: а б с д «SDK ВИДЕОКОДЕКА NVIDIA» . Разработчик NVIDIA . Нвидиа . 23 августа 2013 года . Проверено 12 ноября 2017 г.
- ^ «Набор функций Максвелла: уточненный Кеплер» . АнандТех . 18 февраля 2014 г.
- ^ «Системные требования для NVIDIA GeForce Experience | GeForce | GeForce» . www.geforce.com . Проверено 17 августа 2016 г.
- ^ «Технические характеристики Wirecast» . Телестрим.нет . Проверено 19 декабря 2017 г.
- ^ «Открытое программное обеспечение для вещания – Индекс» . obsproject.com . Архивировано из оригинала 23 марта 2019 года . Проверено 17 августа 2016 г.
- ^ «nvidia-патч» . Гитхаб .
- ^ Шилов Антон (24 марта 2023 г.). «Nvidia снимает некоторые ограничения на кодирование видео с потребительских графических процессоров» . томсаппаратное обеспечение . Проверено 26 марта 2023 г.
- ^ «Матрица поддержки кодирования и декодирования видео на графическом процессоре» .
- ^ «S5613 — Высокопроизводительное кодирование видео с использованием графических процессоров NVIDIA» . Нвидиа .
- ^ Перейти обратно: а б с «Матрица поддержки кодирования и декодирования видео на графическом процессоре» . Разработчик NVIDIA . 9 ноября 2016 года . Проверено 22 августа 2020 г.
- ^ Перейти обратно: а б «SDK ВИДЕОКОДЕКА NVIDIA» . Разработчик NVIDIA . 9 ноября 2016 года . Проверено 22 августа 2020 г.
- ^ «Подробное описание архитектуры NVIDIA Ampere» . Блог разработчиков NVIDIA . 14 мая 2020 г. Проверено 31 августа 2020 г.
- ^ http://on-demand.gputechconf.com/gtc/2016/presentation/s6226-abhijit-patait-high- Performance-video.pdf [ только URL-адрес PDF ]
- ^ «NVIDIA GeForce MX250 и MX230 – две «новые» видеокарты для ноутбуков» . Хорошие программы (на польском языке). 21 февраля 2019 г.
- ^ «Флаг эталонного режима B-Frame в ffmpeg nvenc содержит ошибку и не работает. · Проблема № 2374 · obsproject/obs-studio» . Гитхаб . Проверено 24 марта 2021 г.
- ^ Харрисон, Джон (30 января 2021 г.). "johnhe4/nvenc_h265_transparency" . Гитхаб . Проверено 24 марта 2021 г.
- ^ «Видеокарта NVIDIA GeForce GTX 1650» . NVIDIA . Проверено 24 марта 2021 г.
- ^ Уолтон, Джаред (23 ноября 2019 г.). «Обзор NVIDIA GeForce GTX 1650 Супер» . ПК-геймер . Проверено 24 марта 2021 г.
- ^ «Архитектура графического процессора NVIDIA Ampere GA102: RTX второго поколения» (PDF) . NVIDIA . Проверено 21 сентября 2022 г.
- ^ Грей, Джон (20 сентября 2022 г.). «Творчество со скоростью света: видеокарты серии GeForce RTX 40 обеспечивают двукратное увеличение производительности при 3D-рендеринге, искусственном интеллекте и экспорте видео для геймеров и авторов» . NVIDIA . Проверено 21 сентября 2022 г.
- ^ «SDK видеокодека NVIDIA» . NVIDIA . 23 августа 2013 года . Проверено 21 сентября 2022 г.
- ^ «Матрица функций в стиле модерн» . Freedesktop.org .
- ^ Тэк, Стэнли (19 мая 2020 г.). «Переход к видео: Adobe Premiere Pro помогает создателям контента работать быстрее благодаря экспорту с ускорением на графическом процессоре | Блог NVIDIA» . Официальный блог NVIDIA . Проверено 24 марта 2021 г.
- ^ «BRIDGE LIVE — это готовая система вещательного качества с малой задержкой» .
- ^ Журнал изменений AVIDEmux
- ^ Официальное сообщение форума CyberLink
- ^ «Форум Blackmagic • Просмотр темы – Davinci studio 16, NVENC недоступен» . forum.blackmagicdesign.com . Проверено 24 марта 2021 г.
- ^ «Аппаратное кодирование nvenc.c H.264 с использованием nvidia nvenc» .
- ^ «ДРАЙВЕР QUADRO DESKTOP/QUADRO НОУТБУК ВЕРСИЯ 375» .
- ^ Выпущен HandBrake 1.2.0.
- ^ сообщение на форуме сотрудника, в котором говорится, что существует проблема с тем, как программное обеспечение взаимодействует с кодировщиком, но в то же время говорится, что оно выходит из строя.
- ^ «Транскодинг | Желефин» .
- ^ Информация о MacroSystem Arabesk 8 от Casablanca Expert.
- ^ vMix 27 уже здесь!
- ^ «Ресурсы NVIDIA vGPU для проектирования и виртуализации» . NVIDIA . Проверено 24 марта 2021 г.