loadyuv.h 582 B

1234567891011121314151617181920
  1. #pragma once
  2. #include "common/clutil.h"
  3. typedef struct {
  4. int width, height;
  5. cl_kernel loadys_krnl, loaduv_krnl, copy_krnl;
  6. } LoadYUVState;
  7. void loadyuv_init(LoadYUVState* s, cl_context ctx, cl_device_id device_id, int width, int height);
  8. void loadyuv_destroy(LoadYUVState* s);
  9. void loadyuv_queue(LoadYUVState* s, cl_command_queue q,
  10. cl_mem y_cl, cl_mem u_cl, cl_mem v_cl,
  11. cl_mem out_cl);
  12. void copy_queue(LoadYUVState* s, cl_command_queue q, cl_mem src, cl_mem dst,
  13. size_t src_offset, size_t dst_offset, size_t size);