Audio Kit 查看文件波形的相关源代码,easy o

本文介绍了如何使用Audio Kit获取音频文件的采样数据,并通过SwiftUI展示波形。详细讲解了从音频文件中提取声道数据,转换为浮点数,以及如何在视图上绘制波形的过程。同时,解释了波形呈现一团的原因,与音频的帧数和采样率有关。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Audio Kit 查看文件波形的相关源代码,看了下,挺简单的

拿到音频采样数据,用视图去展现,完了

1,拿到音频采样数据

获取的浮点数数据,长这样

-0.014434814
-0.016998291
-0.0184021
-0.017547607
// ...
获取的浮点数数据,在 -1 到 1 之间
1.1 拿到音频文件

let url = Bundle.main.resourceURL?.appendingPathComponent("Samples/beat.aiff")
let file = try! AVAudioFile(forReading: url!)
1.2 拿到第一个声道的数据
    public
    convenience init?(file: AVAudioFile) {
        let size = Int(file.length)
        self.init(count: size)

        guard let data = file.toFloatChannelData() else { return nil }
        // 循环大法好
        for i in 0 ..< size {
            // 取第一个声道的数据
            self[i] = data[0][i]
        }
    }
1.2.1 获取声道的浮点数数据
 public func toFloatChann
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值