Can I play my iPod music in iChalky's background?
Yes. By default the application will attempt to connect to your device's microphone input when it launches (even if you're using an iPod Touch that doesn't have a microphone). This connection will interrupt any other audio session that may be active on your device and this is why your iPod music will be muted as a result.
You can still listen to your iPod music while playing with iChalky by either:
- Double-clicking on the home button and selecting a track from your iPod application; or
- Disabling the "Dance to microphone input" option in iChalky's settings. The application will remember that setting and on subsequent launches it will no longer try to connect to the device's microphone input and hence, no longer mute iPod music that you might be listening to.
In either cases however, iChalky will not dance to the tracks you are playing from the iPod application. The problem is not to let the music play in the background, but for Chalky to hear it. It appears that Apple's concept of an audio session is confined to its own application and I haven't found a way for iChalky to peek at the iPod audio output.
Why can't iChalky dance to music I'm playing from my iPod application?
I've always wanted Chalky to dance to the iPod music but after going carefully through the documentation and experimenting quite a bit I have never found a way to do it. Despite a few inquiries to Apple's dev support I've never heard back from them about this. This has been a source of frustration for me since iChalky's first version and in fact monitoring the microphone input was more of a plan B. I don't know whether this was intentional on Apple's part or whether it is a simple omission in the SDK but believe me when I say that I really tried.
The problem is not to let the music play in the background (you can already do that with iChalky) but to monitor it. It appears that Apple's SDK doesn't currently allow an application to monitor the audio stream or even the audio level of iPod music. One alternative would be to play the music file from within the iChalky application but that hits another restriction of the iPhone SDK, namely that it is forbidden for an application to get access to the device's music library.