process_pipeline.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #pragma once
  2. #include "camera.h"
  3. #include "state.h"
  4. #include <gtk/gtk.h>
  5. typedef struct _GdkSurface GdkSurface;
  6. struct mp_process_pipeline_state {
  7. libmegapixels_camera *camera;
  8. libmegapixels_devconfig *configuration;
  9. int burst_length;
  10. int preview_width;
  11. int preview_height;
  12. int device_rotation;
  13. bool gain_is_manual;
  14. int gain;
  15. int gain_max;
  16. float balance_red;
  17. float balance_blue;
  18. bool exposure_is_manual;
  19. int exposure;
  20. bool has_auto_focus_continuous;
  21. bool has_auto_focus_start;
  22. bool flash_enabled;
  23. bool control_gain;
  24. bool control_exposure;
  25. bool control_flash;
  26. bool control_focus;
  27. };
  28. bool mp_process_find_processor(char *script);
  29. void mp_process_find_all_processors(GtkListStore *store);
  30. void mp_process_pipeline_start();
  31. void mp_process_pipeline_stop();
  32. void mp_process_pipeline_sync();
  33. void mp_process_pipeline_init_gl(GdkSurface *window);
  34. void mp_process_pipeline_process_image(MPBuffer buffer);
  35. void mp_process_pipeline_capture();
  36. void mp_process_pipeline_update_state(const mp_state_proc *new_state);
  37. typedef struct _MPProcessPipelineBuffer MPProcessPipelineBuffer;
  38. void mp_process_pipeline_buffer_ref(MPProcessPipelineBuffer *buf);
  39. void mp_process_pipeline_buffer_unref(MPProcessPipelineBuffer *buf);
  40. uint32_t mp_process_pipeline_buffer_get_texture_id(MPProcessPipelineBuffer *buf);