Package org.lwjgl.stb
Class STBImageResize
java.lang.Object
org.lwjgl.stb.STBImageResize
Native bindings to stb_image_resize2.h from the stb library.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_edge
static final int
stbir_edge
static final int
stbir_edge
static final int
stbir_edge
static final int
stbir_filter
static final int
stbir_filter
static final int
stbir_filter
static final int
stbir_filter
static final int
stbir_filter
static final int
stbir_filter
static final int
stbir_filter
static final int
stbir_filter
static final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_pixel_layout
specifies: number of channels order of channels whether color is premultiplied by alphastatic final int
stbir_datatype
static final int
stbir_datatype
static final int
stbir_datatype
static final int
stbir_datatype
static final int
stbir_datatype
static final int
stbir_datatype
-
Method Summary
Modifier and TypeMethodDescriptionstatic int
nstbir_build_samplers
(long resize) Unsafe version of:build_samplers
static int
nstbir_build_samplers_with_splits
(long resize, int try_splits) Unsafe version of:build_samplers_with_splits
static void
nstbir_free_samplers
(long resize) Unsafe version of:free_samplers
static long
nstbir_resize
(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type, int edge, int filter) static int
nstbir_resize_extended
(long resize) Unsafe version of:resize_extended
static int
nstbir_resize_extended_split
(long resize, int split_start, int split_count) Unsafe version of:resize_extended_split
static long
nstbir_resize_float_linear
(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) static void
nstbir_resize_init
(long resize, long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type) static long
nstbir_resize_uint8_linear
(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) static long
nstbir_resize_uint8_srgb
(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) static void
nstbir_set_buffer_ptrs
(long resize, long input_pixels, int input_stride_in_bytes, long output_pixels, int output_stride_in_bytes) static void
nstbir_set_datatypes
(long resize, int input_type, int output_type) static int
nstbir_set_edgemodes
(long resize, int horizontal_edge, int vertical_edge) static int
nstbir_set_filter_callbacks
(long resize, long horizontal_filter, long horizontal_support, long vertical_filter, long vertical_support) static int
nstbir_set_filters
(long resize, int horizontal_filter, int vertical_filter) static int
nstbir_set_input_subrect
(long resize, double s0, double t0, double s1, double t1) static int
nstbir_set_non_pm_alpha_speed_over_quality
(long resize, int non_pma_alpha_speed_over_quality) Unsafe version of:set_non_pm_alpha_speed_over_quality
static int
nstbir_set_output_pixel_subrect
(long resize, int subx, int suby, int subw, int subh) Unsafe version of:set_output_pixel_subrect
static void
nstbir_set_pixel_callbacks
(long resize, long input_cb, long output_cb) static int
nstbir_set_pixel_layouts
(long resize, int input_pixel_layout, int output_pixel_layout) Unsafe version of:set_pixel_layouts
static int
nstbir_set_pixel_subrect
(long resize, int subx, int suby, int subw, int subh) Unsafe version of:set_pixel_subrect
static void
nstbir_set_user_data
(long resize, long user_data) static int
stbir_build_samplers
(STBIR_RESIZE resize) Builds the samplers and does one allocation.static int
stbir_build_samplers_with_splits
(STBIR_RESIZE resize, int try_splits) Build samplers for threading.static void
stbir_free_samplers
(STBIR_RESIZE resize) You MUST call this, if you callbuild_samplers
orbuild_samplers_with_splits
.static ByteBuffer
stbir_resize
(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type, int edge, int filter) static ByteBuffer
stbir_resize
(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type, int edge, int filter, long length) static int
stbir_resize_extended
(STBIR_RESIZE resize) The main function to perform the resize synchronously on one thread.static int
stbir_resize_extended_split
(STBIR_RESIZE resize, int split_start, int split_count) This function does a split of the resizing (you call this fuction for each split, on multiple threads).static FloatBuffer
stbir_resize_float_linear
(FloatBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, FloatBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) static FloatBuffer
stbir_resize_float_linear
(FloatBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, FloatBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type, long length) static void
stbir_resize_init
(STBIR_RESIZE resize, ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type) static ByteBuffer
stbir_resize_uint8_linear
(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) static ByteBuffer
stbir_resize_uint8_linear
(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type, long length) static ByteBuffer
stbir_resize_uint8_srgb
(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) static ByteBuffer
stbir_resize_uint8_srgb
(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type, long length) static void
stbir_set_buffer_ptrs
(STBIR_RESIZE resize, ByteBuffer input_pixels, int input_stride_in_bytes, ByteBuffer output_pixels, int output_stride_in_bytes) static void
stbir_set_datatypes
(STBIR_RESIZE resize, int input_type, int output_type) static int
stbir_set_edgemodes
(STBIR_RESIZE resize, int horizontal_edge, int vertical_edge) static int
stbir_set_filter_callbacks
(STBIR_RESIZE resize, STBIRKernelCallbackI horizontal_filter, STBIRSupportCallbackI horizontal_support, STBIRKernelCallbackI vertical_filter, STBIRSupportCallbackI vertical_support) static int
stbir_set_filters
(STBIR_RESIZE resize, int horizontal_filter, int vertical_filter) static int
stbir_set_input_subrect
(STBIR_RESIZE resize, double s0, double t0, double s1, double t1) static int
stbir_set_non_pm_alpha_speed_over_quality
(STBIR_RESIZE resize, boolean non_pma_alpha_speed_over_quality) When inputting AND outputting non-premultiplied alpha pixels, we use a slower but higher quality technique that fills the zero alpha pixel's RGB values with something plausible.static int
stbir_set_output_pixel_subrect
(STBIR_RESIZE resize, int subx, int suby, int subw, int subh) Sets output sub-region (full region by default).static void
stbir_set_pixel_callbacks
(STBIR_RESIZE resize, STBIRInputCallbackI input_cb, STBIROutputCallbackI output_cb) static int
stbir_set_pixel_layouts
(STBIR_RESIZE resize, int input_pixel_layout, int output_pixel_layout) Sets new buffer layouts.static int
stbir_set_pixel_subrect
(STBIR_RESIZE resize, int subx, int suby, int subw, int subh) Sets input sub-region (full region by default).static void
stbir_set_user_data
(STBIR_RESIZE resize, long user_data)
-
Field Details
-
STBIR_BGR
public static final int STBIR_BGRstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_1CHANNEL
public static final int STBIR_1CHANNELstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_2CHANNEL
public static final int STBIR_2CHANNELstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_RGB
public static final int STBIR_RGBstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_RGBA
public static final int STBIR_RGBAstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_4CHANNEL
public static final int STBIR_4CHANNELstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_BGRA
public static final int STBIR_BGRAstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_ARGB
public static final int STBIR_ARGBstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_ABGR
public static final int STBIR_ABGRstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_RA
public static final int STBIR_RAstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_AR
public static final int STBIR_ARstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_RGBA_PM
public static final int STBIR_RGBA_PMstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_BGRA_PM
public static final int STBIR_BGRA_PMstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_ARGB_PM
public static final int STBIR_ARGB_PMstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_ABGR_PM
public static final int STBIR_ABGR_PMstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_RA_PM
public static final int STBIR_RA_PMstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_AR_PM
public static final int STBIR_AR_PMstbir_pixel_layout
specifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_EDGE_CLAMP
public static final int STBIR_EDGE_CLAMPstbir_edge
Enum values:
EDGE_CLAMP
EDGE_REFLECT
EDGE_WRAP
- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_EDGE_REFLECT
public static final int STBIR_EDGE_REFLECTstbir_edge
Enum values:
EDGE_CLAMP
EDGE_REFLECT
EDGE_WRAP
- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_EDGE_WRAP
public static final int STBIR_EDGE_WRAPstbir_edge
Enum values:
EDGE_CLAMP
EDGE_REFLECT
EDGE_WRAP
- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_EDGE_ZERO
public static final int STBIR_EDGE_ZEROstbir_edge
Enum values:
EDGE_CLAMP
EDGE_REFLECT
EDGE_WRAP
- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_FILTER_DEFAULT
public static final int STBIR_FILTER_DEFAULTstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_FILTER_BOX
public static final int STBIR_FILTER_BOXstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_FILTER_TRIANGLE
public static final int STBIR_FILTER_TRIANGLEstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_FILTER_CUBICBSPLINE
public static final int STBIR_FILTER_CUBICBSPLINEstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_FILTER_CATMULLROM
public static final int STBIR_FILTER_CATMULLROMstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_FILTER_MITCHELL
public static final int STBIR_FILTER_MITCHELLstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_FILTER_POINT_SAMPLE
public static final int STBIR_FILTER_POINT_SAMPLEstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_FILTER_OTHER
public static final int STBIR_FILTER_OTHERstbir_filter
Enum values:
FILTER_DEFAULT
- Use same filter type that easy-to-use API chooses.FILTER_BOX
- A trapezoid w/1-pixel wide ramps, same result as box for integer scale ratios.FILTER_TRIANGLE
- On upsampling, produces same results as bilinear texture filtering.FILTER_CUBICBSPLINE
- The cubic b-spline (aka Mitchell-Netrevalli withB=1,C=0
), gaussian-esque.FILTER_CATMULLROM
- An interpolating cubic spline.FILTER_MITCHELL
- Mitchell-Netrevalli filter withB=1/3,C=1/3
.FILTER_POINT_SAMPLE
- Simple point sampling.FILTER_OTHER
- User callback specified.
- See Also:
-
STBIR_TYPE_UINT8
public static final int STBIR_TYPE_UINT8stbir_datatype
Enum values:
TYPE_UINT8
TYPE_UINT8_SRGB
TYPE_UINT8_SRGB_ALPHA
- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16
TYPE_FLOAT
TYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_UINT8_SRGB
public static final int STBIR_TYPE_UINT8_SRGBstbir_datatype
Enum values:
TYPE_UINT8
TYPE_UINT8_SRGB
TYPE_UINT8_SRGB_ALPHA
- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16
TYPE_FLOAT
TYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_UINT8_SRGB_ALPHA
public static final int STBIR_TYPE_UINT8_SRGB_ALPHAstbir_datatype
Enum values:
TYPE_UINT8
TYPE_UINT8_SRGB
TYPE_UINT8_SRGB_ALPHA
- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16
TYPE_FLOAT
TYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_UINT16
public static final int STBIR_TYPE_UINT16stbir_datatype
Enum values:
TYPE_UINT8
TYPE_UINT8_SRGB
TYPE_UINT8_SRGB_ALPHA
- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16
TYPE_FLOAT
TYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_FLOAT
public static final int STBIR_TYPE_FLOATstbir_datatype
Enum values:
TYPE_UINT8
TYPE_UINT8_SRGB
TYPE_UINT8_SRGB_ALPHA
- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16
TYPE_FLOAT
TYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_HALF_FLOAT
public static final int STBIR_TYPE_HALF_FLOATstbir_datatype
Enum values:
TYPE_UINT8
TYPE_UINT8_SRGB
TYPE_UINT8_SRGB_ALPHA
- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16
TYPE_FLOAT
TYPE_HALF_FLOAT
- See Also:
-
-
Method Details
-
nstbir_resize_uint8_srgb
public static long nstbir_resize_uint8_srgb(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) -
stbir_resize_uint8_srgb
@Nullable public static ByteBuffer stbir_resize_uint8_srgb(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) -
stbir_resize_uint8_srgb
@Nullable public static ByteBuffer stbir_resize_uint8_srgb(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type, long length) -
nstbir_resize_uint8_linear
public static long nstbir_resize_uint8_linear(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) -
stbir_resize_uint8_linear
@Nullable public static ByteBuffer stbir_resize_uint8_linear(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) -
stbir_resize_uint8_linear
@Nullable public static ByteBuffer stbir_resize_uint8_linear(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type, long length) -
nstbir_resize_float_linear
public static long nstbir_resize_float_linear(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) -
stbir_resize_float_linear
@Nullable public static FloatBuffer stbir_resize_float_linear(FloatBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable FloatBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type) -
stbir_resize_float_linear
@Nullable public static FloatBuffer stbir_resize_float_linear(FloatBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable FloatBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_type, long length) -
nstbir_resize
public static long nstbir_resize(long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type, int edge, int filter) -
stbir_resize
@Nullable public static ByteBuffer stbir_resize(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type, int edge, int filter) -
stbir_resize
@Nullable public static ByteBuffer stbir_resize(ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type, int edge, int filter, long length) -
nstbir_resize_init
public static void nstbir_resize_init(long resize, long input_pixels, int input_w, int input_h, int input_stride_in_bytes, long output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type) -
stbir_resize_init
public static void stbir_resize_init(STBIR_RESIZE resize, ByteBuffer input_pixels, int input_w, int input_h, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_w, int output_h, int output_stride_in_bytes, int pixel_layout, int data_type) -
nstbir_set_datatypes
public static void nstbir_set_datatypes(long resize, int input_type, int output_type) -
stbir_set_datatypes
-
nstbir_set_pixel_callbacks
public static void nstbir_set_pixel_callbacks(long resize, long input_cb, long output_cb) -
stbir_set_pixel_callbacks
public static void stbir_set_pixel_callbacks(STBIR_RESIZE resize, @Nullable STBIRInputCallbackI input_cb, @Nullable STBIROutputCallbackI output_cb) -
nstbir_set_user_data
public static void nstbir_set_user_data(long resize, long user_data) -
stbir_set_user_data
-
nstbir_set_buffer_ptrs
public static void nstbir_set_buffer_ptrs(long resize, long input_pixels, int input_stride_in_bytes, long output_pixels, int output_stride_in_bytes) -
stbir_set_buffer_ptrs
public static void stbir_set_buffer_ptrs(STBIR_RESIZE resize, ByteBuffer input_pixels, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_stride_in_bytes) -
nstbir_set_pixel_layouts
public static int nstbir_set_pixel_layouts(long resize, int input_pixel_layout, int output_pixel_layout) Unsafe version of:set_pixel_layouts
-
stbir_set_pixel_layouts
public static int stbir_set_pixel_layouts(STBIR_RESIZE resize, int input_pixel_layout, int output_pixel_layout) Sets new buffer layouts. -
nstbir_set_edgemodes
public static int nstbir_set_edgemodes(long resize, int horizontal_edge, int vertical_edge) -
stbir_set_edgemodes
-
nstbir_set_filters
public static int nstbir_set_filters(long resize, int horizontal_filter, int vertical_filter) -
stbir_set_filters
public static int stbir_set_filters(STBIR_RESIZE resize, int horizontal_filter, int vertical_filter) -
nstbir_set_filter_callbacks
public static int nstbir_set_filter_callbacks(long resize, long horizontal_filter, long horizontal_support, long vertical_filter, long vertical_support) -
stbir_set_filter_callbacks
public static int stbir_set_filter_callbacks(STBIR_RESIZE resize, @Nullable STBIRKernelCallbackI horizontal_filter, @Nullable STBIRSupportCallbackI horizontal_support, @Nullable STBIRKernelCallbackI vertical_filter, @Nullable STBIRSupportCallbackI vertical_support) -
nstbir_set_pixel_subrect
public static int nstbir_set_pixel_subrect(long resize, int subx, int suby, int subw, int subh) Unsafe version of:set_pixel_subrect
-
stbir_set_pixel_subrect
public static int stbir_set_pixel_subrect(STBIR_RESIZE resize, int subx, int suby, int subw, int subh) Sets input sub-region (full region by default). -
nstbir_set_input_subrect
public static int nstbir_set_input_subrect(long resize, double s0, double t0, double s1, double t1) -
stbir_set_input_subrect
public static int stbir_set_input_subrect(STBIR_RESIZE resize, double s0, double t0, double s1, double t1) -
nstbir_set_output_pixel_subrect
public static int nstbir_set_output_pixel_subrect(long resize, int subx, int suby, int subw, int subh) Unsafe version of:set_output_pixel_subrect
-
stbir_set_output_pixel_subrect
public static int stbir_set_output_pixel_subrect(STBIR_RESIZE resize, int subx, int suby, int subw, int subh) Sets output sub-region (full region by default). -
nstbir_set_non_pm_alpha_speed_over_quality
public static int nstbir_set_non_pm_alpha_speed_over_quality(long resize, int non_pma_alpha_speed_over_quality) Unsafe version of:set_non_pm_alpha_speed_over_quality
-
stbir_set_non_pm_alpha_speed_over_quality
public static int stbir_set_non_pm_alpha_speed_over_quality(STBIR_RESIZE resize, boolean non_pma_alpha_speed_over_quality) When inputting AND outputting non-premultiplied alpha pixels, we use a slower but higher quality technique that fills the zero alpha pixel's RGB values with something plausible. If you don't care about areas of zero alpha, you can call this function to get about a 25% speed improvement forRGBA
toSTBIR_RGBA
types of resizes. -
nstbir_build_samplers
public static int nstbir_build_samplers(long resize) Unsafe version of:build_samplers
-
stbir_build_samplers
Builds the samplers and does one allocation. -
nstbir_free_samplers
public static void nstbir_free_samplers(long resize) Unsafe version of:free_samplers
-
stbir_free_samplers
You MUST call this, if you callbuild_samplers
orbuild_samplers_with_splits
. -
nstbir_resize_extended
public static int nstbir_resize_extended(long resize) Unsafe version of:resize_extended
-
stbir_resize_extended
The main function to perform the resize synchronously on one thread. -
nstbir_build_samplers_with_splits
public static int nstbir_build_samplers_with_splits(long resize, int try_splits) Unsafe version of:build_samplers_with_splits
-
stbir_build_samplers_with_splits
Build samplers for threading.You can pass in the number of threads you'd like to use (
try_splits
). It returns the number of splits (threads) that you can call it with. It might be less if the image resize can't be split up that many ways. -
nstbir_resize_extended_split
public static int nstbir_resize_extended_split(long resize, int split_start, int split_count) Unsafe version of:resize_extended_split
-
stbir_resize_extended_split
public static int stbir_resize_extended_split(STBIR_RESIZE resize, int split_start, int split_count) This function does a split of the resizing (you call this fuction for each split, on multiple threads). A split is a piece of the output resize pixel space.Note that you MUST call
build_samplers_with_splits
beforestbir_resize_extended_split
!Usually, you will always call
stbir_resize_extended_split
withsplit_start
as thethread_index
and "1" for thesplit_count
. But, if you have a weird situation where you MIGHT want 8 threads, but sometimes only 4 threads, you can use 0,2,4,6 for thesplit_start
's and use "2" for thesplit_count
each time to turn in into a 4 thread resize. (This is unusual).
-