gstreamer создает виртуальное устройство на OSX

Я хотел бы создать устройство виртуальной камеры, используя gstreamer на OSX

Я могу создать его на *nix системах, используя

 gst-launch-1.0 -v videotestsrc pattern=snow ! video/x-raw,width=1280,height=720 ! v4l2sink device=/dev/video1

На osx получаю ошибочный конвейер v4l2

Я хотел бы иметь возможность направить вывод в приложения, такие как Skype и т. Д.,

Любые указатели в этом направлении? Должен ли я использовать сифон?

2 ответа

Решение

Путь состоит в том, чтобы использовать инфраструктуру CoreMediaIO. Вы можете создать виртуальное устройство с помощью фреймворка и передавать в любой поток с помощью оболочки. Некоторые указатели на обертки можно увидеть здесь.

Эта команда gstreamer:

./gst-launch-1.0 -v videotestsrc pattern=snow ! video/x-raw,width=1280,height=720 ! osxvideosink

Работает на OSX Sierra, если вы установите Gstreamer на OSX из следующих пакетов, которые будут установлены в папку /Library/Frameworks/Gstreamer.framework/. Выполните команды из подпапки Commands.

https://gstreamer.freedesktop.org/data/pkg/osx/1.12.0/

Эта ссылка содержит стандартный пакет, пакет разработки и dmg с множеством небольших дистрибутивных пакетов. Для передачи вывода вам нужно будет выбрать подходящий приемник - либо appink, и написать его самостоятельно, либо один из многих других типов приемников в Gstreamer. Надеюсь, что вы начали!

Другие вопросы по тегам