03-19-2013 08:44 AM
Hi Sean, did you find time to have a look at this?
03-19-2013 02:09 PM
I have loaded it up.. can you explain exactly how to reproduce, and what I should be looking for?
I'm on STL100-1, and I am not seeing any issues so far.
03-19-2013 03:14 PM
managed to reproduce the problem using your app on STL100-3. never saw it on STL100-1.
manifests as a single-frame flash down the side of the screen.
I will pass this the the appropriate team.. interesting..
no workarounds to suggest for you at this point.
03-19-2013 03:34 PM
glad you can reproduce the problem - I was just trying to upload a video previewing the error but the uplaod failed!
I'm wondering if it's to do with the navigationpane back button shown on the camera page but from what I've learnt from docs everything seems ok with the code.
Thanks for looking into it.
03-19-2013 03:41 PM
it's purely a graphics problem.
If I monitor the frame-to-frame brightness computed over the buffers by attaching the following viewfinder callback to camera_start_photo_viewfinder()...
void Focus::vfCallback(camera_handle_t handle, camera_buffer_t *buf, void *arg)
{
static unsigned long brightness = 0;
#define SUBSAMPLE 4
#define THRESHOLD 20
unsigned long cur = 0;
if (buf->frametype == CAMERA_FRAMETYPE_NV12) {
for (unsigned int y=0; y<buf->framedesc.nv12.height; y+=SUBSAMPLE) {
for (unsigned x=0; x<buf->framedesc.nv12.width; x+=SUBSAMPLE) {
cur += buf->framebuf[y*buf->framedesc.nv12.stride+x];
}
}
cur = cur / (buf->framedesc.nv12.height*buf->framedesc.nv12.wi dth/SUBSAMPLE/SUBSAMPLE);
if (brightness != 0) {
if (cur > brightness+THRESHOLD) {
qDebug() << "PREV:" << brightness << " CUR:" << cur;
}
}
qDebug() << cur;
brightness = cur;
}
}
I never see any deviation from my baseline brightness value. This means that the artifact is not camera-related, but appears to be a problem with the graphics compositing on that particular device.
Cheers,
Sean