Procesamiento de imágenes con Android Camera

Quiero utilizar el onPreviewFrame para procesar la imagen antes de mostrarla al usuario (es decir, aplicar un tinte de color, sepia, etc.). Como he entendido, el byte [] datos devueltos a la devolución de llamada se codifica en YUV420sp. ¿La gente ha estado decodificando esto a RGB en Java o usando NDK (código nativo)? ¿Alguien tiene un ejemplo de una función que decodifica esto a RGB y cómo se utilizan los valores RGB después?

Gracias.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.