Lines Matching refs:frame

427 	struct usbvision_frame *frame;  in usbvision_find_header()  local
430 frame = usbvision->cur_frame; in usbvision_find_header()
432 while (scratch_get_header(usbvision, &frame->isoc_header) == USBVISION_HEADER_LENGTH) { in usbvision_find_header()
435 frame->isoc_header.magic_2, in usbvision_find_header()
436 frame->isoc_header.magic_1, in usbvision_find_header()
437 frame->isoc_header.header_length, in usbvision_find_header()
438 frame->isoc_header.frame_num, in usbvision_find_header()
439 frame->isoc_header.frame_phase, in usbvision_find_header()
440 frame->isoc_header.frame_latency, in usbvision_find_header()
441 frame->isoc_header.data_format, in usbvision_find_header()
442 frame->isoc_header.format_param, in usbvision_find_header()
443 frame->isoc_header.frame_width, in usbvision_find_header()
444 frame->isoc_header.frame_height); in usbvision_find_header()
447 if (frame->isoc_header.format_param & 0x80) { in usbvision_find_header()
460 frame->frmwidth = frame->isoc_header.frame_width * usbvision->stretch_width; in usbvision_find_header()
461 frame->frmheight = frame->isoc_header.frame_height * usbvision->stretch_height; in usbvision_find_header()
462 frame->v4l2_linesize = (frame->frmwidth * frame->v4l2_format.depth) >> 3; in usbvision_find_header()
470 if (frame->isoc_header.data_format == ISOC_MODE_COMPRESS) { in usbvision_find_header()
473 if (((usbvision->last_isoc_frame_num + 1) % 32) != frame->isoc_header.frame_num) { in usbvision_find_header()
475 PDEBUG(DBG_HEADER, "Lost frame before %d on USB", frame->isoc_header.frame_num); in usbvision_find_header()
480 usbvision->last_isoc_frame_num = frame->isoc_header.frame_num; in usbvision_find_header()
483 frame->scanstate = scan_state_lines; in usbvision_find_header()
484 frame->curline = 0; in usbvision_find_header()
492 volatile struct usbvision_frame *frame; in usbvision_parse_lines_422() local
501 frame = usbvision->cur_frame; in usbvision_parse_lines_422()
502 f = frame->data + (frame->v4l2_linesize * frame->curline); in usbvision_parse_lines_422()
505 len = (frame->isoc_header.frame_width * 2) + 5; in usbvision_parse_lines_422()
507 PDEBUG(DBG_PARSE, "out of data in line %d, need %u.\n", frame->curline, len); in usbvision_parse_lines_422()
511 if ((frame->curline + 1) >= frame->frmheight) in usbvision_parse_lines_422()
514 bytes_per_pixel = frame->v4l2_format.bytes_per_pixel; in usbvision_parse_lines_422()
516 clipmask_index = frame->curline * MAX_FRAME_WIDTH; in usbvision_parse_lines_422()
519 for (i = 0; i < frame->frmwidth; i += (2 * usbvision->stretch_width)) { in usbvision_parse_lines_422()
522 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { in usbvision_parse_lines_422()
527 switch (frame->v4l2_format.format) { in usbvision_parse_lines_422()
556 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { in usbvision_parse_lines_422()
561 switch (frame->v4l2_format.format) { in usbvision_parse_lines_422()
591 frame->curline += usbvision->stretch_height; in usbvision_parse_lines_422()
592 *pcopylen += frame->v4l2_linesize * usbvision->stretch_height; in usbvision_parse_lines_422()
594 if (frame->curline >= frame->frmheight) in usbvision_parse_lines_422()
699 struct usbvision_frame *frame; in usbvision_parse_compress() local
709 frame = usbvision->cur_frame; in usbvision_parse_compress()
710 image_size = frame->frmwidth * frame->frmheight; in usbvision_parse_compress()
711 if ((frame->v4l2_format.format == V4L2_PIX_FMT_YUV422P) || in usbvision_parse_compress()
712 (frame->v4l2_format.format == V4L2_PIX_FMT_YVU420)) { /* this is a planar format */ in usbvision_parse_compress()
714 f = frame->data + (frame->width * frame->curline); in usbvision_parse_compress()
716 f = frame->data + (frame->v4l2_linesize * frame->curline); in usbvision_parse_compress()
718 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { /* initialise u and v pointers */ in usbvision_parse_compress()
720 u = frame->data in usbvision_parse_compress()
722 + (frame->frmwidth >> 1) * frame->curline; in usbvision_parse_compress()
724 } else if (frame->v4l2_format.format == V4L2_PIX_FMT_YVU420) { in usbvision_parse_compress()
725 v = frame->data + image_size + ((frame->curline * (frame->width)) >> 2); in usbvision_parse_compress()
729 if (frame->curline == 0) in usbvision_parse_compress()
746 if (frame->curline != (int)strip_header[2]) { in usbvision_parse_compress()
764 Y = usbvision->intra_frame_buffer + frame->frmwidth * frame->curline; in usbvision_parse_compress()
765 U = usbvision->intra_frame_buffer + image_size + (frame->frmwidth / 2) * (frame->curline / 2); in usbvision_parse_compress()
766 …V = usbvision->intra_frame_buffer + image_size / 4 * 5 + (frame->frmwidth / 2) * (frame->curline /… in usbvision_parse_compress()
771 clipmask_index = frame->curline * MAX_FRAME_WIDTH; in usbvision_parse_compress()
775 idx_end = frame->frmwidth; in usbvision_parse_compress()
786 if (frame->curline % 2) in usbvision_parse_compress()
797 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { in usbvision_parse_compress()
800 } else if (frame->v4l2_format.format == V4L2_PIX_FMT_YUV422P) { in usbvision_parse_compress()
806 } else if (frame->v4l2_format.format == V4L2_PIX_FMT_YVU420) { in usbvision_parse_compress()
808 if (!((idx & 0x01) | (frame->curline & 0x01))) { in usbvision_parse_compress()
816 switch (frame->v4l2_format.format) { in usbvision_parse_compress()
848 if (frame->v4l2_format.format != V4L2_PIX_FMT_YVU420) in usbvision_parse_compress()
849 *pcopylen += frame->v4l2_linesize; in usbvision_parse_compress()
851 *pcopylen += frame->curline & 0x01 ? frame->v4l2_linesize : frame->v4l2_linesize << 1; in usbvision_parse_compress()
853 frame->curline += 1; in usbvision_parse_compress()
855 if (frame->curline >= frame->frmheight) in usbvision_parse_compress()
873 struct usbvision_frame *frame; in usbvision_parse_lines_420() local
890 frame = usbvision->cur_frame; in usbvision_parse_lines_420()
891 f_even = frame->data + (frame->v4l2_linesize * frame->curline); in usbvision_parse_lines_420()
892 f_odd = f_even + frame->v4l2_linesize * usbvision->stretch_height; in usbvision_parse_lines_420()
897 bytes_per_pixel = frame->v4l2_format.bytes_per_pixel; in usbvision_parse_lines_420()
899 clipmask_even_index = frame->curline * MAX_FRAME_WIDTH; in usbvision_parse_lines_420()
902 pixel_per_line = frame->isoc_header.frame_width; in usbvision_parse_lines_420()
909 if ((frame->curline + 1) >= frame->frmheight) in usbvision_parse_lines_420()
935 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { in usbvision_parse_lines_420()
945 switch (frame->v4l2_format.format) { in usbvision_parse_lines_420()
978 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { in usbvision_parse_lines_420()
988 switch (frame->v4l2_format.format) { in usbvision_parse_lines_420()
1023 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { in usbvision_parse_lines_420()
1033 switch (frame->v4l2_format.format) { in usbvision_parse_lines_420()
1066 if (frame->v4l2_format.format == V4L2_PIX_FMT_YUYV) { in usbvision_parse_lines_420()
1076 switch (frame->v4l2_format.format) { in usbvision_parse_lines_420()
1122 frame->curline += 2 * usbvision->stretch_height; in usbvision_parse_lines_420()
1123 *pcopylen += frame->v4l2_linesize * 2 * usbvision->stretch_height; in usbvision_parse_lines_420()
1125 if (frame->curline >= frame->frmheight) in usbvision_parse_lines_420()
1140 struct usbvision_frame *frame; in usbvision_parse_data() local
1145 frame = usbvision->cur_frame; in usbvision_parse_data()
1152 if (frame->scanstate == scan_state_scanning) { in usbvision_parse_data()
1154 } else if (frame->scanstate == scan_state_lines) { in usbvision_parse_data()
1171 frame->grabstate = frame_state_done; in usbvision_parse_data()
1172 v4l2_get_timestamp(&(frame->timestamp)); in usbvision_parse_data()
1173 frame->sequence = usbvision->frame_num; in usbvision_parse_data()
1176 list_move_tail(&(frame->frame), &usbvision->outqueue); in usbvision_parse_data()
1188 frame->grabstate = frame_state_grabbing; in usbvision_parse_data()
1192 frame->scanlength += copylen; in usbvision_parse_data()
1321 frame); in usbvision_isoc_irq()
1798 usbvision->frame[i].index = i; in usbvision_frames_alloc()
1799 usbvision->frame[i].grabstate = frame_state_unused; in usbvision_frames_alloc()
1800 usbvision->frame[i].data = usbvision->fbuf + in usbvision_frames_alloc()
1807 usbvision->frame[i].width = usbvision->curwidth; in usbvision_frames_alloc()
1808 usbvision->frame[i].height = usbvision->curheight; in usbvision_frames_alloc()
1809 usbvision->frame[i].bytes_read = 0; in usbvision_frames_alloc()
1844 usbvision->frame[i].grabstate = frame_state_unused; in usbvision_empty_framequeues()
1845 usbvision->frame[i].bytes_read = 0; in usbvision_empty_framequeues()