outArgs ==> OutArgs size = 1952 Bytes consumed = 25062 Out Buffer in use flag = 0 Decoded Buffer numBufs = 2 Decoded Buffer frameWidth = 800 Decoded Buffer frameHeight = 480 Decoded Buffer framePitch = 864 Decoded Buffer extendedError = 0 Decoded Buffer frameType = 1 Decoded Buffer topFieldFirstFlag = 0 Decoded Buffer repeatFirstFieldFlag = 0 Decoded Buffer frameStatus = 0 Decoded Buffer repeatFrame = 0 Decoded Buffer contentType = 0 Decoded Buffer chromaFormat = 9 Decoded Buffer Buf[0] Address = 0x0x429c4218 Decoded Buffer Buf[0] Size = 0x79800 Decoded Buffer Buf[0] Access Mask = 0x0 Decoded Buffer Buf[1] Address = 0x0x42a4cd18 Decoded Buffer Buf[1] Size = 0x3CC00 Decoded Buffer Buf[1] Access Mask = 0x0 Display Buffer 0: Output ID 1 numBufs = 2: frameWidth = 800 frameHeight = 480 framePitch = 864 extendedError = 0 frameType = 1 topFieldFirstFlag = 0 repeatFirstFieldFlag = 0 frameStatus = 0 repeatFrame = 0 contentType = 0 chromaFormat = 9 Display Buffer Buf[0] Address = 0x0x429c4218 Display Buffer Buf[0] Size = 0x79800 Display Buffer Buf[0] Access Mask = 0x0 Display Buffer Buf[1] Address = 0x0x42a4cd18 Display Buffer Buf[1] Size = 0x3CC00 Display Buffer Buf[1] Access Mask = 0x0 Free Buf ID[0]: 6 <==outArgs [decode] VIDDEC TIME = 350 ms edma copy y
[decode] *********************************************** [decode] srcbidx 864 dstbidx 800 acnt 800 bcnt 480 [decode] *********************************************** edma copy uv
[decode] ***********************************************
[decode] srcbidx 864 dstbidx 800 acnt 800 bcnt 240
[decode] ***********************************************
dm365mmap_params.src = src;
dm365mmap_params.srcmode = 0;
dm365mmap_params.dst = dst;
dm365mmap_params.dstmode = 0;
dm365mmap_params.srcbidx = srcDim->lineLength;
dm365mmap_params.dstbidx = dstDim->lineLength;
dm365mmap_params.acnt = srcDim->width;
dm365mmap_params.bcnt = srcDim->height;
dm365mmap_params.ccnt = 1;
dm365mmap_params.bcntrld = 0;
dm365mmap_params.syncmode = 1; /* ABSync */
pthread_mutex_lock(&lock);
if (ioctl(hFramecopy->fd, DM365MMAP_IOCMEMCPY, &dm365mmap_params) == -1)
{
OSA_SYS_ERR("Failed to execute memcpy\n");
pthread_mutex_unlock(&lock);
return OSA_EFAIL;
}
pthread_mutex_unlock(&lock);
IIMGDEC1_Status.size = 180
IIMGDEC1_Status.extendedError = 0
IIMGDEC1_Status.outputHeight = 480
IIMGDEC1_Status.imageWidth = 800
IIMGDEC1_Status.imageWidth = 800
IIMGDEC1_Status.outputChromaFormat = 4
IIMGDEC1_Status.totalAU = 1500
IIMGDEC1_Status.totalScan = 0
step1
queue1(h264 buff) -> thread decode -> queue2(yuv420sp buff) -> display
step2
queue1(jpeg buff) -> thread decode -> queue2(yuv420sp buff 800*480) -> resize -> (96, 64) -> bmp
if we do a long sleep(about 1s ) in step2 when decode, we found video straps( see 6685.IMG_1315.MOV, at 4, 5s) in the lcd sometime
please tell me if we are using the wrong parameters for edma ioctrl.
thanks in advance. any help will be appreciated. regards, Mike