录制超出语言 API 的 wav 文件
Posted
技术标签:
【中文标题】录制超出语言 API 的 wav 文件【英文标题】:Record wav file for beyond verbal API 【发布时间】:2018-02-01 13:51:36 【问题描述】:Hello Everone 希望你们一切都好
我有一个关于在 iphone 上录制 wav 的问题。可以录制和存储文件,但是当我上传到 Beyond Verbal API 时,响应是
"readyState":4,"responseText":"\"status\":\"failure\",\"reason\":\"Bad Wave 格式标头 Unknown\"","status":400,"statusText":"Bad 请求”
MARK:- 录制音频路径
func getDocumentsDirectory() -> URL
let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
let documentsDirectory = paths[0]
return documentsDirectory
MARK:- 开始录制持续时间
func startRecording()
let audioFilename = getDocumentsDirectory().appendingPathComponent("audioFile.wav")
// print(audioFilename)
let settings = [
AVFormatIDKey: Int(kAudioFormatLinearPCM),
AVSampleRateKey: 41000,
AVNumberOfChannelsKey: 2,
AVEncoderBitRateKey:320000,
AVLinearPCMBitDepthKey:16,
AVEncoderAudioQualityKey: AVAudioQuality.high.rawValue
]
do
audioRecorder = try AVAudioRecorder(url: audioFilename, settings: settings)
audioRecorder?.delegate = self
audioRecorder.isMeteringEnabled = true
audioRecorder?.record(forDuration: 15)
audioRecorder.record()
catch
finishRecording(success: false)
【问题讨论】:
【参考方案1】:这是由于转换而出现的问题。所以使用 .m4a 文件,然后转成 .wav 文件。它会起作用的。
【讨论】:
以上是关于录制超出语言 API 的 wav 文件的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Windows API 从麦克风录制 wav 声音?
如何用C语言编写程序将多个wav文件拼接成一个音频wav文件并播放