AVFoundation无法读取wav文件格式

时间:2017-11-16 15:55:48

标签: audio avfoundation wav avassetwriter avasset

我正在尝试从多个其他wav文件创建一个wav文件。 我使用AVAsset,AVAssestReader和AVAssetWriter。

AVAssetWriterInputAVAssetReaderAudioMixOutput使用的格式设置如下: AVAudioFormat(commonFormat: .pcmFormatInt16, sampleRate: 44100, channels: 2, interleaved: true)

AVAssetWriter的创建方式如下:AVAssetWriter(url: outputURL, fileType: .wav)

顺便说一下,我注意到了两件奇怪的东西:

1)当我从wav文件创建AVAsset时,我没有任何元素。 资产创建是:

let url = URL(fileURLWithPath: mWaveFilePath)
let asset = AVAsset(url: url)

我不能做得更简单,当我查找此资产的元数据属性时,我总是使用wav文件获取空数组...

2)最重要的是,当我写一个wave文件时,我觉得AVFoundation在wave header中出现了一些错误。也许它来自我,但我设法创建一个带有音频的wave文件,并按照一些教程我很难找到错误可能来自哪里。 这是一个好的和坏的标题的例子:

导入文件前的好标题。 enter image description here 我们可以看到format标签设置为1表示PCM。这就是我们想要的。

创建音频文件后出现错误的标题: enter image description here -2 ......显然是错的。

所以我错过了使用AVFoundation创建wav文件的内容,我应该做些什么特别的事情吗?

0 个答案:

没有答案