video_session.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #pragma once
  2. #include "../include/EventCode.h"
  3. #include "../mod_counterconnector/CallType.h"
  4. #include "endpoint.h"
  5. typedef struct video_session_conf_t
  6. {
  7. unsigned long local_rtp_ip;
  8. int local_rtp_port;
  9. unsigned long remote_rtp_ip;
  10. int remote_rtp_port;
  11. int remote_video_width;
  12. int remote_video_height;
  13. // remote video params
  14. int remote_video_view_x;
  15. int remote_video_view_y;
  16. int remote_video_view_cx;
  17. int remote_video_view_cy;
  18. // local video params
  19. int local_video_view_x;
  20. int local_video_view_y;
  21. int local_video_view_cx;
  22. int local_video_view_cy;
  23. int camera_count;
  24. int screen_count;
  25. volatile int *ref_active_camera;
  26. volatile int *ref_camera_switch;
  27. volatile int *ref_window_state;
  28. volatile int *ref_active_img;
  29. volatile int *ref_camera_state;
  30. volatile int *ref_Up_Fps;
  31. volatile int *ref_Is_ActiveInspect;
  32. volatile int *ref_Is_showPersonArea;
  33. volatile int *ref_Is_showRecordArea;
  34. int mtu;
  35. int video_quant; // 0-10
  36. int bit_rate; // 256*1024
  37. DeviceTypeEnum eDeviceType;
  38. CallingTypeEnum nCallType;
  39. int local_pt;
  40. int remote_pt;
  41. int local_move;
  42. int remote_move;
  43. int ilocal_wind_flags;
  44. int iremote_wind_flags;
  45. video_session_callback_t* video_echo_cb;
  46. }video_session_conf_t;
  47. typedef struct video_session_t video_session_t;
  48. int Local_video_session_create(const video_session_conf_t *conf, video_session_t **p_session, bool bremote = false);
  49. int video_session_create(const video_session_conf_t *conf, video_session_t **p_session);
  50. int video_session_start(video_session_t *session);
  51. void video_session_stop(video_session_t *session);
  52. void video_session_destroy(video_session_t *session);
  53. void double_record_broadcast_video_session_stop();
  54. int video_lib_init();
  55. void video_lib_deinit();