The Intel IPP functions return status codes of the performed operation to report errors and warnings to the calling program. Thus, it is up to the application to perform error-related actions and/or recover from the error. The last value of the error status is not stored, and the user is to decide whether to check it or not as the function returns. The status codes are of IppStatus type and are global constant integers.
The status codes and corresponding messages reported by Intel IPP for image and video processing are listed in Table Status Codes and Messages.
Status Code | Message |
---|---|
ippStsNotSupportedModeErr | The requested mode is currently not supported |
ippStsDecimateFractionErr | Unsupported fraction in decimate |
ippStsWeightErr | Wrong value of weight |
ippStsQualityIndexErr | Quality Index cannot be calculated for image filled with a constant |
ippStsResizeNoOperationErr | One of the output image dimensions is less than 1 pixel |
ippStsBlockStepErr | Step for Block less than 8 |
ippStsMBStepErr | Step for MB less than 16 |
ippStsNoiseRangeErr | Noise value for Wiener Filter is out of range |
ippStsLPCCalcErr | Linear prediction could not be evaluated |
ippStsJPEG2KBadPassNumber | Pass number exceeds allowed limits [0,nOfPasses-1] |
ippStsJPEG2KDamagedCodeBlock | Codeblock for decoding is damaged |
ippStsH263CBPYCodeErr | Illegal Huffman code during CBPY stream processing |
ippStsH263MCBPCInterCodeErr | Illegal Huffman code while MCBPC Inter stream processing |
ippStsH263MCBPCIntraCodeErr | Illegal Huffman code while MCBPC Intra stream processing |
ippStsNotEvenStepErr | Step value is not pixel multiple |
ippStsHistoNofLevelsErr | Number of levels for histogram is less than 2 |
ippStsLUTNofLevelsErr | Number of levels for LUT is less than 2 |
ippStsMP4BitOffsetErr | Incorrect bit offset value |
ippStsMP4QPErr | Incorrect quantization parameter |
ippStsMP4BlockIdxErr | Incorrect block index |
ippStsMP4BlockTypeErr | Incorrect block type |
ippStsMP4MVCodeErr | Illegal Huffman code while MV stream processing |
ippStsMP4VLCCodeErr | Illegal Huffman code while VLC stream processing |
ippStsMP4DCCodeErr | Illegal code while DC stream processing |
ippStsMP4FcodeErr | Incorrect fcode value |
ippStsMP4AlignErr | Incorrect buffer alignment |
ippStsMP4TempDiffErr | Incorrect temporal difference |
ippStsMP4BlockSizeErr | Incorrect size of block or macroblock |
ippStsMP4ZeroBABErr | All BAB values are zero |
ippStsMP4PredDirErr | Incorrect prediction direction |
ippStsMP4BitsPerPixelErr | Incorrect number of bits per pixel |
ippStsMP4VideoCompModeErr | Incorrect video component mode |
ippStsMP4LinearModeErr | Incorrect DC linear mode |
ippStsH263PredModeErr | Prediction Mode value error |
ippStsH263BlockStepErr | The step value is less than 8 |
ippStsH263MBStepErr | The step value is less than 16 |
ippStsH263FrameWidthErr | The frame width is less than 8 |
ippStsH263FrameHeightErr | The frame height is less than or equal to zero |
ippStsH263ExpandPelsErr | The expand pixels number is less than 8 |
ippStsH263PlaneStepErr | Step value is less than the plane width |
ippStsH263QuantErr | Quantizer value is less than or equal to zero, or greater than 31 |
ippStsH263MVCodeErr | Illegal Huffman code while MV stream processing |
ippStsH263VLCCodeErr | Illegal Huffman code while VLC stream processing |
ippStsH263DCCodeErr | Illegal code while DC stream processing |
ippStsH263ZigzagLenErr | Zigzag compact length is more than 64 |
ippStsJPEGHuffTableErr | JPEG Huffman table is destroyed |
ippStsJPEGDCTRangeErr | JPEG DCT coefficient is out of range |
ippStsJPEGOutOfBufErr | Attempt to access out of the buffer |
ippStsChannelOrderErr | Wrong order of the destination channels |
ippStsZeroMaskValueErr | All values of the mask are zero |
ippStsRangeErr | Bad values of bounds: the lower bound is greater than the upper bound |
ippStsQPErr | Incorrect value of quantizer parameter |
ippStsQuadErr | The quadrangle is nonconvex or degenerates into triangle, line or point |
ippStsRectErr | Size of the rectangular region is less than or equal to 1 |
ippStsCoeffErr | Unallowable values of the transformation coefficients |
ippStsNoiseValErr | Bad value of noise amplitude for dithering |
ippStsDitherLevelsErr | Number of dithering levels is out of range |
ippStsNumChannelsErr | Bad or unsupported number of channels |
ippStsDataTypeErr | Bad or unsupported data type |
ippStsCOIErr | COI is out of range |
ippStsOutOfRangeErr | Argument is out of range or point is outside the image |
ippStsDivisorErr | Divisor is equal to zero, function is aborted |
ippStsAlphaTypeErr | Illegal type of image compositing operation |
ippStsGammaRangeErr | Gamma range bound is less than or equal to zero |
ippStsGrayCoefSumErr | Sum of the conversion coefficients must be less than or equal to 1 |
ippStsChannelErr | Illegal channel number |
ippStsJaehneErr | Magnitude value is negative |
ippStsStepErr | Step value is less than or equal to zero |
ippStsStrideErr | Stride value is less than the row length |
ippStsEpsValErr | Negative epsilon value error |
ippStsScaleRangeErr | Scale bounds are out of range |
ippStsThresholdErr | Invalid threshold bounds |
ippStsWtOffsetErr | Invalid offset value of wavelet filter |
ippStsAnchorErr | Anchor point is outside the mask |
ippStsMaskSizeErr | Invalid mask size |
ippStsShiftErr | Shift value is less than zero |
ippStsSampleFactorErr | Sampling factor is less than or equal to zero |
ippStsResizeFactorErr | Resize factor(s) is less or equal to zero |
ippStsDivByZeroErr | An attempt to divide by zero |
ippStsInterpolationErr | Invalid interpolation mode |
ippStsMirrorFlipErr | Invalid flip mode |
ippStsMoment00ZeroErr | Moment value M(0,0) is too small to continue calculations |
ippStsThreshNegLevelErr | Negative value of the level in the threshold operation |
ippStsContextMatchErr | Context parameter does not match the operation |
ippStsFftFlagErr | Invalid value of the FFT flag parameter |
ippStsFftOrderErr | Invalid value of the FFT order parameter |
ippStsMemAllocErr | Not enough memory for the operation |
ippStsNullPtrErr | Null pointer error |
ippStsSizeErr | Wrong value of data size |
ippStsBadArgErr | Invalid or bad argument |
ippStsNoErr | No error |
ippStsNoOperation | No operation has been executed |
ippStsMisalignedBuf | Misaligned pointer in operation in which it must be aligned |
ippStsSqrtNegArg | Negative value(s) of the argument in the function Sqrt |
ippStsInvZero | INF result. Zero value was met by InvThresh with zero level |
ippStsEvenMedianMaskSize | Even size of the Median Filter mask was replaced by the odd number |
ippStsDivByZero | Zero value(s) of the divisor in the function Div |
ippStsLnZeroArg | Zero value(s) of the argument in the function Ln |
ippStsLnNegArg | Negative value(s) of the argument in the function Ln |
ippStsNanArg | Not a Number argument value warning |
ippStsDoubleSize | Sizes of image are not multiples of 2 |
ippStsJPEGMarker | JPEG marker was met in the bitstream |
ippStsResFloor | All result values are floored |
ippStsAffineQuadChanged | 4th vertex of destination quad is not equal to customer's one |
ippStsWrongIntersectROI | Wrong ROI that has no intersection with the source or destination image. No operation |
ippStsWrongIntersectQuad | Wrong quadrangle that has no intersection with the source or destination ROI. No operation |
ippStsSymKernelExpected | The kernel is not symmetric |
ippStsEvenMedianWeight | Even weight of the Weighted Median Filter was replaced by the odd one |
ippStsNoAntialiasing | The mode does not support antialiasing |
The status codes ending with Err (except for the ippStsNoErr status) indicate an error; the integer values of these codes are negative. When an error occurs, the function execution is interrupted.
The status code ippStsNoErr indicates no error. All other status codes indicate warnings. When a specific case is encountered, the function execution is completed and the corresponding warning status is returned. For example, if the function ippiDiv meets an attempt to divide a positive value by zero, the function execution is not aborted. The result of the operation is set to the maximum value that can be represented by the source data type, and the user is warned by the output status ippStsDivByZero. See appendix A Handling of Special Cases for more information.
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.