如何用SFBAudioEngine 3行代码在iOS/macOS上播放音频文件(附Swift代码)
如何用SFBAudioEngine 3行代码在iOS/macOS上播放音频文件附Swift代码【免费下载链接】SFBAudioEngineA powerhouse of audio functionality for macOS, iOS, and tvOS.项目地址: https://gitcode.com/gh_mirrors/sf/SFBAudioEngineSFBAudioEngine 是一款面向 macOS、iOS 和 tvOS 的强大开源音频框架用 Swift 播放音频文件仅需 3 行代码。本文将教你如何快速集成 SFBAudioEngine并附上可直接运行的 Swift 播放代码帮助你在 iOS/macOS 上轻松实现音频播放功能。SFBAudioEngine 是什么SFBAudioEngine 是一个集音频解码、播放、编码、格式转换、属性读取与元数据编辑于一体的音频引擎同时支持 Swift 和 Objective-C。它最让人惊喜的一点是播放音频文件真的只需要 3 行代码无需配置复杂的AVAudioEngine处理图。快速安装Swift Package Manager 集成步骤SFBAudioEngine 支持 iOS 15.0、macOS 11.0、tvOS 15.0通过 Swift Package ManagerSPM集成非常简单。一键安装步骤在 Xcode 中打开项目进入File Add Package Dependencies输入包地址添加依赖等待解析完成后在需要使用的地方import SFBAudioEngine3 行代码播放音频文件Swift 代码播放音频文件的核心代码只需三步import SFBAudioEngine let player AudioPlayer() let url URL(fileURLWithPath: example.flac) try? player.play(url)没错就这么简单AudioPlayer基于AVAudioEngine处理图实现播放开箱即用无需任何额外配置。注意目前play(_:)仅支持文件 URLfile URL。播放控制与状态监听除了播放SFBAudioEngine 还提供了完整的播放控制能力player.pause() // 暂停 player.resume() // 恢复 player.stop() // 停止 player.togglePlayPause() // 播放/暂停切换 player.seek(time: 30) // 跳到 30 秒处同时支持队列播放实现无缝gapless衔接try? player.enqueue(URL(fileURLWithPath: track2.flac))读取音频信息与元数据播放之外读取音频属性和元数据同样简单一行代码即可if let audioFile try? AudioFile(readingPropertiesAndMetadataFrom: url) { let sampleRate audioFile.properties.sampleRate let title audioFile.metadata.title let artist audioFile.metadata.artist }一行代码完成格式转换想把 WAVE 转成 FLACSFBAudioEngine 同样只需 3 行代码输出格式会根据文件扩展名自动推断let inputURL URL(fileURLWithPath: music.wav) let outputURL URL(fileURLWithPath: music.flac) try AudioConverter.convert(inputURL, to: outputURL)支持的音频格式SFBAudioEngine 支持绝大多数音频格式除了 Core Audio 原生支持的格式外还额外支持 Ogg Speex / Ogg Vorbis / Ogg Opus Monkeys Audio、Musepack、Shorten、True Audio、WavPack libsndfile 支持的全部格式 DSD64 转 PCM、DSF/DSDIFF 解码及 DoP 传输FLAC、Ogg Opus 和 MP3 虽然 Core Audio 原生支持但 SFBAudioEngine 也提供了自己的编码器和解码器确保最佳兼容性。总结SFBAudioEngine 让 iOS/macOS 音频开发变得异常简单播放 3 行代码、读元数据 1 行代码、转格式 3 行代码。无论你是想快速播放 FLAC、Opus 等特殊格式还是需要构建完整的音乐播放器它都是值得一试的开源方案。核心播放能力由 AudioPlayer.swift 提供底层实现位于 Player 目录感兴趣的话可以直接阅读源码深入学习。【免费下载链接】SFBAudioEngineA powerhouse of audio functionality for macOS, iOS, and tvOS.项目地址: https://gitcode.com/gh_mirrors/sf/SFBAudioEngine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考