From CCRMA Wiki
Revision as of 14:25, 17 March 2011 by Noune (Talk | contribs)

Jump to: navigation, search

Crystal Piano is an iPad application featuring a breathing transparent piano that you can blow sound and life into! It was designed by my (Elie Noune) for CS476B (Mobile Music). The instrument is somewhere between a guitar and piano, hence the fender red guitar pick on top of the keyboard. Keys behave like air columns with particles flying in them when played. The keyboard is transparent, allowing users to customize the instrument by choosing background and particle images. Control the envelope of the sound by pinching the extreme left of the screen or by blowing into the mic! Experience the de-tuned piano effect by tapping on the same key multiple times, and the vibrato effect by moving your finger over a key. Use the guitar pick to create second voice harmonics or to play continuous pitches. Record, playback and share by uploading and downloading performances to a server cloud!

Crystal Piano

Download the XCode Project at:

and the design document at:


The app store is full of traditional piano applications which try to emulate a real piano on a small touch screen device. I wanted to take advantage of the touch interface to design an instrument inspired by the piano that would provide a more engaging graphical and social experience. As a pianist and guitarist, I also wondered how the rich piano interface could be used along with guitar string dynamics like vibrato and slide. Fortunately, mobile computing allows us to answer this question nowadays and that's what I tried to explore with Crystal Piano on the iPad.


  • Pinch the extreme left of the screen to control the dynamics of the sound: inward and outward pinching results in a Tremolo effect
  • You can also really blow into the iPad mic by turning blowing on!
  • Change your background picture by selecting a preview from the upper left tab (beach, underwater, sky, snow...)
  • Change your particle picture by selecting a preview from the upper right tab (snowflake, bird, fish,...)
  • Touch a key to see how the red magic pick blows particles in it
  • The piano is slightly de-tuned: touching the same key multiple times will slightly modulate the pitch
  • Vibrato effect: move you finger on the key as you would do with a guitar fret!
  • Slide guitar: slide the red pick along the keyboard, I know you want to! (This is a second voice that you can use to generate harmonics)
  • Record a tune by pressing the record button. Press the button again when you're done
  • Play back the tune by pressing the play button.
  • Upload it to the server pool by touching the upload button: fill in your favorite title and user name and press submit
  • Download the last uploaded tune from the server and play it back: you will get transported into the composer's universe where you can hear and see the original performance with its background and particles.

Crystal Piano
Crystal Piano
Crystal Piano

Software Used

  • Objective C/C++
  • Synthesis Tool Kit
  • Momu Library for audio
  • Ruby on Rails
  • OpenGL