Join Simon Allardice for an in-depth discussion in this video Creating an instrument, part of Code Clinic: Swift.
Welcome, to Code Clinic, for Swift, I'm Simon Allardice. In Code Clinic, a different problem is given to a group of Lyda.com developer authors. And we each create a solution using our programming language of choice. In my case, Swift. This time around, we've been asked to create a software musical instrument controlled by the mouse. Where we'd move the mouse up and down, to change the pitch, move it side-to-side, to change the volume. And where the instrument is silent until we touch and hold one of the mouse buttons. And letting go of the button turns off the musical tone.
Well, that was the original problem. As I'll explain in a moment, I'm not going to use the mouse, as we have better options here in the Apple world. Now in some languages, the difficulty of this problem would be just to access the mouse and respond reliably to changes in position. For us, with Swift, that kind of thing is pretty easy. The focus of this Code Clinic is going to be all about the audio. Generating tones, manipulating sound, and understanding it. But you may want to take some time and think about how you would solve this problem yourself.
In the next videos, I'll explain how I answered this challenge.
Simon introduces challenges and then provides an overview of his solutions in Swift. Challenges include topics such as statistical analysis, searching directories for images, and accessing peripheral devices.
Skill Level Intermediate
1. Problem One: Exploring Lake Pend Oreille
2. Problem Two: Image Analysis
3. Problem 3: Eight Queens
4. Problem 4 - Accessing Peripherals
5. Problem 5 - Recursion and Directories
6. Problem 6 - Building the Web
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.