作者aiweisen (教授...我想畢業)
看板AndroidDev
標題[問題] videoview播放 影片清單 切換會有黑頻
時間Thu Jun 4 10:30:45 2015
前面有爬過文 說用frame layout+setOnPreparedListener就可以辦到
但是我還是不清楚這個要怎麼寫
我目前撥放影片的方式 如下
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE); // set no title
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN); // set
// fullscreen
setContentView(R.layout.animation);
Intent data = getIntent(); // 接收從上一activity傳來的參數
Bundle bundle = data.getExtras();
String temp = bundle.getString("playList");
temp=temp.substring(temp.indexOf("&")+1, temp.length());
playList = temp.split("&");
v = (VideoView) findViewById(R.id.videoView1);
v.setMediaController(new MediaController(videoView.this));
v.setVideoURI(Uri.parse(sdcardPath + playList[playingIndex]));
v.setSoundEffectsEnabled(v.isSoundEffectsEnabled());
v.requestFocus();
v.start();
v.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
}
});
v.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer arg0) {
playingIndex++;
if (playingIndex < playList.length) {
v.setVideoPath(sdcardPath + playList[playingIndex]);
v.requestFocus();
v.start();
}
}
});
}
也就是等待上一個影片播完 讓他跳到setOnCompletionListener後 在撥放下一個影片
但是在切換影片的時候會有黑頻出現 造成影片不是很順
請問一下 哪邊有frame layout+setOnPreparedListener +videoview的寫法可以參考?
或者是說 上述的做法整體流程又該怎麼做?
我自己是這麼想 new 兩個frame 每一個frame負責一個videoview
當frame1在撥放的時候 在frame2就進入setOnPreparedListener 先把影片加載 先stop
等frame1播完(跳到setOnCompletionListener)的時候
再呼叫frame2的(這邊要由frame1呼叫 但我不知道呼叫frame2的什麼地方)
frame2收到後就撥放第二個影片
這時frame1又進入setOnPreparedListener 準備下一個影片
無縫撥放影片是這樣做嗎?
--
作者 MicroGG (La new總冠軍) 看板 Japan_Travel
標題 [問題] 溫泉旅館的兒童人頭算法?
→ robler:問問題然後自稱拎背這樣好嗎 有點禮貌ok?04/11 16:32
→ penan:骨科大 XD04/11 16:34
→ MicroGG:你不懂,我有苦衷,我不說拎杯會被鄉民罵..04/11 16:36
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.138.150.24
※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1433385048.A.E68.html
※ 編輯: aiweisen (140.138.150.24), 06/04/2015 10:41:54