VideoStreamSessionManager.java 976 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package com.genersoft.iot.vmp.gb28181.session;
  2. import java.util.concurrent.ConcurrentHashMap;
  3. import javax.sip.ClientTransaction;
  4. import org.springframework.stereotype.Component;
  5. /**
  6. * @Description:视频流session管理器,管理视频预览、预览回放的通信句柄
  7. * @author: swwheihei
  8. * @date: 2020年5月13日 下午4:03:02
  9. */
  10. @Component
  11. public class VideoStreamSessionManager {
  12. private ConcurrentHashMap<String, ClientTransaction> sessionMap = new ConcurrentHashMap<>();
  13. public String createPlaySsrc(){
  14. return SsrcUtil.getPlaySsrc();
  15. }
  16. public String createPlayBackSsrc(){
  17. return SsrcUtil.getPlayBackSsrc();
  18. }
  19. public void put(String ssrc,ClientTransaction transaction){
  20. sessionMap.put(ssrc, transaction);
  21. }
  22. public ClientTransaction get(String ssrc){
  23. return sessionMap.get(ssrc);
  24. }
  25. public void remove(String ssrc) {
  26. sessionMap.remove(ssrc);
  27. SsrcUtil.releaseSsrc(ssrc);
  28. }
  29. }