#include "video.h"
#include "transpose.h"
-typedef struct TransVtable {
- void (*transpose_8x8)(uint8_t *src, ptrdiff_t src_linesize,
- uint8_t *dst, ptrdiff_t dst_linesize);
- void (*transpose_block)(uint8_t *src, ptrdiff_t src_linesize,
- uint8_t *dst, ptrdiff_t dst_linesize,
- int w, int h);
-} TransVtable;
-
typedef struct TransContext {
const AVClass *class;
int hsub, vsub;
}
}
+ if (ARCH_X86) {
+ for (int i = 0; i < 4; i++) {
+ TransVtable *v = &s->vtables[i];
+
+ ff_transpose_init_x86(v, s->pixsteps[i]);
+ }
+ }
+
av_log(ctx, AV_LOG_VERBOSE,
"w:%d h:%d dir:%d -> w:%d h:%d rotation:%s vflip:%d\n",
inlink->w, inlink->h, s->dir, outlink->w, outlink->h,
{ NULL }
};
-AVFilter ff_vf_transpose = {
+const AVFilter ff_vf_transpose = {
.name = "transpose",
.description = NULL_IF_CONFIG_SMALL("Transpose input video."),
.priv_size = sizeof(TransContext),