APlay 1.2.1

APlay 1.2.1

LVE维护。



APlay 1.2.1

  • CodeEagle

APlay

更棒的iOS音频流及播放Swift框架

使用方法

import APlay
...
let url = URL(string: "path/to/audio/resource")!
let player = APlay()
player.eventPipeline.delegate(to: self, with: { (target, event) in
    //  event handling
})
player.play(url)
...

⚠️⚠️⚠️已知问题

此项目只能以DEBUG模式运行,因为优化模式会暂停解码循环。

如果使用CocoaPods安装,请在podfile中添加以下代码块

post_install do |installer|
 installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            swiftPods = ['APlay']
            if swiftPods.include?(target.name)
                config.build_settings['SWIFT_OPTIMIZATION_LEVEL'] =  '-Onone'
            end
        end
    end
end

文档

运行./generate_docs.sh

特性

  • CPU友好设计,避免过大的峰值

  • 支持WAVE和FLAC(带有寻址表)上的寻址

  • 支持iOS已支持的音频格式(MP3、WAVE、FLAC等)(未完全测试)

  • 提供摘要(已测试)、基本(未测试)代理支持

  • 支持多种协议:ShoutCast、标准HTTP、本地文件

  • 针对艰难的网络条件做好准备:在失败时重启,在流结束时未完整流式传输内容时重启

  • 支持元数据:ShoutCast元数据、ID3V1、ID3v1.1、ID3v2.2、ID3v2.3、ID3v2.4、FLAC元数据

  • 本地磁盘存储:用户可以添加文件夹以加载本地资源

  • 无需等待缓冲即可立即开始播放

  • 支持将流内容缓存在文件中

  • 支持自定义日志模块和文件日志记录

  • 开放协议以支持定制。 AudioDecoderCompatibleConfigurationCompatibleLoggerCompatible...

安装

Carthage github "CodeEagle/APlay"

CocoaPods pod 'APlay'

待办事项

  • Airplay2 支持(可能不是)
  • AudioEffectUint 支持

许可证

许可证

联系信息

GithubTwitter