Cercando di build un sintonizzatore semplice

Sto cercando di creare un sintonizzatore semplice o una semplice app che registra un suono e quindi restituisce la frequenza del suono. Questo potrebbe essere usato per trovare quale nota è il suono (come in un accordatore di chitarra), ma principalmente cerco semplicemente di registrare un suono e fare in modo che l'app rispedisca la frequenza del suono. Qualcuno potrebbe indicarmi la giusta direzione per quanto riguarda questo? Ho letto alcune cose su FFT o altre cose, ma sono un po 'noob. Ho cercato su google, ma non sono riuscito a trovare molto su questo, ma qualcuno ha parlato di un'app che ha realizzato e di un codice che non ho idea di cosa fare.

Va bene così ora stavo cercando qualcosa che potrebbe aiutare: http://audiokit.io/ . Questa potrebbe essere la soluzione semplice, ma non è ancora sicuro se questo è ciò che farebbe la maggior parte delle persone.

Quindi sono riuscito a importre l'audiokit. Il problema è che non riesco a far funzionare il codice per visualizzare solo la frequenza quando viene prodotto un suono. Ecco il codice

import UIKit import AudioKit class ViewController: UIViewController { @IBOutlet weak var frequencyLabel: UILabel! let mic = AKMicrophone() override func viewDidAppear(animated: Bool) { } override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib let tracker = AKFrequencyTracker.init(mic, minimumFrequency: 200, maximumFrequency: 2000) var silence = AKBooster(tracker, gain: 0) AudioKit.output = silence AudioKit.start() if tracker.amplitude > 0.1 { frequencyLabel.text = String(format: "%0.1f", tracker.frequency) } } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } 

Solutions Collecting From Web of "Cercando di build un sintonizzatore semplice"

Okay, l'ho capito … Mi mancavano molte cose come parte del kit. Il motivo è che dal sito audio.io ho seguito quelle istruzioni ma ci sono un sacco di altre cose che sono incluse nell'esempio quando si scarica il kit audio vero e proprio. Ecco il mio codice per rendere la cosa semplice frequenza. Funziona!!!!

 import UIKit import AudioKit class ViewController: UIViewController { @IBOutlet weak var frequencyLabel: UILabel! var mic: AKMicrophone! var tracker: AKFrequencyTracker! var silence: AKBooster! override func viewDidLoad() { super.viewDidLoad() AKSettings.audioInputEnabled = true mic = AKMicrophone() tracker = AKFrequencyTracker.init(mic, minimumFrequency: 200, maximumFrequency: 2000) silence = AKBooster(tracker, gain: 0) } override func viewDidAppear(animated: Bool) { super.viewDidAppear(animated) AudioKit.output = silence AudioKit.start() NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: #selector(ViewController.updateUI), userInfo: nil, repeats: true) } func updateUI() { if tracker.amplitude > 0.1 { frequencyLabel.text = String(format: "%0.1f", tracker.frequency) } } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } }