Пользовательский фильтр приемника буфера ffmpeg - PullRequest
0 голосов
/ 25 ноября 2018

Среда

  • Ubuntu 18.04
  • C ++
  • ffmpeg 3.4 (мастер git)
  • ffmpeg используется в качестве общей библиотеки (InProc)через C ++ API

сценарий использования

  • на эту ссылку Я пытаюсь использовать API-интерфейсы 'avfilter_graph_ *' для создания графа ffmpeg
  • Я бы хотел, чтобы вывод графика был отправлен в мой пользовательский код (часть хост-приложения)

Рассмотренные реализации

  • [A] Реализациянастраиваемый фильтр приемников (часть libavfilter) для реализации моей пользовательской логики
  • [B] Реализация настраиваемого фильтра приемников для сбора выходных выборок и отправки их в мое приложение (что-то похожее на DShow SampleGrabber)

Проблема под рукой

При любом из вышеперечисленных подходов код ffmpeg должен быть изменен, и это накладывает накладные расходы на поддержку будущих выпусков ffmpeg

Интересно, есть лилюбой прямой подход к расширениюrnal (хостинг) приложение для захвата вывода графика с минимальным копированием полезной нагрузки.

Есть ли способ использовать собственный AVIOContext для этого?я могу построить график, связанный с выходом AVIOContext?Могу ли я создать собственный фильтр, реализованный в модуле , внешнем по отношению к libavfilter , и связать его с графиком, используя AVFilterContext?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...