Musical

Updated Piano for Musical

Posted in Musical on December 27th, 2008 by Christopher Souvey – Be the first to comment

I just released another update for Musical (my Android application) with a couple quick (but significant) changes:

  • minikeyboardThe unstable grand piano has been converted into a stable 3-octave piano.  The disabled octaves will be re-enabled once Google updates Android’s sound API
  • The pop-ups and disclaimers on the piano have been removed (it should be reasonably stable now)
  • A 2-octave piano (pictured) has been added, which shows 2 octaves at once (the regular piano shows 1 octave and requires scrolling)
  • Musical now quietly checks for updates when you open it (thus the new required Internet permission)

Lessons From a Month in the Android Market

Posted in Android, Musical on December 16th, 2008 by Christopher Souvey – 7 Comments

It’s just just over a month since I first uploaded Musical to the Android Market. Since then I’ve gotten 17,500 downloads (over 8000 active installs), 318 reviews (for an average of 4/5 stars), and emails from over 40 users.

In the process I’ve learned quite a bit about how the Market operates and more importantly, about dealing with its users. The following is a collection of notes, helpful tips, and my thoughts on the Android Market…

read more »

Android Musical Updates

Posted in Musical on November 30th, 2008 by Christopher Souvey – 3 Comments

I recently released some updates for my Android music application (“Musical”) and decided to post some screenshots and semi-technical explanations.

The pitch pipe (pictured on the right) lets you play any starting pitch (from C4 to C5) either by holding your finger on the screen or by blowing into the bottom of the phone.  Because Android does not support true live audio analysis the play-by-blowing feature is limited and the volume by breath control is at very low resolution and with a bit of delay (it is only using a periodic sampling of input amplitude).  Android also does not allow live generation of audio (playing audio from a memory stream), so the pitch pipe works by stringing together and looping “prerecorded” sine waves of various frequencies.

The piano (pictured above) is multi-octave (although the bottom octave does not work–Android’s midi synthesizer will not play notes that low) and can be played with your fingers.  It is not multitouch, as Android on the G1 does not currently support multitouch (although the hardware technically supports it, it is disabled and there is no public API).  Switching octaves is accomplished by dragging the keyboard or the “current window” in the upper mini-keyboard.  Notes vary based on how long they are held down (longer hold = longer note) and although multiple keys cannot be pressed at once, multiple notes can be playing at once (it is polyphonic).  The piano “activity” (a screen in Android) plays the notes via SoundPool (an unsupported, unstable, and mostly undocument sound API–but the only one with a fast enough response time) and plays a series of premade midi files using Android’s built-in synthesizer (as there is no way to directly access the synthesizer in code to play a specific note).  Because it uses SoundPool, it is currently rather unstable and sometimes locks up and crashes (the audio stack overloads).  Hopefully when the next version of the SDK comes out, Google will provide a finalized SoundPool and better support for generating live sounds.

To download the latest version, just search for “Musical” in the Android Market on your G1.

Android Metronome

Posted in Android, Life, Musical, Technology on November 15th, 2008 by Christopher Souvey – 12 Comments

Android Metronome AppAbout 3 weeks ago, I bought a T-Mobile G1 (the Android-based “GooglePhone”).  I’ve been working in my free time for the last 2 weeks on learning the Android SDK so I could write some programs for it.  The first program decided to write was a program for musicians.  Yesterday (November 15), I finally got the first feature–the metronome–in a working state.  I uploaded by application to the Android Market (same idea as the iPhone’s App Store, but until Q1, everything has to be free).  Now nearly 24 hours and 3 updates (suggested feature additions and bug fixes), my app has 2175 downloads (1638 active installs) and 110 reviews (with an average of 4/5 — there is not a single app with a 5/5, the highest so far is 4.5/5).  I’ve already received 9 emails about the application.

Not bad for the first 24 hours of my first Android app (and first Java app in a very long time) :P

In fact, in one day, this app has gotten more users than all my previous programming projects combined!  And its not even close to done yet!

I’ll continue to post updates on this and my (hopefully many) future apps.