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
FieldsModifier and TypeFieldDescriptionstatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_edgestatic final intstbir_edgestatic final intstbir_edgestatic final intstbir_edgestatic final intstbir_filterstatic final intstbir_filterstatic final intstbir_filterstatic final intstbir_filterstatic final intstbir_filterstatic final intstbir_filterstatic final intstbir_filterstatic final intstbir_filterstatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_pixel_layoutspecifies: number of channels order of channels whether color is premultiplied by alphastatic final intstbir_datatypestatic final intstbir_datatypestatic final intstbir_datatypestatic final intstbir_datatypestatic final intstbir_datatypestatic final intstbir_datatype -
Method Summary
Modifier and TypeMethodDescriptionstatic intnstbir_build_samplers(long resize) Unsafe version of:build_samplersstatic intnstbir_build_samplers_with_splits(long resize, int try_splits) Unsafe version of:build_samplers_with_splitsstatic voidnstbir_free_samplers(long resize) Unsafe version of:free_samplersstatic longnstbir_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 intnstbir_resize_extended(long resize) Unsafe version of:resize_extendedstatic intnstbir_resize_extended_split(long resize, int split_start, int split_count) Unsafe version of:resize_extended_splitstatic longnstbir_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 voidnstbir_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 longnstbir_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 longnstbir_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 voidnstbir_set_buffer_ptrs(long resize, long input_pixels, int input_stride_in_bytes, long output_pixels, int output_stride_in_bytes) static voidnstbir_set_datatypes(long resize, int input_type, int output_type) static intnstbir_set_edgemodes(long resize, int horizontal_edge, int vertical_edge) static intnstbir_set_filter_callbacks(long resize, long horizontal_filter, long horizontal_support, long vertical_filter, long vertical_support) static intnstbir_set_filters(long resize, int horizontal_filter, int vertical_filter) static intnstbir_set_input_subrect(long resize, double s0, double t0, double s1, double t1) static intnstbir_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_qualitystatic intnstbir_set_output_pixel_subrect(long resize, int subx, int suby, int subw, int subh) Unsafe version of:set_output_pixel_subrectstatic voidnstbir_set_pixel_callbacks(long resize, long input_cb, long output_cb) static intnstbir_set_pixel_layouts(long resize, int input_pixel_layout, int output_pixel_layout) Unsafe version of:set_pixel_layoutsstatic intnstbir_set_pixel_subrect(long resize, int subx, int suby, int subw, int subh) Unsafe version of:set_pixel_subrectstatic voidnstbir_set_user_data(long resize, long user_data) static intstbir_build_samplers(STBIR_RESIZE resize) Builds the samplers and does one allocation.static intstbir_build_samplers_with_splits(STBIR_RESIZE resize, int try_splits) Build samplers for threading.static voidstbir_free_samplers(STBIR_RESIZE resize) You MUST call this, if you callbuild_samplersorbuild_samplers_with_splits.static @Nullable ByteBufferstbir_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) static @Nullable ByteBufferstbir_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) static intstbir_resize_extended(STBIR_RESIZE resize) The main function to perform the resize synchronously on one thread.static intstbir_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 @Nullable FloatBufferstbir_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) static @Nullable FloatBufferstbir_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) static voidstbir_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) static @Nullable ByteBufferstbir_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) static @Nullable ByteBufferstbir_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) static @Nullable ByteBufferstbir_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) static @Nullable ByteBufferstbir_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) static voidstbir_set_buffer_ptrs(STBIR_RESIZE resize, ByteBuffer input_pixels, int input_stride_in_bytes, @Nullable ByteBuffer output_pixels, int output_stride_in_bytes) static voidstbir_set_datatypes(STBIR_RESIZE resize, int input_type, int output_type) static intstbir_set_edgemodes(STBIR_RESIZE resize, int horizontal_edge, int vertical_edge) static intstbir_set_filter_callbacks(STBIR_RESIZE resize, @Nullable STBIRKernelCallbackI horizontal_filter, @Nullable STBIRSupportCallbackI horizontal_support, @Nullable STBIRKernelCallbackI vertical_filter, @Nullable STBIRSupportCallbackI vertical_support) static intstbir_set_filters(STBIR_RESIZE resize, int horizontal_filter, int vertical_filter) static intstbir_set_input_subrect(STBIR_RESIZE resize, double s0, double t0, double s1, double t1) static intstbir_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 intstbir_set_output_pixel_subrect(STBIR_RESIZE resize, int subx, int suby, int subw, int subh) Sets output sub-region (full region by default).static voidstbir_set_pixel_callbacks(STBIR_RESIZE resize, @Nullable STBIRInputCallbackI input_cb, @Nullable STBIROutputCallbackI output_cb) static intstbir_set_pixel_layouts(STBIR_RESIZE resize, int input_pixel_layout, int output_pixel_layout) Sets new buffer layouts.static intstbir_set_pixel_subrect(STBIR_RESIZE resize, int subx, int suby, int subw, int subh) Sets input sub-region (full region by default).static voidstbir_set_user_data(STBIR_RESIZE resize, long user_data)
-
Field Details
-
STBIR_1CHANNEL
public static final int STBIR_1CHANNELstbir_pixel_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_BGR
public static final int STBIR_BGRstbir_pixel_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- 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_layoutspecifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_RGBA_NO_AW
public static final int STBIR_RGBA_NO_AWstbir_pixel_layoutspecifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_BGRA_NO_AW
public static final int STBIR_BGRA_NO_AWstbir_pixel_layoutspecifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_ARGB_NO_AW
public static final int STBIR_ARGB_NO_AWstbir_pixel_layoutspecifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_ABGR_NO_AW
public static final int STBIR_ABGR_NO_AWstbir_pixel_layoutspecifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_RA_NO_AW
public static final int STBIR_RA_NO_AWstbir_pixel_layoutspecifies:- number of channels
- order of channels
- whether color is premultiplied by alpha
Enum values:
- See Also:
-
STBIR_AR_NO_AW
public static final int STBIR_AR_NO_AWstbir_pixel_layoutspecifies:- 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_edgeEnum values:
EDGE_CLAMPEDGE_REFLECTEDGE_WRAP- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_EDGE_REFLECT
public static final int STBIR_EDGE_REFLECTstbir_edgeEnum values:
EDGE_CLAMPEDGE_REFLECTEDGE_WRAP- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_EDGE_WRAP
public static final int STBIR_EDGE_WRAPstbir_edgeEnum values:
EDGE_CLAMPEDGE_REFLECTEDGE_WRAP- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_EDGE_ZERO
public static final int STBIR_EDGE_ZEROstbir_edgeEnum values:
EDGE_CLAMPEDGE_REFLECTEDGE_WRAP- This edge mode is slower and uses more memory.EDGE_ZERO
- See Also:
-
STBIR_FILTER_DEFAULT
public static final int STBIR_FILTER_DEFAULTstbir_filterEnum 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_filterEnum 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_filterEnum 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_filterEnum 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_filterEnum 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_filterEnum 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_filterEnum 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_filterEnum 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_datatypeEnum values:
TYPE_UINT8TYPE_UINT8_SRGBTYPE_UINT8_SRGB_ALPHA- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16TYPE_FLOATTYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_UINT8_SRGB
public static final int STBIR_TYPE_UINT8_SRGBstbir_datatypeEnum values:
TYPE_UINT8TYPE_UINT8_SRGBTYPE_UINT8_SRGB_ALPHA- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16TYPE_FLOATTYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_UINT8_SRGB_ALPHA
public static final int STBIR_TYPE_UINT8_SRGB_ALPHAstbir_datatypeEnum values:
TYPE_UINT8TYPE_UINT8_SRGBTYPE_UINT8_SRGB_ALPHA- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16TYPE_FLOATTYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_UINT16
public static final int STBIR_TYPE_UINT16stbir_datatypeEnum values:
TYPE_UINT8TYPE_UINT8_SRGBTYPE_UINT8_SRGB_ALPHA- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16TYPE_FLOATTYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_FLOAT
public static final int STBIR_TYPE_FLOATstbir_datatypeEnum values:
TYPE_UINT8TYPE_UINT8_SRGBTYPE_UINT8_SRGB_ALPHA- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16TYPE_FLOATTYPE_HALF_FLOAT
- See Also:
-
STBIR_TYPE_HALF_FLOAT
public static final int STBIR_TYPE_HALF_FLOATstbir_datatypeEnum values:
TYPE_UINT8TYPE_UINT8_SRGBTYPE_UINT8_SRGB_ALPHA- Alpha channel, when present, should also be SRGB (this is very unusual).TYPE_UINT16TYPE_FLOATTYPE_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
public static @Nullable 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
public static @Nullable 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
public static @Nullable 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
public static @Nullable 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
public static @Nullable 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
public static @Nullable 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
public static @Nullable 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
public static @Nullable 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 forRGBAtoSTBIR_RGBAtypes 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_samplersorbuild_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_splitsbeforestbir_resize_extended_split!Usually, you will always call
stbir_resize_extended_splitwithsplit_startas thethread_indexand "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_counteach time to turn in into a 4 thread resize. (This is unusual).
-