Многокамерная поддержка в iOS 13 позволяет одновременно захватывать видео, фото и аудио

В iOS 13 Apple представляет многокамерную поддержку, позволяющую приложениям одновременно захватывать фото, видео, аудио, метаданные и глубину с нескольких микрофонов и камер на одном iPhone или iPad.

Apple давно поддерживает многокамерный захват на macOS начиная с OS X Lion, но до сих пор аппаратные ограничения препятствовали выпуску API для iPhone и iPad.

Новая функция и API в iOS 13 позволят разработчикам предлагать приложения, которые, например, одновременно передают видео, фото или аудио с фронтальной и задней камер.

Многокамерная поддержка iOS 13 с AVCapture 

На презентации новой функции во время WWDC Apple продемонстрировала приложение для записи видео «картинка в картинке», которое записывало пользователя с фронтальной камеры, одновременно записывая с основной камеры.

Демо-приложение также позволяло записывать видео и менять камеры на лету во время воспроизведения в приложении «Фото». Функция также даст разработчикам контроль над двумя камерами TrueDepth, включая отдельные потоки с широкоугольной или телефото задней камеры, если они того пожелают.

Новая многокамерная функция будет поддерживаться в iOS 13 только на новом оборудовании, включая iPhone XS, XS Max, XR и iPad Pro.

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

Из-за ограничений энергопотребления на мобильных устройствах, в отличие от Mac, iPhone и iPad будут ограничены одной сессией многокамерной съемки, что означает, что вы не сможете проводить несколько сессий с несколькими камерами или использовать несколько камер в нескольких приложениях одновременно. Также будут различные поддерживаемые комбинации устройств, определяющие, какие комбинации захвата с каких камер поддерживаются на определенных устройствах.

Похоже, что сама Apple не использует никаких новых многокамерных функций в приложении «Камера» iOS 13, но мы можем себе представить, что это нечто, что появится в ближайшем будущем, поскольку поддержка в AVCapture теперь официально внедрена.

Маски семантической сегментации

Еще одно новшество для захвата изображений в iOS 13 — это маски семантической сегментации. В iOS 12 Apple использовала то, что она называет Portrait Effects Matte, внутри приложения «Портретный режим» для отделения объекта от фона. В iOS 13 Apple представляет то, что она называет Semantic Segmentation Mattes, для идентификации кожи, волос и зубов, а также для дальнейшего улучшения этих карт с помощью API, к которому могут обращаться разработчики.

На своей сессии WWDC Apple продемонстрировала новую технологию с помощью демо-приложения, которое позволяло отделять объект на фотографии от фона, а также выделять волосы, кожу и зубы для легкого добавления эффектов, включая раскрашивание лица и изменение цвета волос (изображено выше).

Разработчики могут узнать больше о многокамерной поддержке и масках семантической сегментации на веб-сайте Apple, где также есть примеры кода для демонстрационных приложений.