diff --git a/libswscale/ops.c b/libswscale/ops.c index f8447f284c..07c2080e97 100644 --- a/libswscale/ops.c +++ b/libswscale/ops.c @@ -92,6 +92,32 @@ bool ff_sws_pixel_type_is_int(SwsPixelType type) return false; } +const char *ff_sws_op_type_name(SwsOpType op) +{ + switch (op) { + case SWS_OP_READ: return "SWS_OP_READ"; + case SWS_OP_WRITE: return "SWS_OP_WRITE"; + case SWS_OP_SWAP_BYTES: return "SWS_OP_SWAP_BYTES"; + case SWS_OP_SWIZZLE: return "SWS_OP_SWIZZLE"; + case SWS_OP_UNPACK: return "SWS_OP_UNPACK"; + case SWS_OP_PACK: return "SWS_OP_PACK"; + case SWS_OP_LSHIFT: return "SWS_OP_LSHIFT"; + case SWS_OP_RSHIFT: return "SWS_OP_RSHIFT"; + case SWS_OP_CLEAR: return "SWS_OP_CLEAR"; + case SWS_OP_CONVERT: return "SWS_OP_CONVERT"; + case SWS_OP_MIN: return "SWS_OP_MIN"; + case SWS_OP_MAX: return "SWS_OP_MAX"; + case SWS_OP_SCALE: return "SWS_OP_SCALE"; + case SWS_OP_LINEAR: return "SWS_OP_LINEAR"; + case SWS_OP_DITHER: return "SWS_OP_DITHER"; + case SWS_OP_INVALID: return "SWS_OP_INVALID"; + case SWS_OP_TYPE_NB: break; + } + + av_unreachable("Invalid operation type!"); + return "ERR"; +} + /* biased towards `a` */ static AVRational av_min_q(AVRational a, AVRational b) { diff --git a/libswscale/ops.h b/libswscale/ops.h index 8868d88bed..37e8f06331 100644 --- a/libswscale/ops.h +++ b/libswscale/ops.h @@ -69,6 +69,8 @@ typedef enum SwsOpType { SWS_OP_TYPE_NB, } SwsOpType; +const char *ff_sws_op_type_name(SwsOpType op); + typedef enum SwsCompFlags { SWS_COMP_GARBAGE = 1 << 0, /* contents are undefined / garbage data */ SWS_COMP_EXACT = 1 << 1, /* value is an exact integer */