-6
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.music);
    start = (Button) findViewById(R.id.button1);
    stop = (Button) findViewById(R.id.button2);
    view = (VideoView) findViewById(R.id.videoView1);
    Uri uri = Uri.parse("android.resource://" + getPackageName()
            + "rii.mp4");
    controller = new MediaController(this);

    view.setMediaController(controller);
    view.setVideoURI(uri);
    // songobj =MediaPlayer.create(music.this,R.raw.zs);

    start.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            // songobj.start();
            view.start();
            // Toast.makeText(getApplicationContext(),
            // "save",Toast.LENGTH_LONG).show();
        }
    });

    stop.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            // songobj.release();
            // songobj.pause();
            view.pause();
        }
    });

}

我在原始文件夹中的视频。请告诉我答案我想在视频视图中播放视频。当我运行活动时,它会给出不支持格式的错误。我已经将格式更改为 android mp4 格式。

4

1 回答 1

2

以下是如何播放可作为本地原始资源(保存在应用程序的 res/raw/ 目录中)的音频的示例:

MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.sound_file_1);
mediaPlayer.start(); // no need to call prepare(); create() does that for you

在这种情况下,“原始”资源是系统不会尝试以任何特定方式解析的文件。但是,此资源的内容不应是原始音频。它应该是受支持格式之一的正确编码和格式化的媒体文件。

以下是您可以从系统中本地可用的 URI 播放的方式(例如,您通过 Content Resolver 获得):

Uri myUri = ....; // initialize Uri here
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(getApplicationContext(), myUri);
mediaPlayer.prepare();
mediaPlayer.start();

通过 HTTP 流从远程 URL 播放如下所示:

String url = "http://........"; // your URL here
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(url);
mediaPlayer.prepare(); // might take long! (for buffering, etc)
mediaPlayer.start();
于 2013-11-12T15:52:39.260 回答