MediaPlayer只有声音没图象,

MediaPlayer只有声音没图象,在线等啊!!!


MediaPlayer只有声音没图象,在线等啊!!!


求帮助。。。。。。。。

Java code


package com.gushi;

import java.io.IOException;

import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
 
  
  
public class app_2 extends Activity {

    private MediaPlayer mp =new MediaPlayer();
    private SurfaceHolder surfaceHolder;
    private SurfaceView surfaceView;  
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.app2);
        
        
        surfaceView = (SurfaceView) findViewById(R.id.SurfaceView02);
        surfaceHolder = surfaceView.getHolder();
        surfaceHolder.setFixedSize(100, 100);
        surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
        
        
         mp.reset();//恢复到未初始化的状态  
         mp=MediaPlayer.create(app_2.this, R.raw.b);//读取视频  
         mp.setAudioStreamType(AudioManager.STREAM_MUSIC);  
         mp.setDisplay(surfaceHolder);//设置屏幕  
           
         try {  
             mp.prepare();  
               
         } catch (IllegalArgumentException e) {  
             // TODO Auto-generated catch block  
             e.printStackTrace();  
         } catch (IllegalStateException e) {  
             // TODO Auto-generated catch block  
             e.printStackTrace();  
         } catch (IOException e) {  
             // TODO Auto-generated catch block  
             e.printStackTrace();  
         }  
         mp.start();  
        
    }  
  
    
    
    
}  




------解决方案--------------------
是不是媒体文件编码的问题?
------解决方案--------------------
换个读取方式试试,不用R.raw.b

//视频文件放在 assert中
AssetFileDescriptor aFD = this.getAssets().openFd("xxx.3gp");
FileDescriptor fileDescriptor = aFD.getFileDescriptor();
m = new MediaPlayer();
m.setDataSource(fileDescriptor, aFD.getStartOffset(), aFD.getLength());
aFD.close();

这篇文章比较详细,希望对你有帮助:
http://www.360doc.com/content/10/1109/18/1290342_67977334.shtml