import Foundation public enum AudioSampleType { case syntheticUniform case syntheticSine case syntheticSpeechLike case syntheticNatural } public struct AudioSample { public let type: AudioSampleType public let name: String public let melFeatures: [[Float]] public let seqLen: Int public let nMels: Int public let description: String } public final class AudioSampleGenerator { public let nMels: Int = 128 public let seqLen: Int = 100 public init() {} public func generate(type: AudioSampleType) -> AudioSample { switch type { case .syntheticUniform: return generateUniform() case .syntheticSine: return generateSine() case .syntheticSpeechLike: return generateSpeechLike() case .syntheticNatural: return generateNatural() } } public func generateAll() -> [AudioSample] { return [ generateUniform(), generateSine(), generateSpeechLike(), generateNatural() ] } private func generateUniform() -> AudioSample { var mel: [[Float]] = [] for _ in 0.. AudioSample { var mel: [[Float]] = [] let frequencies: [Float] = [100.0, 200.0, 400.0, 800.0, 1600.0] for t in 0.. AudioSample { var mel: [[Float]] = [] let fundamentalFreq: Float = 150.0 let harmonics = 8 for t in 0.. 10 && t < seqLen - 10 ? 1.0 : 0.1 for m in 0.. AudioSample { var mel: [[Float]] = [] for t in 0.. [Float] { return mel.flatMap { $0 } } } public struct AudioTestResult { public let modelName: String public let sampleName: String public let outputShape: (Int, Int) public let min: Float public let max: Float public let mean: Float public let std: Float public let nanCount: Int public let infCount: Int public let forwardTimeMs: Double public let memoryPeakMB: Double public let passed: Bool }