Add resizer letterbox2
[jpcrr.git] / streamtools / resizer-letterbox2.cpp
blobe0ff5a0443cf5fee968c2e4278d9a51f84001ec4
1 #include "resize-linear-separable.hpp"
2 #include <stdint.h>
3 #include <cmath>
4 #include <stdexcept>
6 namespace
8 void compute_coefficients_letterbox(float* coeffs, position_t num, position_t denum, position_t width,
9 position_t twidth, unsigned& count, unsigned& base)
11 position_t header = (twidth - width) / 4 * 2;
12 position_t relpos = num / width - header;
13 *coeffs = 0;
14 count = 1;
15 base = 0;
16 if(relpos >= 0 && relpos < width) {
17 *coeffs = 1;
18 base = (unsigned)relpos;
22 simple_resizer_linear_separable r_letterbox("letterbox2", compute_coefficients_letterbox);