【发布时间】:2014-07-23 04:53:20
【问题描述】:
我有一个MediaPlayer 将视频渲染到TextureView。这是有效的。
现在,我想在这个TextureView 上显示给定时间的静止图像,然后让MediaPlayer 将视频渲染到相同的TextureView。
这是我渲染位图的代码:
Canvas canvas = mTextureView.lockCanvas();
canvas.drawBitmap(sourceBitmap, matrix, new Paint());
mTextureView.unlockCanvasAndPost(canvas);
此后,任何播放视频的尝试都会导致视频播放器触发ERROR_INVALID_OPERATION (-38)。
我尝试注释掉对drawBitmap 的调用,但错误仍然发生。似乎调用lockCanvas 后跟unlockCanvasAndPost 的简单行为导致TextureView 不适合MediaPlayer 使用。
有什么方法可以将TextureView 重置为允许MediaPlayer 使用它的状态吗?
我正在使用 Android 4.2.2。
【问题讨论】:
标签: android video android-mediaplayer textureview