Nvidia NVENC - Nvidia NVENC

Nvidia NVENC это особенность в Nvidia видеокарты, которые работают кодирование видео, выгружая эту ресурсоемкую задачу из ЦПУ к GPU. Он был введен с Кеплер -основан GeForce 600 серии в марте 2012 г.[1][2]

Кодировщик поддерживается многими программами потоковой передачи и записи, такими как Wirecast, Программное обеспечение Open Broadcaster (OBS) и Bandicam, а также работает с доля захват игры, который включен в программное обеспечение Nvidia GeForce Experience.[3][4][5]

Потребительский таргетинг GeForce видеокарты официально поддерживают не более 2-х одновременно кодирующих видеопотоков, независимо от количества установленных карт, но это ограничение можно обойти на Linux и Windows систем путем применения неофициальный патч к водители.[6] Профессиональные карты поддерживают от 2 до 21 одновременного потока на карту, в зависимости от модели карты и качества сжатия.[1]

Сопровождается NVDEC для видео расшифровка в SDK видеокодеков Nvidia.[1]

Версии

С момента появления первого графического процессора Kepler (GK104) NVENC претерпел несколько аппаратных изменений.[7]

Резюме NVENC[8][9]
Оборудование GPUH.264 (AVC)

(В H.264 NVENC всегда поддерживает B-кадр, максимальное разрешение 4096x4096 и максимальную глубину 8 бит)

H.265 (HEVC)
Поколение NVENCКодовое имя GPUNVENC на чипЦветностьКодирование без потерьЦветностьКодирование без потерьРазрешениеГлубина цветаB кадры
4:2:04:4:44:2:04:4:4
1-е поколениеGK1101даНетНетH.265 не поддерживается
GK107
GK106
GK104
2-е поколениеGM1080Энкодеры NVENC недоступны
GM1071дададаH.265 не поддерживается
3-е поколениеGM2081НетНет
GM206дададаY?[9] N?[8]Y?[9] N?[8]4096 х 40968 битНет
GM2042НетНет
GM200
4-е поколениеGP1080Энкодеры NVENC недоступны
GP1071дададададада8192 х 819210-битныйНет
GP106
GP104-2xx +2
GP104-1xx1
GP1022
GP10034096 х 4096
5-го поколенияGV10x8192 х 8192
6-го поколенияТУ1171
ТУ116да
ТУ106
ТУ104
ТУ102
7-го поколенияGA1041дададададада8192 х 819210-битныйда
GA102
A100[10]0Энкодеры NVENC недоступны

Первое поколение, Kepler GK1xx

Первое поколение NVENC, которое разделяют все Кеплер -на основе графических процессоров, поддерживает H.264 high-profile (YUV420, I / P / B frames, CAVLC / CABAC), H.264 SVC Temporal Encode VCE и Режим кодирования дисплея (DEM).

В документации NVidia указана пиковая пропускная способность кодировщика 8 × в реальном времени при разрешении 1920 × 1080 (где базовое «1 ×» равно 30 Гц). Фактическая пропускная способность зависит от выбранных предустановок, параметров и настроек, управляемых пользователем, а также от тактовых частот графического процессора / памяти. Опубликованный 8-кратный рейтинг достигается с помощью предустановки высокой производительности NVENC, которая жертвует эффективностью сжатия и качеством ради пропускной способности кодера. Высококачественный пресет работает значительно медленнее, но производит меньше артефакты сжатия.

Второе поколение, Maxwell GM107

Представлено с первым поколением Максвелл Архитектура, NVENC второго поколения добавляет поддержку высокопроизводительного профиля HP444 (YUV4: 4: 4, прогнозируемое кодирование без потерь) и увеличивает пропускную способность кодера до 16 раз в реальном времени, что соответствует примерно 1080p @ 480 Гц с предустановкой высокой производительности.)

Maxwell GM108 не поддерживает аппаратный кодировщик NVENC.

Третье поколение, Maxwell GM20x

Представленный с архитектурой Maxwell второго поколения, NVENC третьего поколения реализует алгоритм сжатия видео Высокоэффективное кодирование видео (a.k.a. HEVC, H.265), а также увеличивает пропускную способность кодировщика H.264 для покрытия 4K-разрешения при 60 Гц (2160p60). Однако он не поддерживает B-кадры для кодирования HEVC (просто I и P кадры ). Максимальный NVENC HEVC блок дерева кодирования (CU) размер равен 32 (стандарт HEVC допускает максимум 64), а его минимальный размер CU равен 8.

В кодировании HEVC также отсутствует Sample Adaptive Offset (SAO). Адаптивное квантование, упреждающее управление скоростью, адаптивные B-кадры (только H.264) и функции адаптивной GOP были добавлены с выпуском Nvidia Video Codec SDK 7. [11] Эти функции полагаются на ядра CUDA для аппаратного ускорения.

SDK 7 поддерживает две формы адаптивного квантования; Spatial AQ (H.264 и HEVC) и Temporal AQ (только H.264).

Карты потребительского уровня (GeForce) Nvidia и некоторые профессиональные карты нижнего уровня Quadro карты ограничены тремя одновременными заданиями кодирования. Карты Quadro более высокого уровня не имеют этого ограничения.

Четвертое поколение, Pascal GP10x

NVENC четвертого поколения реализует 10-битное аппаратное кодирование HEVC Main10. Он также удваивает производительность кодирования 4K H.264 и HEVC по сравнению с NVENC предыдущего поколения. Он поддерживает HEVC 8K, 4: 4: 4 субдискретизация цветности, кодирование без потерь, и выборочное адаптивное смещение (SAO).

В Nvidia Video Codec SDK 8 добавлена ​​эксклюзивная функция взвешенного прогнозирования Pascal (на основе CUDA). Взвешенное прогнозирование не поддерживается, если сеанс кодирования настроен с кадрами B (H.264).

Для кодирования HEVC нет поддержки B-кадров, а максимальный размер CU составляет 32 × 32.

NVIDIA GT 1030 и Mobile Quadro P500 - это чипы GP108, которые не поддерживают кодировщик NVENC. [1]

В графике для ноутбуков NVIDIA MX Graphics не включает NVENC, поскольку они основаны на чипе GM108 поколения Maxwell или GP108 поколения Pascal. [12] GeForce MX350 - это микросхема GP107, кодер NVENC которой отключен во время производства.

Пятое поколение, Volta GV10x / Turing TU117

Volta NVENC имеет такую ​​же производительность, как и NVENC Паскаля. [2]

Он не поддерживает B-кадры HEVC.

Шестое поколение, Turing TU10x / TU116

Шестое поколение NVENC реализует кодирование HEVC 8K со скоростью 30 кадров в секунду, поддерживает HEVC B-Frames и обеспечивает до 25% экономии битрейта для HEVC и до 15% экономии битрейта для H.264. Однако Nvidia GeForce GTX 1650 исключена из этого поколения, поскольку она использует Volta NVENC вместо Turing. Однако GTX 1650 Super использует движок Turing NVENC, поскольку он основан на TU116, а не на TU117, используемом в обычном GTX 1650. [13]

Седьмое поколение, Ampere GA10x

У Ampere по сути тот же двигатель Тьюринга NVENC. [14]

Поддержка операционной системы

Nvidia NVENC ГЛОТОК ядро должно поддерживаться драйвер устройства. Драйвер предоставляет один или несколько интерфейсы, (например, OpenMAX IL ) в NVENC. Доступ к ядру NVENC SIP можно получить только через проприетарный NVENC API (в отличие от open-source ВДПАУ API).

Он идет в комплекте с Nvidia's Драйвер GeForce.

NVENC доступен для операционных систем Windows и Linux.[1] В бесплатный драйвер для устройств в стиле модерн с открытым исходным кодом не поддерживает Nvidia NVENC.[15]

Поддержка прикладного программного обеспечения

Пропускная способность графического процессора

Сравнение пропускной способности кодирования[22]

ПотокиКодирование H.264 (1080p30)
GM204 (Тесла M6)18
GM107 (Тесла M10)28
GP104 (Тесла P4)24
ТУ104 (Тесла Т4)32
P10036
V10036

Смотрите также

Рекомендации

  1. ^ а б c d "NVIDIA VIDEO CODEC SDK". Разработчик NVIDIA. Nvidia. Получено 2017-11-12.
  2. ^ «Набор характеристик Максвелла: усовершенствованный Кеплер». АнандТех. 2014-02-18.
  3. ^ «Системные требования для NVIDIA GeForce Experience | GeForce | GeForce». www.geforce.com. Получено 2016-08-17.
  4. ^ «Технические характеристики Wirecast». telestream.net. Получено 2017-12-19.
  5. ^ "Open Broadcaster Software - индекс". obsproject.com. Архивировано из оригинал на 2019-03-23. Получено 2016-08-17.
  6. ^ "nvidia-patch". GitHub.
  7. ^ «S5613 - высокопроизводительное кодирование видео с использованием графических процессоров NVIDIA». Nvidia.
  8. ^ а б c «Матрица поддержки видеокодирования и декодирования графического процессора». Разработчик NVIDIA. 2016-11-09. Получено 2020-08-22.
  9. ^ а б c "NVIDIA VIDEO CODEC SDK". Разработчик NVIDIA. 2016-11-09. Получено 2020-08-22.
  10. ^ «Подробнее об архитектуре NVIDIA Ampere». Блог разработчиков NVIDIA. 2020-05-14. Получено 2020-08-31.
  11. ^ http://on-demand.gputechconf.com/gtc/2016/presentation/s6226-abhijit-patait-high-performance-video.pdf
  12. ^ [NVIDIA GeForce MX250 и MX230 - две «новые» графики для ноутбуков: https://newsbeezer.com/polandeng/nvidia-geforce-mx250-and-mx230-two-new-graphics-for-laptops/ ]
  13. ^ https://www.pcgamer.com/nvidia-geforce-gtx-1650-super-review/
  14. ^ https://www.nvidia.com/content/dam/en-zz/Solutions/geforce/ampere/pdf/NVIDIA-ampere-GA102-GPU-Architecture-Whitepaper-V1.pdf
  15. ^ «Матрица новых возможностей». Freedesktop.org.
  16. ^ Переход к видео: Adobe Premiere Pro помогает создателям контента работать быстрее благодаря экспорту с ускорением на GPU
  17. ^ Журнал изменений AVIDemux
  18. ^ "Аппаратное кодирование nvenc.c H.264 с использованием nvidia nvenc".
  19. ^ "QUADRO DESKTOP / QUADRO NOTEBOOK DRIVER RELEASE 375".
  20. ^ Выпущен HandBrake 1.2.0
  21. ^ Информация о MacroSystem Arabesk 8 от Casablanca Expert
  22. ^ https://www.nvidia.com/en-us/data-center/virtualization/resources/

внешняя ссылка