Я пытался записать аудио и получить данные потока PCM в iOS.
Я использую AvaudioEngine для этого, и все хорошо настроено, я думаю. Например:
Sypred Sceep 16000
канал 1
кусочки /буферизации 1000
Audio Format (encoding_pcm 16 бит) < /p>
Это генерирует Base64, но веб -сайт не может преобразовать мой базовый 64 в аудио текст. < /p>
let inputNode = self.engine.inputNode
inputNode.removeTap(onBus: 0)
inputFormat = inputNode.outputFormat(forBus: outputBus)
inputNode.installTap(onBus: inputBus, bufferSize: bufferSize, format: inputFormat, block: { [weak self] (buffer, _) in
OALogDebug("[PP][PluginAudioEngine] installTap")
self?.processBufferData(buffer)
})
engine.prepare()
// MARK: - PCM Processing, way 2
private func processBufferData(_ buffer: AVAudioPCMBuffer) {
processingQueue.async() {
guard let pcmData = self.convertToPCM16(buffer: buffer) else { return }
var offset = 0
while offset < pcmData.count {
let chunkEnd = min(offset + Int(self.bufferSize), pcmData.count)
let chunk = pcmData.subdata(in: offset.. Data? {
guard let floatChannelData = buffer.floatChannelData else { return nil }
let frameLength = Int(buffer.frameLength)
var pcm16Data = Data(capacity: frameLength * 2) // 16-bit PCM (2 bytes per sample)
for frame in 0..
Подробнее здесь: https://stackoverflow.com/questions/794 ... ecode-fail
Ios avaudioengine buffer to base64 декодировать ⇐ IOS
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение