讨教一下怎么样实现两个surfaceview的内容拷贝

Android 码拜 4年前 (2016-09-19) 658次浏览
问题描述:
原因是在编写视频播放时,能正常解码的视频,图像显示没有问题,当有问题的视频,播放器能播放,但是显示的是上一次播放的视频的最后一帧的图像,所以,本人想清除surfaceview的内容
清除画布试了一下不行,本人想建议一个空的surfaceview ,播放时将另外一个surfaceview是空的,默认是黑的,拷贝到当前的surfaceview,这样再打开mediaPlayer,实现,
public void clearDraw() {
SurfaceHolder holder = mSurfaceHolder;
Canvas canvas = null;
try {
canvas = holder.lockCanvas(null);
canvas.drawColor(Color.BLACK);
} catch (Exception e) {
} finally {
if (canvas != null) {
holder.unlockCanvasAndPost(canvas);
holder.getSurfaceFrame();
}
}
}
解决方案

50

这个问题是MediaPlayer和SurfaceView数据同步的问题,你可以使用SurfaceView INVISIBlE 黑掉当前SurfaceView 2,3秒的样子 然后再重新VISIBLE

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明讨教一下怎么样实现两个surfaceview的内容拷贝
喜欢 (0)
[1034331897@qq.com]
分享 (0)