libvideoecho.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #ifndef LIBVIDEOECHO_H
  2. #define LIBVIDEOECHO_H
  3. #pragma once
  4. namespace LibVideoEcho {
  5. struct __declspec(novtable) CVideoEchoHostApi
  6. {
  7. virtual void Debug(const char *fmt, ...) = 0;
  8. virtual int GetActiveCamera() = 0;
  9. virtual HINSTANCE GetEntityHinstance() = 0;
  10. protected:
  11. ~CVideoEchoHostApi() { /*nothing to implement*/ }
  12. };
  13. typedef struct
  14. {
  15. // local video params
  16. int local_video_view_x;
  17. int local_video_view_y;
  18. int local_video_view_cx;
  19. int local_video_view_cy;
  20. //volatile int *ref_camera_state;
  21. char local_video_preview_queue0[64];
  22. char local_video_preview_queue1[64];
  23. CVideoEchoHostApi *pHostApi;
  24. }videoplay_session_conf_t;
  25. typedef struct videoplay_session_t videoplay_session_t;
  26. int Local_videoplay_session_create(const videoplay_session_conf_t *conf, videoplay_session_t **p_session);
  27. //int videoplay_session_create(const videoplay_session_conf_t *conf, videoplay_session_t **p_session);
  28. int Local_videoplay_session_start(videoplay_session_t *session);
  29. void Local_videoplay_session_stop(videoplay_session_t *session);
  30. void Local_videoplay_session_destroy(videoplay_session_t *session);
  31. //int video_lib_init();
  32. //void video_lib_uninit();
  33. }
  34. #endif