IStreamProxyService.java 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package com.genersoft.iot.vmp.service;
  2. import com.alibaba.fastjson2.JSONObject;
  3. import com.genersoft.iot.vmp.common.StreamInfo;
  4. import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
  5. import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyItem;
  6. import com.genersoft.iot.vmp.vmanager.bean.ResourceBaceInfo;
  7. import com.github.pagehelper.PageInfo;
  8. public interface IStreamProxyService {
  9. /**
  10. * 保存视频代理
  11. * @param param
  12. */
  13. StreamInfo save(StreamProxyItem param);
  14. /**
  15. * 添加视频代理到zlm
  16. * @param param
  17. * @return
  18. */
  19. JSONObject addStreamProxyToZlm(StreamProxyItem param);
  20. /**
  21. * 从zlm移除视频代理
  22. * @param param
  23. * @return
  24. */
  25. JSONObject removeStreamProxyFromZlm(StreamProxyItem param);
  26. /**
  27. * 分页查询
  28. * @param page
  29. * @param count
  30. * @return
  31. */
  32. PageInfo<StreamProxyItem> getAll(Integer page, Integer count);
  33. /**
  34. * 删除视频代理
  35. * @param app
  36. * @param stream
  37. */
  38. void del(String app, String stream);
  39. /**
  40. * 启用视频代理
  41. * @param app
  42. * @param stream
  43. * @return
  44. */
  45. boolean start(String app, String stream);
  46. /**
  47. * 更新状态
  48. * @param status 状态
  49. * @param app
  50. * @param stream
  51. */
  52. int updateStatus(boolean status, String app, String stream);
  53. /**
  54. * 停用用视频代理
  55. * @param app
  56. * @param stream
  57. * @return
  58. */
  59. boolean stop(String app, String stream);
  60. /**
  61. * 获取ffmpeg.cmd模板
  62. * @return
  63. */
  64. JSONObject getFFmpegCMDs(MediaServerItem mediaServerItem);
  65. /**
  66. * 根据app与stream获取streamProxy
  67. * @return
  68. */
  69. StreamProxyItem getStreamProxyByAppAndStream(String app, String streamId);
  70. /**
  71. * 新的节点加入
  72. * @param mediaServerId
  73. * @return
  74. */
  75. void zlmServerOnline(String mediaServerId);
  76. /**
  77. * 节点离线
  78. * @param mediaServerId
  79. * @return
  80. */
  81. void zlmServerOffline(String mediaServerId);
  82. void clean();
  83. /**
  84. * 更新代理流
  85. */
  86. boolean updateStreamProxy(StreamProxyItem streamProxyItem);
  87. /**
  88. * 获取统计信息
  89. * @return
  90. */
  91. ResourceBaceInfo getOverview();
  92. }