Home | History | Annotate | Download | only in src

Lines Matching refs:video

26 AVCStatus IntraMBPrediction(AVCCommonObj *video)
30 AVCMacroblock *currMB = video->currMB;
31 AVCPictureData *currPic = video->currPic;
35 int16 *dataBlock = video->block;
41 uint32 cbp4x4 = video->cbp4x4;
43 offset = (video->mb_y << 4) * pitch + (video->mb_x << 4);
47 video->pred_block = video->pred + 84; /* point to separate prediction memory */
48 pred = video->pred_block;
49 video->pred_pitch = 20;
51 video->pred_block = curL; /* point directly to the frame buffer */
52 video->pred_pitch = pitch;
67 status = Intra_4x4(video, block_x, block_y, comp);
132 video->pintra_pred_top = video->intra_pred_top + (video->mb_x << 4);
133 video->pintra_pred_left = video->intra_pred_left + 1;
134 video->intra_pred_topleft = video->intra_pred_left[0];
137 video->pintra_pred_top = curL - pitch;
138 video->pintra_pred_left = curL - 1;
139 if (video->mb_y)
141 video->intra_pred_topleft = *(curL - pitch - 1);
148 if (video->intraAvailB)
150 Intra_16x16_Vertical(video);
159 if (video->intraAvailA)
161 Intra_16x16_Horizontal(video, pitch);
169 Intra_16x16_DC(video, pitch);
172 if (video->intraAvailA && video->intraAvailB && video->intraAvailD)
174 Intra_16x16_Plane(video, pitch);
222 offset = (offset >> 2) + (video->mb_x << 2); //((video->mb_y << 3)* pitch + (video->mb_x << 3));
227 video->pintra_pred_top_cb = video->intra_pred_top_cb + (video->mb_x << 3);
228 video->pintra_pred_left_cb = video->intra_pred_left_cb + 1;
229 video->intra_pred_topleft_cb = video->intra_pred_left_cb[0];
230 video->pintra_pred_top_cr = video->intra_pred_top_cr + (video->mb_x << 3);
231 video->pintra_pred_left_cr = video->intra_pred_left_cr + 1;
232 video->intra_pred_topleft_cr = video->intra_pred_left_cr[0];
236 video->pintra_pred_top_cb = curCb - pitch;
237 video->pintra_pred_left_cb = curCb - 1;
238 video->pintra_pred_top_cr = curCr - pitch;
239 video->pintra_pred_left_cr = curCr - 1;
241 if (video->mb_y)
243 video->intra_pred_topleft_cb = *(curCb - pitch - 1);
244 video->intra_pred_topleft_cr = *(curCr - pitch - 1);
249 predCb = video->pred + 452;
251 video->pred_pitch = 12;
255 video->pred_pitch = currPic->pitch >> 1;
261 Intra_Chroma_DC(video, pitch, predCb, predCr);
264 if (video->intraAvailA)
267 Intra_Chroma_Horizontal(video, pitch, predCb, predCr);
275 if (video->intraAvailB)
278 Intra_Chroma_Vertical(video, predCb, predCr);
286 if (video->intraAvailA && video->intraAvailB && video->intraAvailD)
289 Intra_Chroma_Plane(video, pitch, predCb, predCr);
358 SaveNeighborForIntraPred(video, offset);
364 void SaveNeighborForIntraPred(AVCCommonObj *video, int offset)
366 AVCPictureData *currPic = video->currPic;
371 int mb_x = video->mb_x;
376 pred = video->pred + 384; /* bottom line for Y */
390 video->intra_pred_topleft = video->intra_pred_top[(mb_x<<4)+15];
391 video->intra_pred_topleft_cb = video->intra_pred_top_cb[(mb_x<<3)+7];
392 video->intra_pred_topleft_cr = video->intra_pred_top_cr[(mb_x<<3)+7];
394 /* then copy to video->intra_pred_top, intra_pred_top_cb, intra_pred_top_cr */
395 /*memcpy(video->intra_pred_top + (mb_x<<4), pred, 16);
396 memcpy(video->intra_pred_top_cb + (mb_x<<3), predCb, 8);
397 memcpy(video->intra_pred_top_cr + (mb_x<<3), predCr, 8);*/
398 tmp_ptr = video->intra_pred_top + (mb_x << 4);
403 tmp_ptr = video->intra_pred_top_cb + (mb_x << 3);
406 tmp_ptr = video->intra_pred_top_cr + (mb_x << 3);
413 pred = video->pred + 99; /* last column*/
417 tmp_ptr = video->intra_pred_left;
418 tmp_word = video->intra_pred_topleft;
454 predCb = video->pred + 459;
460 tmp_ptr = video->intra_pred_left_cb;
461 tmp_word = video->intra_pred_topleft_cb;
481 predCr = video->pred + 603;
485 tmp_ptr = video->intra_pred_left_cr;
486 tmp_word = video->intra_pred_topleft_cr;
508 AVCStatus Intra_4x4(AVCCommonObj *video, int block_x, int block_y, uint8 *comp)
510 AVCMacroblock *currMB = video->currMB;
513 int pitch = video->currPic->pitch;
522 /* boundary blocks use video->pred_intra_top, pred_intra_left, pred_intra_topleft */
525 video->pintra_pred_left = video->intra_pred_left + 1 + (block_y << 2);
530 video->pintra_pred_left = video->pred_block + block_offset - 1;
531 pitch = video->pred_pitch;
536 video->pintra_pred_top = video->intra_pred_top + (block_x << 2) + (video->mb_x << 4);
540 video->pintra_pred_top = video->pred_block + block_offset - video->pred_pitch;
545 video->intra_pred_topleft = video->intra_pred_left[block_y<<2];
549 video->intra_pred_topleft = video->intra_pred_top[(video->mb_x<<4)+(block_x<<2)-1];
553 video->intra_pred_topleft = video->pred_block[block_offset - video->pred_pitch - 1];
558 video->pintra_pred_top = comp - pitch;
559 video->pintra_pred_left = comp - 1;
560 if (video->mb_y || block_y)
562 video->intra_pred_topleft = *(comp - pitch - 1);
569 if (block_y > 0 || video->intraAvailB)/* to prevent out-of-bound access*/
571 Intra_4x4_Vertical(video, block_offset);
580 if (block_x || video->intraAvailA) /* to prevent out-of-bound access */
582 Intra_4x4_Horizontal(video, pitch, block_offset);
595 availability.top = video->intraAvailB ;
599 availability.left = video->intraAvailA ;
601 Intra_4x4_DC(video, pitch, block_offset, &availability);
606 if (block_y == 0 && !video->intraAvailB)
615 availability.top_right = video->intraAvailB;
619 availability.top_right = video->intraAvailC;
622 Intra_4x4_Down_Left(video, block_offset, &availability);
627 || (block_y && video->intraAvailA)
628 || (block_x && video->intraAvailB)
629 || (video->intraAvailA && video->intraAvailD && video->intraAvailB))
631 Intra_4x4_Diagonal_Down_Right(video, pitch, block_offset);
641 || (block_y && video->intraAvailA)
642 || (block_x && video->intraAvailB)
643 || (video->intraAvailA && video->intraAvailD && video->intraAvailB))
645 Intra_4x4_Diagonal_Vertical_Right(video, pitch, block_offset);
655 || (block_y && video->intraAvailA)
656 || (block_x && video->intraAvailB)
657 || (video->intraAvailA && video->intraAvailD && video->intraAvailB))
659 Intra_4x4_Diagonal_Horizontal_Down(video, pitch, block_offset);
669 if (block_y == 0 && !video->intraAvailB)
678 availability.top_right = video->intraAvailB;
682 availability.top_right = video->intraAvailC;
685 Intra_4x4_Vertical_Left(video, block_offset, &availability);
689 if (block_x || video->intraAvailA)
691 Intra_4x4_Horizontal_Up(video, pitch, block_offset);
711 void Intra_4x4_Vertical(AVCCommonObj *video, int block_offset)
713 uint8 *comp_ref = video->pintra_pred_top;
715 uint8 *pred = video->pred_block + block_offset;
716 int pred_pitch = video->pred_pitch;
736 void Intra_4x4_Horizontal(AVCCommonObj *video, int pitch, int block_offset)
738 uint8 *comp_ref = video->pintra_pred_left;
741 uint8 *pred = video->pred_block + block_offset;
742 int pred_pitch = video->pred_pitch;
770 void Intra_4x4_DC(AVCCommonObj *video, int pitch, int block_offset,
773 uint8 *comp_ref = video->pintra_pred_left;
776 uint8 *pred = video->pred_block + block_offset;
777 int pred_pitch = video->pred_pitch;
788 comp_ref = video->pintra_pred_top;
802 comp_ref = video->pintra_pred_top;
824 void Intra_4x4_Down_Left(AVCCommonObj *video, int block_offset,
827 uint8 *comp_refx = video->pintra_pred_top;
830 uint8 *pred = video->pred_block + block_offset;
831 int pred_pitch = video->pred_pitch;
900 void Intra_4x4_Diagonal_Down_Right(AVCCommonObj *video, int pitch, int
903 uint8 *comp_refx = video->pintra_pred_top;
904 uint8 *comp_refy = video->pintra_pred_left;
908 uint8 *pred = video->pred_block + block_offset;
909 int pred_pitch = video->pred_pitch;
919 x2 = video->intra_pred_topleft; /* re-use x2 instead of y0 */
965 void Intra_4x4_Diagonal_Vertical_Right(AVCCommonObj *video, int pitch, int block_offset)
967 uint8 *comp_refx = video->pintra_pred_top;
968 uint8 *comp_refy = video->pintra_pred_left;
972 uint8 *pred = video->pred_block + block_offset;
973 int pred_pitch = video->pred_pitch;
985 x1 = video->intra_pred_topleft; /* reuse x1 instead of y0 */
1035 void Intra_4x4_Diagonal_Horizontal_Down(AVCCommonObj *video, int pitch,
1038 uint8 *comp_refx = video->pintra_pred_top;
1039 uint8 *comp_refy = video->pintra_pred_left;
1043 uint8 *pred = video->pred_block + block_offset;
1044 int pred_pitch = video->pred_pitch;
1051 x2 = video->intra_pred_topleft; /* reuse x2 instead of y0 */
1108 void Intra_4x4_Vertical_Left(AVCCommonObj *video, int block_offset, AVCNeighborAvailability *availability)
1110 uint8 *comp_refx = video->pintra_pred_top;
1113 uint8 *pred = video->pred_block + block_offset;
1114 int pred_pitch = video->pred_pitch;
1167 void Intra_4x4_Horizontal_Up(AVCCommonObj *video, int pitch, int block_offset)
1169 uint8 *comp_refy = video->pintra_pred_left;
1173 uint8 *pred = video->pred_block + block_offset;
1174 int pred_pitch = video->pred_pitch;
1219 void Intra_16x16_Vertical(AVCCommonObj *video)
1223 uint8 *comp_ref = video->pintra_pred_top;
1224 uint8 *pred = video->pred_block;
1225 int pred_pitch = video->pred_pitch;
1253 void Intra_16x16_Horizontal(AVCCommonObj *video, int pitch)
1257 uint8 *comp_ref = video->pintra_pred_left;
1258 uint8 *pred = video->pred_block;
1259 int pred_pitch = video->pred_pitch;
1276 void Intra_16x16_DC(AVCCommonObj *video, int pitch)
1280 uint8 *comp_ref_x = video->pintra_pred_top;
1281 uint8 *comp_ref_y = video->pintra_pred_left;
1283 uint8 *pred = video->pred_block;
1284 int pred_pitch = video->pred_pitch;
1286 if (video->intraAvailB)
1314 if (video->intraAvailA)
1328 else if (video->intraAvailA)
1356 void Intra_16x16_Plane(AVCCommonObj *video, int pitch)
1359 uint8 *comp_ref_x = video->pintra_pred_top;
1360 uint8 *comp_ref_y = video->pintra_pred_left;
1363 uint8 *pred = video->pred_block;
1367 int pred_pitch = video->pred_pitch;
1382 H += i * (*comp_ref_x0++ - video->intra_pred_topleft);
1482 void Intra_Chroma_DC(AVCCommonObj *video, int pitch, uint8 *predCb, uint8 *predCr)
1487 uint8 *comp_ref_cb_x = video->pintra_pred_top_cb;
1488 uint8 *comp_ref_cb_y = video->pintra_pred_left_cb;
1489 uint8 *comp_ref_cr_x = video->pintra_pred_top_cr;
1490 uint8 *comp_ref_cr_y = video->pintra_pred_left_cr;
1494 int pred_pitch = video->pred_pitch;
1497 if (video->intraAvailB & video->intraAvailA)
1540 else if (video->intraAvailA)
1560 else if (video->intraAvailB)
1620 void Intra_Chroma_Horizontal(AVCCommonObj *video, int pitch, uint8 *predCb, uint8 *predCr)
1624 uint8 *comp_ref_cb_y = video->pintra_pred_left_cb;
1625 uint8 *comp_ref_cr_y = video->pintra_pred_left_cr;
1628 int pred_pitch = video->pred_pitch;
1654 void Intra_Chroma_Vertical(AVCCommonObj *video, uint8 *predCb, uint8 *predCr)
1657 uint8 *comp_ref_cb_x = video->pintra_pred_top_cb;
1658 uint8 *comp_ref_cr_x = video->pintra_pred_top_cr;
1661 int pred_pitch = video->pred_pitch;
1682 void Intra_Chroma_Plane(AVCCommonObj *video, int pitch, uint8 *predCb, uint8 *predCr)
1693 int pred_pitch = video->pred_pitch;
1696 comp_ref_x = video->pintra_pred_top_cb;
1697 comp_ref_y = video->pintra_pred_left_cb;
1698 topleft = video->intra_pred_topleft_cb;
1721 comp_ref_x = video->pintra_pred_top_cr;
1722 comp_ref_y = video->pintra_pred_left_cr;
1723 topleft = video->intra_pred_topleft_cr;