Ошибки с кодеками OBS: Failed to open NVENC codec: function not implemented – решение сбоев вывода

Сегодня расскажем что предпринять если у вас появился сбой вывода в программе OBS. NVEC или AMD. Ошибка может звучать в английском варианте «Failed to open NVENC codec: Function Not Implemented» или Generic error in an external library. Симптомы у них похожи. Либо просто выскакивает окошко с уведомлением как на скриншоте ниже: «Сбой вывода. Подробности отражены в журнале. Примечание: Если вы используете кодировщики NVEC или AMD, убедитесь что у вас установлена последняя версия видеодрайвера.»

Сбой вывода. Не удалось начать запись

Сбой вывода. Не удалось начать запись в OBS

Причины ошибки вывода потока в OBS

Поскольку запись или трансляция стримов потребляют большие ресурсы видеопамяти все ошибки нужно начинать с проверки видеокарты и ее работы. Естественно, первым делом стоит убедиться, что вы загрузили последнюю версию драйверов на официальном сайте и обновили. Для видеокарт от NVIDIA после запуска любой игры или приложения в трее есть иконка, которая позволяет увидеть какая видеокарта задействована в данный момент. При работе с графикой и записи видео или стримов разумеется должна отображаться внешняя видеокарта.

Второе – часто программа конфликтует с продуктами от Adobe запущенными на компьютере в данный момент(Photoshop, InDesign, Premiere Pro, Illustrator или Adobe XD). Сохраните всё, что делали, выключите программу и попробуйте снова запустить запись. Эта ошибка вызвана тем, что графические редакторы задействуют ресурсы видеокарт по максимуму, а если карточка не последних поколений, выделить дополнительную память на стрим или запись она просто не сможет.

Как исправить ошибку вывода?

Если обновление драйверов не помогло, посмотрим что пишут в логах. Закройте все лишние работающие программы. Далее в запущенной программе OBS:

Обновляем кодеки

Обновляем кодеки Video Codec x264 и Windows 10 Codec Pack

Выводы

Самые распространенные ошибки при работе с OBS связанные со сбоем вывода или ошибкой открытия кодеков «Failed to open NVENC codec» появляются из-за конфликтов при запущенных программах Adobe(поскольку они потребляют ресурсы видеопамяти). Либо проблемой с кодеками. Проверьте в настройках какая видеокарта выставлена. Затем обновите кодеки и если не помогло переключайте текущий кодировщик. Если что-то осталось непонятно задавайте вопросы в комментариях под этой странице и обязательно напишите какой из способов помог вам решить проблему.

Занимаюсь решением проблем с техникой, устранению ошибок в программах, играх. Люблю «копаться» в железе и настройках, помогать людям, в свободное время пишу статьи на айти тематику

Здравствуйте Владимир, проблема еще актуальна? Пользуетесь программой ОБС? Пробовали переустановить? Так же сообщите какая версия Виндовс у вас стоит, попробуем разобраться

Активация поддержки видео в h264 на Firefox 49 на Windows XP

Сначала Mozilla отказывалась поддерживать проприетарный и защищённый патентами формат h264, продвигая использование открытых кодеков, потом, когда стало понятно, что без поддержки h264 в современном вебе никуда, реализовала её при при помощи компонента Windows Media Foundation, отсутствующего в Windows XP. Когда Cisco предоставила открытые и лицензионно чистые кодеки OpenH264, было слишком поздно — никто не хотел переписывать рабочий код, использующий WMF, ради ОС, поддержка производителем которой была окончена, и внедрение OpenH264 ограничили видео по WebRTC.

Но многие (в том числе и я) всё ещё используют эту ОС по разным причинам, и не стоит им отказывать в просмотре видео в h264 в самом лучшем (по моему скромному мнению) браузере Firefox.

Помощь, откуда не ждали

После обновления на Firefox 48 я внезапно для себя обнаружил, что видео в h264 прекрасно работает.
Небольшое расследование привело меня к тому, что это стало возможно благодаря плагину Adobe Primetime, ориентированному на воспроизведение DRM видео.

На скриншоте ниже, полученном при помощи Process Explorer, видно, что процесс plugin-container, появившийся после загрузки страницы с видео, использует файл eme-adobe. dll из профиля текущего пользователя.

Зайдя в настройку плагинов Firefox, я нашёл там Adobe Primetime, отключение которого приводило к тому, что FF переставал воспроизводить h264, что доказывало, что именно он виновник этого торжества.
Но радость моя была не долгой.

Всё опять сломали

При очередном обновлении до Firefox 49 я с грустью обнаружил, что h264 опять не играется. Я не нашёл Adobe Primetime в списке плагинов, я не нашёл его файлов в профиле, а попытка их подсунуть ни к чему не привела.

В поисках по интернету я наткнулся на обсуждение предложения по скрытию Adobe Primetime на ОС ниже Vista. Оттуда я узнал, что этот плагин официально не поддерживает Windows XP, и на некоторых конфигурациях наблюдались проблемы со стабильностью. Но у меня же проблем не было!

В багтрекере была ссылка на «исправление» проблемы отображения плагина Primetime на XP. Опираясь на код из него, я сделал исправление, которое откатывает вредный эффект данных изменений.

Исправление

Обновление: более простой и корректный способ указан в P. S, файлы править не нужно. Предыдущий вариант исправления остаётся в исторических целях.
Необходимо разархивировать файл omni. ja из корневой директории браузера, найти там файл /jsloader/resource/gre/modules/GMPUtils. jsm, открыть в любом шестнадцатеричном редакторе, и заменить там байты

Тем самым мы включим работу плагина на ядре NT 5.0 и выше, вместо NT 6.0. После исправления необходимо упаковать файлы обратно в omni. ja. Архивация с обычными параметрами тут не подойдёт, нужно использовать консоль:

После замены им оригинала всё опять заработало.

Замечу, что необходимо так же активировать поддержку воспроизведения видео при помощи плагинов, в about:config необходимо выставить в true:

У меня эта настройка была давно включена, в надежде на работу h264 через OpenH264. После этого можно наслаждаться видео в h264 на любых сайтах, в том числе YouTube, Vimeo, сервисах онлайн-трансляций и т. д.

image
(тест на чистой ОС в виртуальной машине)

Я создал запрос в Bugzilla на возврат поддержки плагина Primetime на Windows XP, но что-то мне подсказывает, что это закончится ничем.
Предлагаю помочь в исправлении описания запроса, так как я косноязычен даже на русском языке (если вы не заметили), а уж на английском понятность моих пояснений полностью теряется, что ещё более снижает шансы на официальное исправление этой проблемы в будущих версиях Firefox.

Послесловие

Для тех, кому лень возиться с HEX — редакторами и архиватором, прикладываю ссылку на каталог на Яндекс. диске, куда я буду сбрасывать свои исправленные файлы omni. ja после обновлений. Пока там лежит один файл из актуальной версии.

Плагины в Firefox запускаются в изолированном процессе, не имеющим доступ к странице, поэтому ничего страшного в использовании плагина с закрытым кодом нет. Хоть я и предлагаю скачать исправленный файл, я также даю инструкции по его самостоятельному исправлению выше.

Получившийся у вас файл omni. ja при бинарном сравнении может отличатся от моего даже на одной версии FF, так как используются разные архиваторы, его версии и параметры сжатия по умолчанию.

Спасибо за внимание!

P. S. Обновление

На Bugzilla подсказали более простой и корректный способ активации плагина. Достаточно создать в about:config настройку:

Источники:

https://atki. ru/oshibki-s-kodekami-obs-failed-to-open-nvenc-codec-function-not-implemented/

https://habr. com/ru/post/311626/

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: