• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/router/ffmpeg/libswscale/

Lines Matching refs:filter

179     int64_t *filter=NULL;
194 FF_ALLOCZ_OR_GOTO(NULL, filter, dstW*sizeof(*filter)*filterSize, fail);
197 filter[i*filterSize]= fone;
205 FF_ALLOC_OR_GOTO(NULL, filter, dstW*sizeof(*filter)*filterSize, fail);
212 filter[i]= fone;
219 FF_ALLOC_OR_GOTO(NULL, filter, dstW*sizeof(*filter)*filterSize, fail);
231 filter[i*filterSize + j]= coeff;
258 FF_ALLOC_OR_GOTO(NULL, filter, dstW*sizeof(*filter)*filterSize, fail);
331 filter[i*filterSize + j]= coeff;
338 /* apply src & dst Filter to filter -> filter2
339 av_free(filter);
354 filter2[i*filter2Size + k + j] += srcFilter->coeff[k]*filter[i*filterSize + j];
358 filter2[i*filter2Size + j]= filter[i*filterSize + j];
364 av_freep(&filter);
366 /* try to reduce the filter-size (step1 find size and shift left) */
381 /* preserve monotonicity because the core can't handle the filter otherwise */
384 // move filter coefficients left
427 filter= av_malloc(filterSize*dstW*sizeof(*filter));
428 if (filterSize >= MAX_FILTER_SIZE*16/((flags&SWS_ACCURATE_RND) ? APCK_SIZE : 16) || !filter)
434 /* try to reduce the filter-size (step2 reduce it) */
439 if (j>=filter2Size) filter[i*filterSize + j]= 0;
440 else filter[i*filterSize + j]= filter2[i*filter2Size + j];
442 filter[i*filterSize + j]= 0;
452 // move filter coefficients left to compensate for filterPos
455 filter[i*filterSize + left] += filter[i*filterSize + j];
456 filter[i*filterSize + j]=0;
463 // move filter coefficients right to compensate for filterPos
466 filter[i*filterSize +right] += filter[i*filterSize +j];
467 filter[i*filterSize +j]=0;
484 sum+= filter[i*filterSize + j];
488 int64_t v= filter[i*filterSize + j] + error;
503 av_free(filter);
509 static int initMMX2HScaler(int dstW, int xInc, uint8_t *filterCode, int16_t *filter, int32_t *filterPos, int numSplits)
631 filter[i ] = (( xpos & 0xFFFF) ^ 0xFFFF)>>9;
632 filter[i+1] = (((xpos+xInc ) & 0xFFFF) ^ 0xFFFF)>>9;
633 filter[i+2] = (((xpos+xInc*2) & 0xFFFF) ^ 0xFFFF)>>9;
634 filter[i+3] = (((xpos+xInc*3) & 0xFFFF) ^ 0xFFFF)>>9;
949 /* precalculate horizontal scaler filter coefficients */
1003 /* precalculate vertical scaler filter coefficients */
1210 SwsFilter *filter= av_malloc(sizeof(SwsFilter));
1211 if (!filter)
1215 filter->lumH= sws_getGaussianVec(lumaGBlur, 3.0);
1216 filter->lumV= sws_getGaussianVec(lumaGBlur, 3.0);
1218 filter->lumH= sws_getIdentityVec();
1219 filter->lumV= sws_getIdentityVec();
1223 filter->chrH= sws_getGaussianVec(chromaGBlur, 3.0);
1224 filter->chrV= sws_getGaussianVec(chromaGBlur, 3.0);
1226 filter->chrH= sws_getIdentityVec();
1227 filter->chrV= sws_getIdentityVec();
1232 sws_scaleVec(filter->chrH, -chromaSharpen);
1233 sws_scaleVec(filter->chrV, -chromaSharpen);
1234 sws_addVec(filter->chrH, id);
1235 sws_addVec(filter->chrV, id);
1241 sws_scaleVec(filter->lumH, -lumaSharpen);
1242 sws_scaleVec(filter->lumV, -lumaSharpen);
1243 sws_addVec(filter->lumH, id);
1244 sws_addVec(filter->lumV, id);
1249 sws_shiftVec(filter->chrH, (int)(chromaHShift+0.5));
1252 sws_shiftVec(filter->chrV, (int)(chromaVShift+0.5));
1254 sws_normalizeVec(filter->chrH, 1.0);
1255 sws_normalizeVec(filter->chrV, 1.0);
1256 sws_normalizeVec(filter->lumH, 1.0);
1257 sws_normalizeVec(filter->lumV, 1.0);
1259 if (verbose) sws_printVec2(filter->chrH, NULL, AV_LOG_DEBUG);
1260 if (verbose) sws_printVec2(filter->lumH, NULL, AV_LOG_DEBUG);
1262 return filter;
1492 void sws_freeFilter(SwsFilter *filter)
1494 if (!filter) return;
1496 if (filter->lumH) sws_freeVec(filter->lumH);
1497 if (filter->lumV) sws_freeVec(filter->lumV);
1498 if (filter->chrH) sws_freeVec(filter->chrH);
1499 if (filter->chrV) sws_freeVec(filter->chrV);
1500 av_free(filter);