Unified · Split
| @@ -303,6 +303,18 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *insamples) · 302 unmodified lines | ||
| 303 | 303 | av_assert2(0); |
| 304 | 304 | } |
| 305 | 305 | |
| 306 | + switch (s->scale) { | |
| 307 | + case SQRT: | |
| 308 | + max = sqrtf(max); | |
| 309 | + break; | |
| 310 | + case CBRT: | |
| 311 | + max = cbrtf(max); | |
| 312 | + break; | |
| 313 | + case LOG: | |
| 314 | + max = logf(1 + max) / logf(2); | |
| 315 | + break; | |
| 316 | + } | |
| 317 | + | |
| 306 | 318 | zoom = 1. / max; |
| 307 | 319 | } |
| 308 | 320 | |