Невозможно поменять камеру с помощью AVCaptureMultiCamSession на Swift/AVKit для iOS.IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Невозможно поменять камеру с помощью AVCaptureMultiCamSession на Swift/AVKit для iOS.

Сообщение Anonymous »

У меня есть PIP-камера, которая осуществляет потоковую передачу спереди и сзади на основе AVCaptureMultiCamSession. Все работает нормально, но когда я собираюсь поменять камеру, она вылетает. Это код, который работает с одной камерой, поэтому не знаю, что не так. Кроме того, объект отображается в отладчике как действительный.
Это фрагмент, в котором камера меняется

Код: Выделить всё

private func updateSessionConfiguration() {
guard isCaptureSessionConfigured else { return }
captureSession.beginConfiguration()
defer { captureSession.commitConfiguration() }

// Remove all current inputs
for input in captureSession.inputs {
if let deviceInput = input as? AVCaptureDeviceInput {
captureSession.removeInput(deviceInput)
app_log("removing input for \(input)")
}
}

// Add the primary device input
if let deviceInput = deviceInputFor(device: captureDevice) {
app_log("device input \(deviceInput)")
if !captureSession.inputs.contains(deviceInput), captureSession.canAddInput(deviceInput) {
captureSession.addInput(deviceInput)
}
}

if let secondaryDeviceInput = deviceInputFor(device: secondaryCaptureDevice)         {
app_log("Secondary device input \(secondaryDeviceInput)")
if !captureSession.inputs.contains(secondaryDeviceInput), captureSession.canAddInput(secondaryDeviceInput) {
captureSession.addInput(secondaryDeviceInput)
}
}

updateVideoOutputConnection()
}
Я сломал его в отладчике, проверил, что входные данные были освобождены, а объект deviceInput существует и выглядит действительным. По-прежнему не удается выполнить addInput.

Подробнее здесь: https://stackoverflow.com/questions/793 ... it-for-ios
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»