|
1.
android多媒体介绍
android的多媒体功能基于PacketVideo的OpenCORE。这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、 H.264、 MP3、 AAC、 AMR、JPG、 PNG,底级实现在源码的external/opencore中
2.
android框架对多媒体的支持
应用程序调用接口
frameworks/base/media/java/android/media/MediaPlayer.java
3.
例程
1)
功能
播放编辑框中指定的多媒体文件
2)
可从此处下载可独立运行的代码 mymedia.tgz.rar (10.78 KB, 下载次数: 6)
3)
核心代码及说明
package com.android.mymedia;
import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.Button;
import android.view.View.OnClickListener;
import android.view.View;
import android.media.MediaPlayer;
import android.net.Uri;
public class MyMediaActivity extends Activity {
private Button mPlayBtn;
private Button mStopBtn;
private EditText mEditText;
private MediaPlayer mMediaPlayer;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mPlayBtn = (Button) this.findViewById(R.id.play_button);
mStopBtn = (Button) this.findViewById(R.id.stop_button);
mEditText = (EditText) this.findViewById(R.id.edit_text);
mPlayBtn.setOnClickListener(buttonListener);
mStopBtn.setOnClickListener(buttonListener);
mEditText.setText("/sdcard/test.mp3");
}
@Override
public void onDestroy() {
stopMedia();
super.onDestroy();
}
private OnClickListener buttonListener = new OnClickListener() {
public void onClick(View v) {
if (mPlayBtn.equals(v)) {
playMedia();
} else if (mStopBtn.equals(v)) {
stopMedia();
}
}
};
private void playMedia() {
stopMedia();
Uri playUri = Uri.parse(String.valueOf(mEditText.getText()));
mMediaPlayer = MediaPlayer.create(this, playUri);
mMediaPlayer.start();
}
private void stopMedia() {
if (mMediaPlayer != null) {
if (mMediaPlayer.isPlaying())
mMediaPlayer.stop();
mMediaPlayer.release();
mMediaPlayer = null;
}
}
}
4.
参考:1)
Android源码自带的多媒体播放例程
development/samples/ApiDemos/src/ocm/example/android/apis/media/MediaPlayerDemo* |
|