Advertisement
Guest User

Untitled

a guest
Apr 19th, 2015
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. var outProgressBarValue:Float = 0.0 {
  2. willSet {
  3. dispatch_async(dispatch_get_main_queue(), {
  4. println("New value received! -> (newValue)")
  5. self.progressBarOutlet.setProgress(newValue, animated: true)
  6. })
  7. }
  8. }
  9.  
  10. @IBAction func saveButton(sender: AnyObject) {
  11. [...]
  12. let backgroundQueue = dispatch_get_global_queue(QOS_CLASS_DEFAULT, 0)
  13. dispatch_async(backgroundQueue, {
  14. WriteOutputFile(url, self.musicSequence!, Sound.sharedInstance.musicPlayer, self.processingGraph, &self.outProgressBarValue)
  15.  
  16. dispatch_async(dispatch_get_main_queue(), {
  17. restoreOnlineRendering(processingGraph: self.processingGraph, mainMixerNode: self.mainMixerNode, ioNode: &(self.ioNode))
  18. self.saveButtonOutlet.setTitle("Done", forState: UIControlState.Normal)
  19. [...]
  20. }
  21.  
  22. void WriteOutputFile(CFURLRef url, MusicSequence musicSequence, MusicPlayer musicPlayer, AUGraph processingGraph, float *outProgressBarValue) {
  23. […]
  24. CheckError(MusicPlayerStart(musicPlayer), "MusicPlayerStart");
  25. do {
  26. CheckError(AudioUnitRender (outputUnit, &actionFlags, &tStamp, 0, numFrames, bufferList), "AudioUnitRender");
  27. tStamp.mSampleTime += (Float64)numFrames;
  28. CheckError(ExtAudioFileWrite(outfile, numFrames, bufferList), "ExtAudioFileWrite");
  29. CheckError(MusicPlayerGetTime (musicPlayer, &currentTime), "MusicPlayerGetTime");
  30. *outProgressBarValue = currentTime / sequenceLength;
  31. printf("outProgressBarValue:t %fn", *outProgressBarValue);
  32. } while (currentTime < sequenceLength);
  33.  
  34. CheckError(MusicPlayerStop(musicPlayer), "MusicPlayerStop");
  35. […]
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement