我正在为android做一个类似skype的项目。利用surfaceView和mediacodec实现了接收数据的解码和显示。但是许多设备只支持H264解码。因此,我有一个软件解码器,用于解码VP8视频流,对数据进行解码并放入全局缓冲区。现在,我想用表面视图显示解码后的流(它是使用openGL完成的,但速度非常慢)。但是没有想办法用surfaceView来做它。有没有人知道如何将解码后的视频流呈现到surfaceView的表面。
非常感谢.
发布于 2013-12-10 06:24:07
我找到了答案
bitmapSurface = Bitmap.createBitmap(320, 240, Bitmap.Config.ARGB_8888);
bitmapSurface.copyPixelsFromBuffer(ByteBuffer.wrap(argb_frame));
c = myVideoSurfaceView.getHolder().lockCanvas();
bitmapSurface = Bitmap.createScaledBitmap(bitmapSurface,surflp.width, surflp.height, true);
c.drawBitmap(bitmapSurface, 0, 0, null);
myVideoSurfaceView.getHolder().unlockCanvasAndPost(c);https://stackoverflow.com/questions/20343804
复制相似问题