YYBPGCoder.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. //
  2. // YYBPGCoder.h
  3. // YYKitExample
  4. //
  5. // Created by ibireme on 15/8/13.
  6. // Copyright (c) 2015 ibireme. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. #import "YYImage.h"
  10. /*
  11. BPG image format:
  12. http://bellard.org/bpg/
  13. */
  14. /**
  15. Decode BPG data
  16. @param bpgData BPG image data.
  17. @param decodeForDisplay YES: returns a premultiply BRGA format image, NO: returns an ARGB format image.
  18. @return A new image, or NULL if an error occurs.
  19. */
  20. CG_EXTERN CGImageRef YYCGImageCreateWithBPGData(CFDataRef bpgData, BOOL decodeForDisplay);
  21. /**
  22. Decode a frame from BPG image data, returns NULL if an error occurs.
  23. @warning This method should only be used for benchmark.
  24. */
  25. CG_EXTERN CGImageRef YYCGImageCreateFrameWithBPGData(CFDataRef bpgData, NSUInteger frameIndex, BOOL decodeForDisplay);
  26. /**
  27. Decode all frames in BPG image data, returns NULL if an error occurs.
  28. @warning This method should only be used for benchmark.
  29. */
  30. CG_EXTERN void YYCGImageDecodeAllFrameInBPGData(CFDataRef bpgData, BOOL decodeForDisplay);
  31. /**
  32. Whether data is bpg.
  33. */
  34. CG_EXTERN BOOL YYImageIsBPGData(CFDataRef data);