1

我在我的应用程序上播放视频时遇到了这个大问题。我有这个游戏,想在某个地方展示一些视频,但最好的情况是我能听到声音但看不到视频。

这是持有人

 public void surfaceCreated(SurfaceHolder holder) {
      level.playerholder = holder;              
      gameLoopThread.setRunning(true);
      renderLoopThread.setRunning(true);
       gameLoopThread.start();
    renderLoopThread.start();               
 }

这是媒体播放器的创建,应该显示视频

while(!playerholder.isCreating());          
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDisplay(playerholder);


switch(startVideo){
case 1:
try {   
mediaPlayer.setDataSource(context,Uri.parse("android.resource://com.getfun.treevolve/raw/getfunvideo"));
                mediaPlayer.prepare();
            } catch (IllegalArgumentException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            } catch (SecurityException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            } catch (IllegalStateException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            } catch (IOException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
            break;
        }




        Log.d("player", "Sec: " + Integer.toString(mediaPlayer.getDuration()));



        Log.d("player", "Video width: " + Integer.toString(mediaPlayer.getVideoWidth()));
        mediaPlayer.start();

使用此设置,我的日志仅显示 0。就像视频错误一样。如果在第二行中我删除了持有人

 mediaPlayer.setDisplay(playerholder);

正在工作,日志中的所有信息都正确显示,但是我听到了音频但什么也没看到。

谢谢你的帮助,我真的很需要这个。=)

4

0 回答 0