在 Swift 3.0 中转换 base64String 中的音频文件

科技蜂

我正在使用以下代码录制音频文件。

let audioFilename = getDocumentsDirectory().appendingPathComponent("tt.mp4")

    let settings = [
        AVFormatIDKey: Int(kAudioFormatMPEG4AAC),
        AVSampleRateKey: 12000,
        AVNumberOfChannelsKey: 1,
        AVEncoderAudioQualityKey: AVAudioQuality.high.rawValue
    ]
    do {
        audioRecorder = try AVAudioRecorder(url: audioFilename, settings: settings)
        audioRecorder.delegate = self
        audioRecorder.record()
    } catch {
        print(" startRecording fail ")
    }

现在,当用户停止录音时,我想将音频文件保存在 base64 字符串中。我正在尝试使用以下代码:

let audioData =  try? Data(contentsOf: (audioRecorder?.url)!)
    let encodedString = audioData?.base64EncodedString()
    print(" data \(encodedString)")
    //"AAAAGGZ0eXBtcDQyAAAAAG1wNDJpc29t"

现在我正在尝试播放字符串:

let player = try? AVAudioPlayer(data:(encodedString?.data(using: String.Encoding.init(rawValue: 0)))!)
    player?.prepareToPlay()
    player?.play()

这不是在玩。我在哪里失踪?

知乎

在您尝试将 base64 编码字符串转换回原始数据的最后一段代码中存在错误。

我还没有尝试使用实际音频数据运行代码,但这至少应该修复您的数据转换错误:

if let encodedString = encodedString, let data = Data(base64Encoded: encodedString) {
    let player = try? AVAudioPlayer(data: data)
    player?.prepareToPlay()
    player?.play()
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法在Swift 3中转换AnyHashable

来自分类Dev

无法在Swift 3中转换NSURLSession

来自分类Dev

Swift中的Alamofire和base64string

来自分类Dev

无法在Swift 3中转换(NSError)-> Void

来自分类Dev

无法在iOS Swift中将base64string解码为uiimage,但在Android中工作正常

来自分类Dev

Swift中AudioUnitRender和ExtAudioFileWrite错误-50:尝试将MIDI转换为音频文件

来自分类Dev

无法上传文件并将其转换为base64string

来自分类Dev

在Windows Phone 7中从jpg转换为Base64String时,图片质量非常差

来自分类Dev

使用ffmpeg将文件夹中的所有mp4音频文件转换为mp3

来自分类Dev

使用ffmpeg在vifm中转换选定的音频文件

来自分类Dev

转换[字符串]?在Swift中转换为String

来自分类Dev

在前端将 Base64String 转换回 xls

来自分类Dev

在Java中播放Base64编码的音频文件

来自分类Dev

在Java中播放Base64编码的音频文件

来自分类Dev

AVPlayer:在 Swift 中播放“即时”转码音频文件

来自分类Dev

在Swift中转换Unicode

来自分类Dev

在Swift中转换CLLocationDistance

来自分类Dev

如何将3gp音频文件转换为mp3?

来自分类Dev

Javascript中的mp3音频文件

来自分类Dev

ffmpeg在windows中批量转换音频文件

来自分类Dev

在swift 4中转换Objective C代码

来自分类Dev

使用LAME将音频文件从.wav转换为MP3时出现问题

来自分类Dev

使用python将任何音频文件转换为mp3

来自分类Dev

如何将.aif音频文件转换为mp3?

来自分类Dev

如何将.aif音频文件转换为mp3?

来自分类Dev

如何在(L)ubuntu中将`rm`和`ra`音频文件转换为mp3?

来自分类Dev

谁在 Wav 音频文件中转换 mp4 文件?

来自分类Dev

Texturetool在Unity3d中转换翻转的pvr文件

来自分类Dev

如何在javascript中转换音频文件的比特率?

Related 相关文章

  1. 1

    无法在Swift 3中转换AnyHashable

  2. 2

    无法在Swift 3中转换NSURLSession

  3. 3

    Swift中的Alamofire和base64string

  4. 4

    无法在Swift 3中转换(NSError)-> Void

  5. 5

    无法在iOS Swift中将base64string解码为uiimage,但在Android中工作正常

  6. 6

    Swift中AudioUnitRender和ExtAudioFileWrite错误-50:尝试将MIDI转换为音频文件

  7. 7

    无法上传文件并将其转换为base64string

  8. 8

    在Windows Phone 7中从jpg转换为Base64String时,图片质量非常差

  9. 9

    使用ffmpeg将文件夹中的所有mp4音频文件转换为mp3

  10. 10

    使用ffmpeg在vifm中转换选定的音频文件

  11. 11

    转换[字符串]?在Swift中转换为String

  12. 12

    在前端将 Base64String 转换回 xls

  13. 13

    在Java中播放Base64编码的音频文件

  14. 14

    在Java中播放Base64编码的音频文件

  15. 15

    AVPlayer:在 Swift 中播放“即时”转码音频文件

  16. 16

    在Swift中转换Unicode

  17. 17

    在Swift中转换CLLocationDistance

  18. 18

    如何将3gp音频文件转换为mp3?

  19. 19

    Javascript中的mp3音频文件

  20. 20

    ffmpeg在windows中批量转换音频文件

  21. 21

    在swift 4中转换Objective C代码

  22. 22

    使用LAME将音频文件从.wav转换为MP3时出现问题

  23. 23

    使用python将任何音频文件转换为mp3

  24. 24

    如何将.aif音频文件转换为mp3?

  25. 25

    如何将.aif音频文件转换为mp3?

  26. 26

    如何在(L)ubuntu中将`rm`和`ra`音频文件转换为mp3?

  27. 27

    谁在 Wav 音频文件中转换 mp4 文件?

  28. 28

    Texturetool在Unity3d中转换翻转的pvr文件

  29. 29

    如何在javascript中转换音频文件的比特率?

热门标签

归档