Форум программистов, компьютерный форум CyberForum.ru

Голосовой динамик - Swift

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Swift Xib + storyboard http://www.cyberforum.ru/swift/thread1763429.html
Приветствую. Ситуация следующая - использую storyboard для навигации(контроллеры внутри без вью, разумеется), экраны верстаются отдельно в xib-ах. Все бы хорошо, вот только на 8.1/8.2 симуляторе вью не загружается. Просто черный экран и все. В 9.3 все нормально. В аналогичном проекте на obj-c все в порядке (и всю жизнь, сколько этим занимаюсь, проблем не было никогда). В чем проблема?
Swift Как вывести средний бал ученика в журнале (словарь) через цикл for-in? typealias markes = ] var register: markes = , "Ivanov": , "Sidorov": ] for ? in register { for ? in ? { print(" \(name) получает средний балл \(middleMarkPetrov) ") } http://www.cyberforum.ru/swift/thread1763138.html
Swift Как удалить элемент из TableView
Здравствуйте! В обычной ситуации для отображения кнопки удаления слайдом в TableView достаточно сделать следующее: class MyTableViewController: UITableViewController { ... override func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool{ return true; }
Swift Имитация акселерометра в xcode
Возможно ли в xcode имитировать акселерометр. Если да ,то как?
Swift Ошибка в коде ,не могу разобраться Swift 2 http://www.cyberforum.ru/swift/thread1754448.html
let motionManeger = CMMotionManager() motionManager.accelerometerUpdateInterval = 0.2 // 2 motionManager.startAccelerometerUpdatesToQueue(NSOperationQueue.currentQueue()!, withHandler: { //ошибка возникает в этой строке (accelerometerData: CMAccelerometerData!, error: NSError!) in // 3 let acceleration =...
Swift Swift и MySQL Здравствуйте, пишу приложение для удаленной загрузки данных на веб-сервер. Возникла непонятная проблема. Данные приходят с сервера, но свифт не понимает интовое значение id. let maindata = values let id = maindata as? Int let name = maindata as? String let surname = maindata as? String let login = maindata as? String ... подробнее

Показать сообщение отдельно
AntiMaster1
0 / 0 / 0
Регистрация: 07.07.2016
Сообщений: 2

Голосовой динамик - Swift

07.07.2016, 20:23. Просмотров 448. Ответов 0
Метки (Все метки)

День добрый! Пишу VOIP приложение и уже неделю пытаюсь побороть проблему: при активации записи вывод звука переключается с голосового динамика на колонки (т.е. основной динамик). При подключении наушников звук идет через них, а после их отключения - пропадает совсем. Как можно этого избежать?

Инициализация записи:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
       let session = AVCaptureSession()
////////////////////////////////////////
       let sessionQueue: dispatch_queue_t = dispatch_queue_create("AudioRecordQ",DISPATCH_QUEUE_SERIAL)
        
        session.sessionPreset = AVCaptureSessionPresetHigh
        
       
        dispatch_async(sessionQueue, {
            var mic:AVCaptureDevice = AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeAudio)
            var mic_in:AVCaptureDeviceInput = AVCaptureDeviceInput.deviceInputWithDevice(mic, error:nil)! as! AVCaptureDeviceInput
            
            let audio_output = AVCaptureAudioDataOutput()
            
            
            audio_output.setSampleBufferDelegate(self, queue: sessionQueue)
            
            self.session.addInput(mic_in)
            self.session.addOutput(audio_output)
            self.session.startRunning()
        })
Инициализация вывода:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var session_play: AVAudioSession = AVAudioSession.sharedInstance()
var audioEngine: AVAudioEngine = AVAudioEngine()
var audioFilePlayer: AVAudioPlayerNode = AVAudioPlayerNode()
/////////////////////////////////
        var error: NSError?
        session_play.setCategory(AVAudioSessionCategoryPlayAndRecord , withOptions: AVAudioSessionCategoryOptions.AllowBluetooth, error: &error)
        session_play.overrideOutputAudioPort(AVAudioSessionPortOverride.None, error: nil);
        session_play.setActive(true, error: &error)
        
        println("Out \(session_play.currentRoute.outputs[0].portType)") // Пишет Receiver. Если вызвать после активации записи - Speaker
        
        var mainMixer = audioEngine.mainMixerNode
        audioEngine.attachNode(audioFilePlayer)
        audioEngine.connect(audioFilePlayer, to:mainMixer, format: audioFormat)
        audioEngine.startAndReturnError(nil)
        
        audioFilePlayer.play()
Вопроизведение через:
Objective-C
1
self.audioFilePlayer.scheduleBuffer(PCMBuffer, atTime: nil, options:nil , completionHandler: nil)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru