ffmpeg实现马赛克像素化

ffmpeg马赛克命令:
ffmpeg -i input.mp4 -vf ‘frei0r=pixeliz0r:0.02|0.02’ -f mp4 output.mp4 -y

ffmpeg -i input.mp4 -vf 'frei0r=pixeliz0r:0.02|0.02' -f mp4 output.mp4 -y

设置马赛克块像素的大小:
block_size_x = 1 + ( ((double)param) * (inst->width/2))
设置pixeliz0r参数配置像素块大小。

void f0r_set_param_value(f0r_instance_t instance, 
			 f0r_param_t param, int param_index)
{ 
  assert(instance);
  pixelizer_instance_t* inst = (pixelizer_instance_t*)instance;
  
  switch(param_index)
    {
    case 0:
      // scale to [1..width]
      inst->block_size_x =  1 + ( *((double*)param) * (inst->width/2)) ;
      break;
    case 1:
      // scale to [1..height]
      inst->block_size_y =  1 + ( *((double*)param) * (inst->height/2)) ;
      break;
    }  
}

https://github.com/dyne/frei0r/blob/master/src/filter/pixeliz0r/pixeliz0r.c

ffmpeg实现马赛克像素化_第1张图片

你可能感兴趣的:(ffmpeg,ffmpeg,马赛克,像素化,frei0r,pixeliz0r)