I am working on a video calling application. There is a service part which decodes things and uses the surface flinger (it runs as root. it's a custom device, we are in complete control) to write pixels to a surface that an activity has set up.
It works much like the camera preview mechanism provided by mediaserver. (We were unable to get mediaserver to do this for us, PV/OMX is a dark pit of despair, we think. We are using some of the OMX libraries though) Things work, but frame that I send to the surface is clipped. I'd like it scaled --- I'm unclear where the best place to do this is. The Camera preview is clearly scaled nicely, I suspect by GL hardware. I can not see anything specific in external/opencore/android/android_output_surface.cpp that might do this, nor do I see anything different in the way the surface has been setup in the activity. So, I suspect that I have to scale it myself, that it just appears to work properly because of the way opencore sets up it's pipeline (itself a black art, I think). Can someone confirm my belief? And if so, is there a class that nicely does this for me, using whatever hardware accel might be available? -- unsubscribe: [email protected] website: http://groups.google.com/group/android-porting
