Ignite/decoder/libdav1d/libdav1d.c

16 lines
493 B
C

#include "libdav1d.h"
#include <math.h>
#define DAV1D_VERSION_AT_LEAST(x,y) \
(DAV1D_API_VERSION_MAJOR > (x) || DAV1D_API_VERSION_MAJOR == (x) && DAV1D_API_VERSION_MINOR >= (y))
#define MIN(x, y) (((x) < (y)) ? (x) : (y))
void set_threading(Dav1dSettings* s, int threads) {
#if DAV1D_VERSION_AT_LEAST(6,0)
#else
s->n_tile_threads = MIN(floor(sqrt(threads)), DAV1D_MAX_TILE_THREADS);
s->n_frame_threads = MIN(ceil(threads / s->n_tile_threads), DAV1D_MAX_FRAME_THREADS);
#endif
}