TBScanUtils.h 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. //
  2. // TBScanUtils.h
  3. // TBScanSDK
  4. //
  5. // Created by Tom on 15/7/28.
  6. // Copyright (c) 2015 Taobao.com. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import <UIKit/UIKit.h>
  10. #import <Accelerate/Accelerate.h>
  11. #import <CoreMedia/CoreMedia.h>
  12. #import <CoreVideo/CoreVideo.h>
  13. extern const float kGetBrightnessFailedValue; ///< 提取失败时返回此值
  14. @interface TBScanUtils : NSObject
  15. // iOS 每帧的数据中,包含光传感器的光度值。Wiki中的测光表此值范围 -6 ~ 16 .
  16. + (float)brightnessValueFromSampleBuffer:(CMSampleBufferRef)sampleBuffer;
  17. + (BOOL)cloudAutoFocusRangeRestrictionNear;
  18. +(BOOL)isURLString:(NSString*)str;
  19. +(BOOL)isValidUrl:(NSString*)inUrlString forHost:(NSString*)inHostStr;
  20. +(UIImage*)grayImageFromCVImageBuffer:(CVImageBufferRef)imageBuffer;
  21. + (CVPixelBufferRef)deepCopyCVPixelBuffer:(CVPixelBufferRef)pixelBufferRef;
  22. // remember to vImage_Buffer.data by free()
  23. + (vImage_Buffer)vImageBufferFromCVPixelBufferRef:(CVPixelBufferRef)pixelBuffer WithVImageCVImageFormatRef:(vImageCVImageFormatRef)cvImageFormatRef;
  24. // this method will not free vImageBuffer.data, you need free it by yourself
  25. + (UIImage *)imageFromVImageBuffer:(vImage_Buffer)vImageBuffer;
  26. // iphone6s 6~7 毫秒
  27. +(UIImage *)imageFromCVPixelBufferRef:(CVPixelBufferRef)pixelBuffer;
  28. // 很耗时,使用上面👆那个
  29. +(UIImage*)dataFromSampleBuffer:(CMSampleBufferRef)nextBuffer isFrontCam:(BOOL)isFront;
  30. +(NSString*)base64forData:(NSData*)theData;
  31. +(CGRect)expandRect:(CGRect)rect LimitInBigRect:(CGRect)bigRect ExpandLength:(CGFloat)expandLength;
  32. + (BOOL)boolConfigForKey:(NSString *) key
  33. config:(NSDictionary *) config
  34. defaultValue:(BOOL) defaultValue;
  35. //+ (NSString *)stringForConfigKey:(NSString *)key;
  36. + (BOOL)boolForConfigKey:(NSString *)key defaultValue:(BOOL)defaultValue;
  37. + (BOOL)isEmptyString:(NSString *)string;
  38. UIEdgeInsets AUGetWindowSafeAreaInsets_mp();
  39. CGFloat AUCommonUIGetScreenWidthForPortrait_mp();
  40. CGFloat AUCommonUIGetScreenHeightForPortrait_mp();
  41. @end