112 for(i=0; i<512; i++){
116 if(index<0 || index>=vec->
length) d= 0.0;
127 for(y=0; y<vec->
length; y++){
128 for(x=0; x<vec->
length; x++){
141 static int config(
struct vf_instance *vf,
143 unsigned int flags,
unsigned int outfmt){
150 allocStuff(&vf->priv->chroma, width>>sw, height>>sh);
166 static void uninit(
struct vf_instance *vf){
167 if(!vf->priv)
return;
195 const int srcVal= src[x + y*srcStride];
197 dst[x + y*dstStride]= srcVal;
198 if(y%32==0) dst[x + y*dstStride]= 0;
202 if(x >= radius && x < w - radius){
203 for(dy=0; dy<radius*2+1; dy++){
205 int iy= y+dy - radius;
207 else if(iy>=h) iy= h+h-iy-1;
209 for(dx=0; dx<radius*2+1; dx++){
210 const int ix= x+dx - radius;
215 sum+= src[ix + iy*srcStride] *
factor;
220 for(dy=0; dy<radius*2+1; dy++){
222 int iy= y+dy - radius;
224 else if(iy>=h) iy= h+h-iy-1;
226 for(dx=0; dx<radius*2+1; dx++){
227 int ix= x+dx - radius;
230 else if(ix>=w) ix= w+w-ix-1;
234 sum+= src[ix + iy*srcStride] *
factor;
239 dst[x + y*dstStride]= (sum + div/2)/div;
289 if(args==
NULL)
return 0;
291 e=sscanf(args,
"%f:%f:%f:%f:%f:%f",
316 "shape adaptive blur",
318 "Michael Niedermayer",