Cómo utilizar la cámara con Android OpenGL ES para trabajar?
Quiero usar el OpenGL ES para la vista previa de la cámara Android y Guardar la imagen capturada.
Me gusta usar el OpenGL ES en la cámara Android para darle cierto efecto a la cámara Android. Así que por favor, ¿alguien me dice cómo hacerlo?
- Cómo pasar la matriz int en el fragmento de fragmento de Android OpenGl
- Dónde almacenar código de sombreado en la aplicación para Android
- Shader para Android OpenGL ES
- Intercambiar píxeles de MainTex con otras texturas a través de la superficie Shader (Unity)
- Pasar atributos personalizados a un shader de fragmentos personalizado
- Cómo pasar los datos correctos a un programa de shader OpenGL-ES 2.0
- Android glShaderBinary
- Aplicando textura a Cubo, textura diferente en cada cara de cubo
- Android: TextView dañado usando .setShader ()
- ¿Cómo acceder a otro vértice en un programa de sombreado de vértices en opengl es 2?
- ¿Por qué mi programa de shader openGL para puntos tiene anillos de artefactos?
- ¿Se descarta mal el rendimiento del programa en OpenGL?
- Cómo renderizar la imagen de la cámara YUV-NV21 de Android en el fondo en libgdx con OpenGLES 2.0 en tiempo real?
Es necesario implementar la interfaz android.hardware.Camera.PreviewCallback
y anular el método
public synchronized void onPreviewFrame(byte[] data, Camera camera) { myOpenGLObject.receiveFrames(data); }
Para leer los fotogramas recibidos de la cámara de devolución de llamada. Le sugiero que eche un vistazo a la http://code.google.com/p/andar/ . Especialmente la clase CameraPreviewHandler.java .
Espero que esto responda tu pregunta.
Una forma más rápida es evitar la onPreviewFrame
llamada onPreviewFrame
y utilizar SurfaceTexture
como la textura a la que la cámara procesa la vista previa. Echa un vistazo al ejemplo dentro de grafika que más o menos hace lo mismo: https://github.com/google/grafika/blob/master/src/com/android/grafika/CameraCaptureActivity.java
- ¿Cómo tener un efecto de paralaje entre 2 ViewPagers?
- La base de datos Android está dañada, pero puede abrirse en SQLite Manager. ¿Recuperable?