How to get the pixel-data of a (MP4) video stream ?


I work with (Linaro) Android 4.0.3 on an evaluation board called ‘Pandaboard’ and I’m able to use the OpenMAX AL through the Android NDK. I got an IP-Camera which streams a MP4-Videostream (no sound) over RTSP and the Video is displayed correctly when I use the standard Android/Java-Mediaplayer. What I want is to read the color-information of the pixels in the video-stream/frames. I couldn’t find a way to do this on Java-level so I wanted to ask if there is a way to use OpenMAX AL to configure the Stream-URI as a DataSource and like a callback-funktion as a DataSink where I can access the pixel-data like an array of RGB-data or something ?

I would appreciate any kind of help on this topic very much!
Thanks, Andrew

If you set the sink to a surface texture rather than a surface, you should be able to read out the pixels using OpenGL ES. This will only work if the video content is not DRM-protected. For follow-up, please see