一个 SwiftUI 包,用于显示音频文件的交互式波形。
该项目目前处于非常早期的阶段,是作为 SwiftUI Jam 2021 的一部分创建的。Jam 结束后的代码将在 swiftuijam 分支中。
要将其包含在您的 Xcode 项目中,请点击 File | Swift Packages | Add Package Dependency…
并输入以下 URL
https://github.com/pixlwave/Waveform
目前,您需要选择 Branch
并确保它设置为 main
,直到 v0.1.0 发布。
要使用 Waveform,请使用您的音频文件创建一个 WaveformGenerator
对象
let audioFile = try! AVAudioFile(forReading: URL))!
let generator = WaveformGenerator(audioFile: audioFile) // this generator object is observable
然后将其与选择范围(如果需要)一起传递给 Waveform
var body: some View {
Waveform(generator: generator, selectedSamples: $selection, selectionEnabled: .constant(true))
}
可以通过标准颜色修改器自定义配色方案
Waveform(generator: generator, selectedSamples: $selection, selectionEnabled: .constant(true))
.foregroundColor(waveformColor)
.background(backgroundColor)
.accentColor(selectionColor)
WaveformGenerator
的内存中。 目前,在解决此问题之前,值得关注您的应用程序的内存使用情况。