Hi, Chris

You can check "adb logcat". If surfacefringer fails to load overlay.*.so
(it's in /system/lib/hw), it means dream does not support hardware overlays.
I'm not familar with HDC dream. So I can't give you helpful advice up to
now.

Regards,
Jill

On Sat, Jun 20, 2009 at 12:43 AM, Chris Rutherford <
chrismrutherf...@googlemail.com> wrote:

>
> When I run this (test) code on the HDC dream I get null address for
> buffer and address.  I can create the isurface  and overlay ok (no
> segfaults).
>
> printf("buffer = %p\n", buffer);  (prints buffer = 0x0)
> printf("address = %p\n", address); (prints address = 0x0)
>
> Is this because the dream does not support hardware overlays?  What
> can I do to make this work?
>
>
> On Apr 30, 3:53 pm, "Jill.Zhou" <ruohong.z...@gmail.com> wrote:
> > After debug into SurfaceFringer, I found the following code can work
> > to set overlay position:
> >
> >     sp<SurfaceComposerClient> client = new SurfaceComposerClient();
> >
> >     // create pushbuffer surface
> >     sp<Surface> surface = client->createSurface(getpid(), 0, 320,
> > 240,
> >             PIXEL_FORMAT_UNKNOWN, ISurfaceComposer::ePushBuffers);
> >
> >     // get to the isurface
> >     sp<ISurface> isurface = Test::getISurface(surface);
> >     printf("isurface = %p\n", isurface.get());
> >
> >     // now request an overlay
> >     sp<OverlayRef> ref = isurface->createOverlay(320, 240,
> > PIXEL_FORMAT_RGB_565);
> >     sp<Overlay> overlay = new Overlay(ref);
> >
> >     /* Code to set position */
> >     client->openTransaction();
> >     surface->setPosition(30, 30);
> >     client->closeTransaction();
> >
> >     /*
> >      * here we can use the overlay API
> >      */
> >
> >     overlay_buffer_t buffer;
> >     overlay->dequeueBuffer(&buffer);
> >     printf("buffer = %p\n", buffer);
> >
> >     void* address = overlay->getBufferAddress(buffer);
> >     printf("address = %p\n", address);
> >
> >     overlay->queueBuffer(buffer);
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"android-framework" group.
To post to this group, send email to android-framework@googlegroups.com
To unsubscribe from this group, send email to 
android-framework+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/android-framework?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to