2015-11-06 4 views
2

Подключив мою веб-камеру, я могу манипулировать видео/аудиопотоком в приложении MAC OS. Теперь я хотел бы вывести его как новое виртуальное видео/аудио устройство, которое я могу выбрать в качестве входа камеры в приложениях типа «Skype» или QuickTime.Устройство камеры на MAC OS

Я посмотрел на я/рамки набора O и ссылки веб-страницы говорит, что это:

«Для того, чтобы добавить возможности цифрового видео для вашего программного обеспечения, использовать API для QuickTime .»

Я считаю, что это необходимо обновить, поскольку API QuickTime был заменен CoreMedia IO.

Итак, я заглянул в CoreMediaIO и нашел образец кода с веб-сайта Apple dev, который также устарел и не будет работать на XCode 7.x с OS Yosemite +.

Я также посмотрел в AVFoundation, но это похоже на тупик.

Я потерялся в этом пункте. Я знаю, что это выполнимо, поскольку программное обеспечение CamTwist делает это.

У кого-нибудь есть идея, как подойти к этому?

ответ

1

CoreMediaIO определенно подходит, так как именно это использует Apple в своем оборудовании. В моей системе (2015 г. rMBP) /Library/CoreMediaIO/Plug-Ins/DAL/ содержит AppleCamera.plugin и iOSScreenCapture.plugin, для веб-камеры и съемки с iDevice.

Я предполагаю, что пример, который вы имеете в виду, это this one?

Это не совсем компилируется из коробки, но в конце концов я получил его для сборки с OSX 10.11 SDK. Вам нужен Apple Core Audio Utility Classes, укажите группу «Источники/Экстра/CoreAudio/PublicUtility» в проекте Xcode, а затем исправьте инициализацию переменной (удалите = NULL, где он жалуется на частный конструктор) и закомментируйте несколько строк в SamplePrefix .час. Я не запускал его, но я не вижу причин, почему этого не произойдет. Если у вас нет сертификата подписи kext, вам может потребоваться выполнить шаги для загрузки unsigned kexts для запуска образца.

1

Ваша веб-камера использует старый драйвер видеодисков (файл .component находится в/Library/QuickTime)? Я смог увидеть свою камеру UVC и камеру DAL в проигрывателе QuickTime. Я понимаю, что приложения, написанные на AVFoundation, не будут возвращать старый драйвер vdig. Напротив, приложения, написанные с использованием Sequence Grabber (очень старые)/QTCapture (старые), возвратят ваше устройство.

Надеюсь, это поможет.

+0

Я использую встроенную камеру iMac 2015. Не уверен, что он использует старый драйвер или нет. Я даже не знаю, как проверить tbh. – user1988824