process_pipeline.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #pragma once
  2. #include "camera.h"
  3. #include "camera_config.h"
  4. typedef struct _GdkSurface GdkSurface;
  5. struct mp_process_pipeline_state {
  6. const struct mp_camera_config *camera;
  7. MPMode mode;
  8. int burst_length;
  9. int preview_width;
  10. int preview_height;
  11. int device_rotation;
  12. bool gain_is_manual;
  13. int gain;
  14. int gain_max;
  15. bool exposure_is_manual;
  16. int exposure;
  17. bool has_auto_focus_continuous;
  18. bool has_auto_focus_start;
  19. bool flash_enabled;
  20. bool save_dng;
  21. };
  22. void mp_process_pipeline_start();
  23. void mp_process_pipeline_stop();
  24. void mp_process_pipeline_sync();
  25. void mp_process_pipeline_init_gl(GdkSurface *window);
  26. void mp_process_pipeline_process_image(MPBuffer buffer);
  27. void mp_process_pipeline_capture();
  28. void mp_process_pipeline_update_state(const struct mp_process_pipeline_state *state);
  29. typedef struct _MPProcessPipelineBuffer MPProcessPipelineBuffer;
  30. void mp_process_pipeline_buffer_ref(MPProcessPipelineBuffer *buf);
  31. void mp_process_pipeline_buffer_unref(MPProcessPipelineBuffer *buf);
  32. uint32_t mp_process_pipeline_buffer_get_texture_id(MPProcessPipelineBuffer *buf);