NVIDIA posts open-source samples that use OMX-AL to do many of the things you are asking about. The code is in the Tegra Android Development Pack.

Look here:...