No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CVTextureCache.h 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #pragma once
  2. #include <stdint.h>
  3. // returns CVMetalTextureCacheRef
  4. void* CreateCVTextureCache();
  5. // cache = CVMetalTextureCacheRef
  6. void FlushCVTextureCache(void* cache);
  7. // returns CVMetalTextureRef
  8. // cache = CVMetalTextureCacheRef
  9. // image = CVImageBufferRef/CVPixelBufferRef
  10. void* CreateTextureFromCVTextureCache2(void* cache, void* image, size_t w, size_t h, uint64_t metalFormat);
  11. // texture = CVMetalTextureRef
  12. MTLTextureRef GetMetalTextureFromCVTextureCache(void* texture);
  13. // texture = CVMetalTextureRef
  14. uintptr_t GetTextureFromCVTextureCache(void* texture);
  15. // returns CVPixelBufferRef
  16. void* CreatePixelBufferForCVTextureCache2(size_t w, size_t h, uint32_t cvFormat);
  17. // returns CVMetalTextureRef
  18. // cache = CVMetalTextureCacheRef
  19. // pb = CVPixelBufferRef (out)
  20. void* CreateReadableRTFromCVTextureCache2(void* cache, size_t w, size_t h, uint32_t cvFormat, uint64_t metalFormat, void** pb);
  21. // texture = CVMetalTextureRef
  22. int IsCVTextureFlipped(void* texture);
  23. //
  24. // deprecated
  25. //
  26. // returns CVPixelBufferRef
  27. // enforces kCVPixelFormatType_32BGRA
  28. void* CreatePixelBufferForCVTextureCache(size_t w, size_t h);
  29. // returns CVMetalTextureRef
  30. // cache = CVMetalTextureCacheRef
  31. // pb = CVPixelBufferRef (out)
  32. // enforces rgba texture with bgra backing
  33. void* CreateReadableRTFromCVTextureCache(void* cache, size_t w, size_t h, void** pb);
  34. // returns CVMetalTextureRef
  35. // cache = CVMetalTextureCacheRef
  36. // image = CVImageBufferRef/CVPixelBufferRef
  37. void* CreateBGRA32TextureFromCVTextureCache(void* cache, void* image, size_t w, size_t h);
  38. void* CreateHalfFloatTextureFromCVTextureCache(void* cache, void* image, size_t w, size_t h);