The well known GStreamer open source media framework is now available in an easy to use Android SDK.
GStreamer is a pipeline approach to handling media streams. You can use the raw C library to build media into your application but there is a single SDK distribution that runs in more or less the same way on a range of platforms - Linux (Ubuntu, Debian and Fedora), Mac OS X (from 10.6), Windows (from XP) and Android (2.3.1 and later).
It is written in C and you use plug-together objects to build up a processing pipeline. Once you have built the pipeline you simply let it get on with the job of retrieving the media stream, processing it and delivering it to the final stage. You can easily put together a player or a processing app. GStreamer takes care of all the messy details such as buffering.
Codec modules are available for most of the standard formats you wil encounter - MP3, MPEG2, MPEG4AVC/H.264, VP8, AAC, AAC+ and Dolby Digital for example. You can read data in from any of the standard containers such as QuickTime. AVI and so on. Filter components can be used to process the media stream e.g. audio filtering, color balance and so on. Finally the stream can be rendered to either audio or video in a platform independent way.
There are also lots of tutorials showing you how to build particular types of application. At the moment these are all in C but there are language bindings to other popular languages - how you make use of them isn't well documented.
In the case of Android however you can mostly use Java to build the UI and to call the C library via the NDK but you do still need to do some work in C to build the pipeline and provide the connection via the JNI. The advantage is that you can share most of the C code with other platform versions of you app.
This seems like a good way to make the complex task of working with media in a platform independent way relatively easy. The only missing part of the picture at the moment is any way to run the same code on iOS and given the problems of working with Apple to extend iOS this is probably a very long time in coming.