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]
Оборудование GPU | H.264 (AVC) (В H.264 NVENC всегда поддерживает B-кадр, максимальное разрешение 4096x4096 и максимальную глубину 8 бит) | H.265 (HEVC) | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Поколение NVENC | Кодовое имя GPU | NVENC на чип | Цветность | Кодирование без потерь | Цветность | Кодирование без потерь | Разрешение | Глубина цвета | B кадры | ||
4:2:0 | 4:4:4 | 4:2:0 | 4:4:4 | ||||||||
1-е поколение | GK110 | 1 | H.265 не поддерживается | ||||||||
GK107 | |||||||||||
GK106 | |||||||||||
GK104 | |||||||||||
2-е поколение | GM108 | 0 | Энкодеры NVENC недоступны | ||||||||
GM107 | 1 | H.265 не поддерживается | |||||||||
3-е поколение | GM208 | 1 | |||||||||
GM206 | Y?[9] N?[8] | Y?[9] N?[8] | 4096 х 4096 | 8 бит | |||||||
GM204 | 2 | ||||||||||
GM200 | |||||||||||
4-е поколение | GP108 | 0 | Энкодеры NVENC недоступны | ||||||||
GP107 | 1 | 8192 х 8192 | 10-битный | ||||||||
GP106 | |||||||||||
GP104-2xx + | 2 | ||||||||||
GP104-1xx | 1 | ||||||||||
GP102 | 2 | ||||||||||
GP100 | 3 | 4096 х 4096 | |||||||||
5-го поколения | GV10x | 8192 х 8192 | |||||||||
6-го поколения | ТУ117 | 1 | |||||||||
ТУ116 | |||||||||||
ТУ106 | |||||||||||
ТУ104 | |||||||||||
ТУ102 | |||||||||||
7-го поколения | GA104 | 1 | 8192 х 8192 | 10-битный | |||||||
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]
Поддержка прикладного программного обеспечения
- Adobe Premiere Pro добавлена поддержка NVENC в версии 14.2 в мае 2020 года. [16]
- Авидемукс поддерживает NVENC как минимум с 2016 года. [17]
- Bandicut
- Corel VideoStudio
- FFmpeg поддерживает NVENC с 2014 года,[18] и поддерживается драйверами Nvidia.[19]
- Ручной тормоз добавлена поддержка NVENC в версии 1.2.0 в декабре 2018 года. [20]
- Макросистема BogartSE поддерживает экспорт NVENC с версии 9.4 (октябрь 2017 г.) и UHD-диск кодировка с v11.3 (октябрь 2019 г.) [21]
- MediaCoder
- Программное обеспечение Open Broadcaster Software (OBS)
- StaxRip
- VideoProc
- XMedia Recode
Пропускная способность графического процессора
Сравнение пропускной способности кодирования[22]
Потоки | Кодирование H.264 (1080p30) |
---|---|
GM204 (Тесла M6) | 18 |
GM107 (Тесла M10) | 28 |
GP104 (Тесла P4) | 24 |
ТУ104 (Тесла Т4) | 32 |
P100 | 36 |
V100 | 36 |
Смотрите также
- Intel Quick Sync видео, Эквивалентное ядро SIP Intel
- Механизм кодирования видео, Эквивалентное ядро SIP AMD до 2017 г.
- Видео Ядро Далее, Видеоядро AMD, сочетающее в себе функции Механизм кодирования видео и Единый видеодекодер
- Nvidia PureVideo, аппаратное декодирование видео.
- NVIDIA GPU, Список графических процессоров Nvidia
Рекомендации
- ^ а б c d "NVIDIA VIDEO CODEC SDK". Разработчик NVIDIA. Nvidia. Получено 2017-11-12.
- ^ «Набор характеристик Максвелла: усовершенствованный Кеплер». АнандТех. 2014-02-18.
- ^ «Системные требования для NVIDIA GeForce Experience | GeForce | GeForce». www.geforce.com. Получено 2016-08-17.
- ^ «Технические характеристики Wirecast». telestream.net. Получено 2017-12-19.
- ^ "Open Broadcaster Software - индекс". obsproject.com. Архивировано из оригинал на 2019-03-23. Получено 2016-08-17.
- ^ "nvidia-patch". GitHub.
- ^ «S5613 - высокопроизводительное кодирование видео с использованием графических процессоров NVIDIA». Nvidia.
- ^ а б c «Матрица поддержки видеокодирования и декодирования графического процессора». Разработчик NVIDIA. 2016-11-09. Получено 2020-08-22.
- ^ а б c "NVIDIA VIDEO CODEC SDK". Разработчик NVIDIA. 2016-11-09. Получено 2020-08-22.
- ^ «Подробнее об архитектуре NVIDIA Ampere». Блог разработчиков NVIDIA. 2020-05-14. Получено 2020-08-31.
- ^ http://on-demand.gputechconf.com/gtc/2016/presentation/s6226-abhijit-patait-high-performance-video.pdf
- ^ [NVIDIA GeForce MX250 и MX230 - две «новые» графики для ноутбуков: https://newsbeezer.com/polandeng/nvidia-geforce-mx250-and-mx230-two-new-graphics-for-laptops/ ]
- ^ https://www.pcgamer.com/nvidia-geforce-gtx-1650-super-review/
- ^ https://www.nvidia.com/content/dam/en-zz/Solutions/geforce/ampere/pdf/NVIDIA-ampere-GA102-GPU-Architecture-Whitepaper-V1.pdf
- ^ «Матрица новых возможностей». Freedesktop.org.
- ^ Переход к видео: Adobe Premiere Pro помогает создателям контента работать быстрее благодаря экспорту с ускорением на GPU
- ^ Журнал изменений AVIDemux
- ^ "Аппаратное кодирование nvenc.c H.264 с использованием nvidia nvenc".
- ^ "QUADRO DESKTOP / QUADRO NOTEBOOK DRIVER RELEASE 375".
- ^ Выпущен HandBrake 1.2.0
- ^ Информация о MacroSystem Arabesk 8 от Casablanca Expert
- ^ https://www.nvidia.com/en-us/data-center/virtualization/resources/