爲什麼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();
}
}
我會盡量使用這個,但我有我的視頻文件在我的資產文件夾。 – Raigex