38 lines
1.1 KiB
Swift
38 lines
1.1 KiB
Swift
import Foundation
|
|
|
|
public struct AudioStreamMetadata: Codable {
|
|
public let sampleRate: Double
|
|
public let channelsPerFrame: UInt32
|
|
public let bitsPerChannel: UInt32
|
|
public let isFloat: Bool
|
|
public let captureMode: String
|
|
public let deviceName: String?
|
|
public let deviceUID: String?
|
|
public let encoding: String
|
|
|
|
public enum CodingKeys: String, CodingKey {
|
|
case sampleRate = "sample_rate"
|
|
case channelsPerFrame = "channels_per_frame"
|
|
case bitsPerChannel = "bits_per_channel"
|
|
case isFloat = "is_float"
|
|
case captureMode = "capture_mode"
|
|
case deviceName = "device_name"
|
|
case deviceUID = "device_uid"
|
|
case encoding
|
|
}
|
|
|
|
public init(
|
|
sampleRate: Double, channelsPerFrame: UInt32, bitsPerChannel: UInt32, isFloat: Bool,
|
|
captureMode: String, deviceName: String?, deviceUID: String?, encoding: String
|
|
) {
|
|
self.sampleRate = sampleRate
|
|
self.channelsPerFrame = channelsPerFrame
|
|
self.bitsPerChannel = bitsPerChannel
|
|
self.isFloat = isFloat
|
|
self.captureMode = captureMode
|
|
self.deviceName = deviceName
|
|
self.deviceUID = deviceUID
|
|
self.encoding = encoding
|
|
}
|
|
}
|