Store information in audio file
<p>I want to store information like artist while recording an MP3 file.   :  </p>

<pre><code>public class AudioCap extends Activity {  
    private static final String LOG_TAG = "AudioRecordTest";  
    private static String mFileName = null;  

    private RecordButton mRecordButton = null;  
    private MediaRecorder mRecorder = null;  

    private PlayButton mPlayButton = null;    
    private MediaPlayer mPlayer = null;  

    private void onRecord(boolean start) {  
        if (start) {  
            startRecording();  
    }       else {  
            stopRecording();  
    }  
     }  

    private void onPlay(boolean start) {  
        if (start) {  
            startPlaying();  
        }   else {  
            stopPlaying();  
        }  
    } 

    private void startPlaying() {  
        mPlayer = new MediaPlayer();  
         try {  
            mPlayer.setDataSource(mFileName);  
            mPlayer.prepare();  
            mPlayer.start();  
        } catch (IOException e) {  
             Log.e(LOG_TAG, "prepare() failed");  
        }  
    }  

private void stopPlaying() {
    mPlayer.release();
    mPlayer = null;
}

private void startRecording() {
    mRecorder = new MediaRecorder();
    mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    mRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
    mRecorder.setOutputFile(mFileName);
    mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

    try {
        mRecorder.prepare();
    } catch (IOException e) {
        Log.e(LOG_TAG, "prepare() failed");
    }

    mRecorder.start();
}

private void stopRecording() {
    mRecorder.stop();
    mRecorder.release();
    mRecorder = null;
}

class RecordButton extends Button {
    boolean mStartRecording = true;

    OnClickListener clicker = new OnClickListener() {
        public void onClick(View v) {
            onRecord(mStartRecording);
            if (mStartRecording) {
                setText("Stop recording");
            } else {
                setText("Start recording");
            }
            mStartRecording = !mStartRecording;
        }
    };

    public RecordButton(Context ctx) {
        super(ctx);
        setText("Start recording");
        setOnClickListener(clicker);
    }
}

class PlayButton extends Button {
    boolean mStartPlaying = true;

    OnClickListener clicker = new OnClickListener() {
        public void onClick(View v) {
            onPlay(mStartPlaying);
            if (mStartPlaying) {
                setText("Stop playing");
            } else {
                setText("Start playing");
            }
            mStartPlaying = !mStartPlaying;
        }
    };

    public PlayButton(Context ctx) {
        super(ctx);
        setText("Start playing");
        setOnClickListener(clicker);
    }
}

public AudioCap() {
    mFileName = Environment.getExternalStorageDirectory().getAbsolutePath();
    mFileName += "/audiorecordtest.mp3";
}

@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);

    LinearLayout ll = new LinearLayout(this);
    mRecordButton = new RecordButton(this);
    ll.addView(mRecordButton,
            new LinearLayout.LayoutParams(
                    ViewGroup.LayoutParams.WRAP_CONTENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT,
                    0));
    mPlayButton = new PlayButton(this);
    ll.addView(mPlayButton,
            new LinearLayout.LayoutParams(
                    ViewGroup.LayoutParams.WRAP_CONTENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT,
                    0));
    setContentView(ll);
}

@Override
public void onPause() {
    super.onPause();
    if (mRecorder != null) {
        mRecorder.release();
        mRecorder = null;
    }

    if (mPlayer != null) {
        mPlayer.release();
        mPlayer = null;
    }
}
</code></pre>

<p>}</p>

<p>I have following code to record my audio file in mp3 format. But details can't be added to it. So is there any way so that I can store some metadata through my android activity/java program into my recorded audio file.  </p>

<p>Regards,<br>
Sneha</p>
