音频处理的格式有 ASBD , AudioStreamBasicDescription
和 ASPD, AudioStreamPacketDescription
有 ASPD ,就是压缩音频,例如 mp3
let isCompressed = packetDescriptionsOrNil != nil
没有 ASPD ,就使用 ASBD, 就是非压缩音频,例如 wav
压缩音频,里面的数据不均匀,每个包含有的帧数据不等
func ParserPacketCallback(_ context: UnsafeMutableRawPointer, _ byteCount: UInt32, _ packetCount: UInt32, _ data: UnsafeRawPointer, _ packetDescriptions: Optional<UnsafeMutablePointer<AudioStreamPacketDescription>>) {
let parser = Unmanaged<Parser>.fromOpaque(context).takeUnretainedValue()
let packetDescriptionsOrNil: UnsafeMutablePointer<AudioStreamPacketDescription>? = packetDescriptions
let isCompressed = packetDescriptionsOrNil != nil
os_log("%@ - %d [bytes: %i, packets: %i, compressed: %@]", log: Parser.loggerPacketCallback, type: .debug, #function, #line, byteCount, pa