Я пытался записать аудио и получить данные потока PCM в iOS.
Я использую AvaudioEngine для этого, и все хорошо настроено, я думаю. Например:
Sypred Speat 16000
Канал 1
Кусочки /Buffersize 1000
Audio Format (Encoding_pcm 16 бит) < /p>
Это генерирует базовый 64, но веб -сайт не может преобразовать мой базовый 64 в аудио текстовый. Base64 преобразование строки правильное? < /p>
func setUp() {
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
print("[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
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение