2016-03-07 41 views
0

我在textureView上显示了一个camerapreview,它工作得很好。但我无法用圆形蒙版遮罩纹理视图。只要我使用掩蔽,什么都不会显示。 这不可能吗?还是有另一种方式?Android的椭圆纹理视图

+0

人们很容易把一个ImageView的覆盖预览表面上方,与负载在您需要的透明区域PNG格式。在OpenGL中做这件事更有效 –

+0

是的,但是我的背景不是静态的 - 它是一个动画渐变。 –

+0

你是否用动画纹理覆盖预览纹理?请披露您的代码的相关部分。在OpenGL中设置透明度可能会很棘手。 –

回答

0

您应该使用API​​ SurfaceTexture。

  1. 渲染相机帧以由自己创建的表面纹理
  2. 绘制框架在表面纹理到屏幕。在绘制过程中,您使用特定的opengl顶点数组来实现圆角。

这是一篇非常有用的文章,其中包含github上的源代码。

https://medium.com/@fabrantes/rounded-video-corners-on-android-3467841cc1b

+0

这应该是一个评论,而不是一个答案。如果这是一个重复的问题,那么[投票结束](http://stackoverflow.com/help/privileges/close-questions)本身和/或留下评论,一旦你[赚](http://meta.stackoverflow .com/q/146472)够[声望](http://stackoverflow.com/help/whats-reputation)。如果问题不是重复的,那么定制这个具体问题的答案。 –