• Home
  • Raw
  • Download

Lines Matching refs:it

329 int VP8GetCostLuma4(VP8EncIterator* const it, const int16_t levels[16]) {  in VP8GetCostLuma4()  argument
330 const int x = (it->i4_ & 3), y = (it->i4_ >> 2); in VP8GetCostLuma4()
332 VP8Encoder* const enc = it->enc_; in VP8GetCostLuma4()
337 ctx = it->top_nz_[x] + it->left_nz_[y]; in VP8GetCostLuma4()
343 int VP8GetCostLuma16(VP8EncIterator* const it, const VP8ModeScore* const rd) { in VP8GetCostLuma16() argument
345 VP8Encoder* const enc = it->enc_; in VP8GetCostLuma16()
349 VP8IteratorNzToBytes(it); // re-import the non-zero context in VP8GetCostLuma16()
354 R += GetResidualCost(it->top_nz_[8] + it->left_nz_[8], &res); in VP8GetCostLuma16()
360 const int ctx = it->top_nz_[x] + it->left_nz_[y]; in VP8GetCostLuma16()
363 it->top_nz_[x] = it->left_nz_[y] = (res.last >= 0); in VP8GetCostLuma16()
369 int VP8GetCostUV(VP8EncIterator* const it, const VP8ModeScore* const rd) { in VP8GetCostUV() argument
371 VP8Encoder* const enc = it->enc_; in VP8GetCostUV()
375 VP8IteratorNzToBytes(it); // re-import the non-zero context in VP8GetCostUV()
381 const int ctx = it->top_nz_[4 + ch + x] + it->left_nz_[4 + ch + y]; in VP8GetCostUV()
384 it->top_nz_[4 + ch + x] = it->left_nz_[4 + ch + y] = (res.last >= 0); in VP8GetCostUV()
466 static void CodeResiduals(VP8BitWriter* const bw, VP8EncIterator* const it, in CodeResiduals() argument
471 const int i16 = (it->mb_->type_ == 1); in CodeResiduals()
472 const int segment = it->mb_->segment_; in CodeResiduals()
473 VP8Encoder* const enc = it->enc_; in CodeResiduals()
475 VP8IteratorNzToBytes(it); in CodeResiduals()
481 it->top_nz_[8] = it->left_nz_[8] = in CodeResiduals()
482 PutCoeffs(bw, it->top_nz_[8] + it->left_nz_[8], &res); in CodeResiduals()
491 const int ctx = it->top_nz_[x] + it->left_nz_[y]; in CodeResiduals()
493 it->top_nz_[x] = it->left_nz_[y] = PutCoeffs(bw, ctx, &res); in CodeResiduals()
503 const int ctx = it->top_nz_[4 + ch + x] + it->left_nz_[4 + ch + y]; in CodeResiduals()
505 it->top_nz_[4 + ch + x] = it->left_nz_[4 + ch + y] = in CodeResiduals()
511 it->luma_bits_ = pos2 - pos1; in CodeResiduals()
512 it->uv_bits_ = pos3 - pos2; in CodeResiduals()
513 it->bit_count_[segment][i16] += it->luma_bits_; in CodeResiduals()
514 it->bit_count_[segment][2] += it->uv_bits_; in CodeResiduals()
515 VP8IteratorBytesToNz(it); in CodeResiduals()
520 static void RecordResiduals(VP8EncIterator* const it, in RecordResiduals() argument
524 VP8Encoder* const enc = it->enc_; in RecordResiduals()
526 VP8IteratorNzToBytes(it); in RecordResiduals()
528 if (it->mb_->type_ == 1) { // i16x16 in RecordResiduals()
531 it->top_nz_[8] = it->left_nz_[8] = in RecordResiduals()
532 RecordCoeffs(it->top_nz_[8] + it->left_nz_[8], &res); in RecordResiduals()
541 const int ctx = it->top_nz_[x] + it->left_nz_[y]; in RecordResiduals()
543 it->top_nz_[x] = it->left_nz_[y] = RecordCoeffs(ctx, &res); in RecordResiduals()
552 const int ctx = it->top_nz_[4 + ch + x] + it->left_nz_[4 + ch + y]; in RecordResiduals()
554 it->top_nz_[4 + ch + x] = it->left_nz_[4 + ch + y] = in RecordResiduals()
560 VP8IteratorBytesToNz(it); in RecordResiduals()
568 static void RecordTokens(VP8EncIterator* const it, const VP8ModeScore* const rd, in RecordTokens() argument
572 VP8Encoder* const enc = it->enc_; in RecordTokens()
574 VP8IteratorNzToBytes(it); in RecordTokens()
575 if (it->mb_->type_ == 1) { // i16x16 in RecordTokens()
576 const int ctx = it->top_nz_[8] + it->left_nz_[8]; in RecordTokens()
579 it->top_nz_[8] = it->left_nz_[8] = in RecordTokens()
591 const int ctx = it->top_nz_[x] + it->left_nz_[y]; in RecordTokens()
593 it->top_nz_[x] = it->left_nz_[y] = in RecordTokens()
605 const int ctx = it->top_nz_[4 + ch + x] + it->left_nz_[4 + ch + y]; in RecordTokens()
607 it->top_nz_[4 + ch + x] = it->left_nz_[4 + ch + y] = in RecordTokens()
614 VP8IteratorBytesToNz(it); in RecordTokens()
640 static void StoreSSE(const VP8EncIterator* const it) { in StoreSSE() argument
641 VP8Encoder* const enc = it->enc_; in StoreSSE()
642 const uint8_t* const in = it->yuv_in_; in StoreSSE()
643 const uint8_t* const out = it->yuv_out_; in StoreSSE()
651 static void StoreSideInfo(const VP8EncIterator* const it) { in StoreSideInfo() argument
652 VP8Encoder* const enc = it->enc_; in StoreSideInfo()
653 const VP8MBInfo* const mb = it->mb_; in StoreSideInfo()
657 StoreSSE(it); in StoreSideInfo()
664 uint8_t* const info = &pic->extra_info[it->x_ + it->y_ * enc->mb_w_]; in StoreSideInfo()
669 case 4: *info = (mb->type_ == 1) ? it->preds_[0] : 0xff; break; in StoreSideInfo()
672 const int b = (int)((it->luma_bits_ + it->uv_bits_ + 7) >> 3); in StoreSideInfo()
680 SetBlock(it->yuv_out_ + Y_OFF, mb->segment_ * 64, 16); in StoreSideInfo()
681 SetBlock(it->yuv_out_ + U_OFF, it->preds_[0] * 64, 8); in StoreSideInfo()
682 SetBlock(it->yuv_out_ + V_OFF, mb->uv_mode_ * 64, 8); in StoreSideInfo()
712 VP8EncIterator it; in OneStatPass() local
719 VP8IteratorInit(enc, &it); in OneStatPass()
722 VP8IteratorImport(&it); in OneStatPass()
723 if (VP8Decimate(&it, &info, rd_opt)) { in OneStatPass()
727 RecordResiduals(&it, &info); in OneStatPass()
730 if (percent_delta && !VP8IteratorProgress(&it, percent_delta)) in OneStatPass()
732 } while (VP8IteratorNext(&it, it.yuv_out_) && --nb_mbs > 0); in OneStatPass()
825 static int PostLoopFinalize(VP8EncIterator* const it, int ok) { in PostLoopFinalize() argument
826 VP8Encoder* const enc = it->enc_; in PostLoopFinalize()
840 enc->residual_bytes_[i][s] = (int)((it->bit_count_[s][i] + 7) >> 3); in PostLoopFinalize()
844 VP8AdjustFilterStrength(it); // ...and store filter stats. in PostLoopFinalize()
855 static void ResetAfterSkip(VP8EncIterator* const it) { in ResetAfterSkip() argument
856 if (it->mb_->type_ == 1) { in ResetAfterSkip()
857 *it->nz_ = 0; // reset all predictors in ResetAfterSkip()
858 it->left_nz_[8] = 0; in ResetAfterSkip()
860 *it->nz_ &= (1 << 24); // preserve the dc_nz bit in ResetAfterSkip()
865 VP8EncIterator it; in VP8EncLoop() local
871 VP8IteratorInit(enc, &it); in VP8EncLoop()
872 VP8InitFilter(&it); in VP8EncLoop()
878 VP8IteratorImport(&it); in VP8EncLoop()
881 if (!VP8Decimate(&it, &info, rd_opt) || dont_use_skip) { in VP8EncLoop()
882 CodeResiduals(it.bw_, &it, &info); in VP8EncLoop()
884 ResetAfterSkip(&it); in VP8EncLoop()
888 VP8EncCodeLayerBlock(&it); in VP8EncLoop()
891 StoreSideInfo(&it); in VP8EncLoop()
892 VP8StoreFilterStats(&it); in VP8EncLoop()
893 VP8IteratorExport(&it); in VP8EncLoop()
894 ok = VP8IteratorProgress(&it, 20); in VP8EncLoop()
895 } while (ok && VP8IteratorNext(&it, it.yuv_out_)); in VP8EncLoop()
897 return PostLoopFinalize(&it, ok); in VP8EncLoop()
909 VP8EncIterator it; in VP8EncTokenLoop() local
924 VP8IteratorInit(enc, &it); in VP8EncTokenLoop()
925 VP8InitFilter(&it); in VP8EncTokenLoop()
928 VP8IteratorImport(&it); in VP8EncTokenLoop()
934 VP8Decimate(&it, &info, rd_opt); in VP8EncTokenLoop()
935 RecordTokens(&it, &info, &enc->tokens_); in VP8EncTokenLoop()
938 VP8EncCodeLayerBlock(&it); in VP8EncTokenLoop()
941 StoreSideInfo(&it); in VP8EncTokenLoop()
942 VP8StoreFilterStats(&it); in VP8EncTokenLoop()
943 VP8IteratorExport(&it); in VP8EncTokenLoop()
944 ok = VP8IteratorProgress(&it, 20); in VP8EncTokenLoop()
945 } while (ok && VP8IteratorNext(&it, it.yuv_out_)); in VP8EncTokenLoop()
955 return PostLoopFinalize(&it, ok); in VP8EncTokenLoop()