Переключение Bluetooth Microphone включено/выключено при запуске AvcaptureSessionIOS

Программируем под IOS
Ответить
Anonymous
 Переключение Bluetooth Microphone включено/выключено при запуске AvcaptureSession

Сообщение Anonymous »

У меня есть такой вариант использования, и я не уверен, как с ним справиться: Клиент должен иметь возможность подключать/отключать микрофон Bluetooth, когда они записывают аудио/видео материал.
Я настраиваю Avaudiosession таким образом в AppDelegate сразу после начала приложения:

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

let session = AVAudioSession.sharedInstance()
try session.setCategory(.playAndRecord, mode: .default, options: [.allowBluetooth, .defaultToSpeaker])
try session.setActive(true)
< /code>
Настройка сеанса захвата Pseudocode < /p>
let captureSession = AVCaptureSession()
let audioDevice = AVCaptureDevice.default(for: .audio)
let audioInput = try AVCaptureDeviceInput(device: audioDevice!)
if captureSession.canAddInput(audioInput) {
captureSession.addInput(audioInput)
}

// Setup output to write to file
// ...

// When user tap recording
captureSession.startRunning()

// When user taps stop
captureSession.stopRunning()
Я знаю, что могу наблюдать avaudiosession.routechangenotification Но я не уверен, как это может быть полезно в этой области, потому что я пытаюсь наблюдать за этим ...

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

@objc func handleRouteChange(notification: Notification) {
guard let userInfo = notification.userInfo,
let reasonValue = userInfo[AVAudioSessionRouteChangeReasonKey] as? UInt,
let reason = AVAudioSession.RouteChangeReason(rawValue: reasonValue) else {
return
}

// Switch over the route change reason.
switch reason {
case .newDeviceAvailable: // New device found.
// ... how to add this new connected device as input to the AVCaptureSession?

case .oldDeviceUnavailable: // Old device removed.
// ... how to remove old device and reconnect iPhone internal mic as a input?

default: ()
}
}

Так что мне интересно, как объединить эти уведомления Avaudiosession с вводами avcaptureSession в середине записи?

Подробнее здесь: https://stackoverflow.com/questions/796 ... is-running
Ответить

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

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

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

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

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