【问题标题】:Media Player Show video媒体播放器显示视频
【发布时间】:2012-07-10 00:58:33
【问题描述】:

为什么 MediaPlayer 没有在视频可用时立即显示。我的意思是在 iPhone 上播放视频时,视频会立即显示。即使从暂停中返回。但在 Android 上,屏幕会保持黑屏几毫秒到一秒,具体取决于所使用的设备和后台运行的进程数。

我问这个是因为我想使用我的视频播放中的一个开始帧作为一种屏幕截图,目前我正在使用处理程序在暂停视频之前等待 1 秒。

谁能告诉我一种快速的方法,让视频在视频开始甚至准备好后立即显示,而不是我的解决方法?

编辑: 这是我准备视频播放器的方法,因此应该正确准备。

private void initVideo() 
{
    Log.i("VideoPlayer", "Initialize Video File" + videoFileName);

    AssetFileDescriptor afd;
    try {
        if(videoFileName != null);
        {

            afd = getAssets().openFd(videoFileName);

            vidplayer = new MediaPlayer();

            vidplayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getDeclaredLength());

            vidplayer.setDisplay(holder);
            vidplayer.prepare();
            vidplayer.setOnCompletionListener(this);
            vidplayer.setOnPreparedListener(this);  
            //Log.i("INITVIDEO", Integer.toString(videoPausedAt));
            vidplayer.seekTo(videoPausedAt);
            //Log.i("VideoPlayer", "video Prepared");

            videoDuration = vidplayer.getDuration()/1000;


            isVideoReady = true;

        }

    } catch (IllegalArgumentException e) {
        e.printStackTrace();
    } catch (IllegalStateException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (Exception e)
    {
        //Log.i("InitPlayer", e.getClass().toString());
        e.printStackTrace();
    }


}

【问题讨论】:

    标签: android video media-player


    【解决方案1】:

    对于背景,您可以获取视频的缩略图:

    private Bitmap getThumbnail(String path){
        try{
            return ThumbnailUtils.createVideoThumbnail(path, MediaStore.Images.Thumbnails.MINI_KIND);
    
        }catch(Exception e){
            return null;
        }
    }
    

    当视频开始播放时,您需要将背景设置回 null,否则您将无法看到视频。

    至于它不会立即播放,如果您准备正确,它应该在调用 start() 时立即播放,但如果它必须从互联网上的流中加载数据,它可能会延迟。

    【讨论】:

    • 我会尝试使用它,但我的资产文件夹中有我的视频文件。
    【解决方案2】:

    我发现这是手机故障。(大多数情况下)视频会自动显示,除非手机被应用程序卡住,因此加载视频需要更长的时间(在运行 voip 服务后注意到)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-10
      • 2014-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-18
      • 1970-01-01
      相关资源
      最近更新 更多