Hi,
I am developing a player application on OMAP4 android ICS. In this, I am using the legacy C code which does the decoding functionality. The decoder is the TI's H.264 decoder which I are accessing through I-OMX interface. This decoder is using the Surface (Native window) buffers for decoding into it and that buffer is displayed. When I run the application multiple times, we notice that the ION buffer allocation (queueing) through native window fails. While closing, I am doing the cancel buffers to all the buffers which is not queued and is still with the application. I am also making sure that ANativeWindow_release is called and surface recreated to get a new native window for usage in the next iteration. But still I am not getting memory. I think the display buffers are not getting released. In relation to this, I have the below questions.
1. Is there a way to know how much tiler memory is being used by the application?
2. Is there a sureshot way of releasing the native window buffer after usage? How should this be done and what should be the sequence of calls at different layers.