We have development a music video app for iPhone that we need ported to Android. The app is written in native objective-c and you will have full access to the code during the development.
A one time welcome screen with some terms and conditions, you have to accept to get through to the app and you will never see this screen again. When you check the box a button comes up which allows you to start.
The recording function plays a song in the background and the song is divided in various parts, before you have done any recording theres a placeholder so the user understands the basics. When a part is recorded and saved it fills the placeholder and the user can view, delete and submit the video
Our recording function, first it loads a random part of the song togheter with the parts length. When you hold the record button a quick countdown starts, it starts the song togheter with the recording and starts counting down. The progress bar will update togheter with the time. When you release it saves a temporary clip and you continue the song again when you press. Think like instagram/vine. For each clip it creates a thumbnail and you delete the latest clip with a button. There are also filters that we create from the GPUImage library. These are applied before recording starts and are recorded into the video.
This is just a basic send function where the user has to give there name and email or get it from facebook. Then the video is uploaded to our Amazon S3 bucket, a time and progress bar shows along with a cancel button. This process has to be able to run in the background aswell.