From 3c8507daeedc535eef622e43b450d497a767f187 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期三, 02 十二月 2020 15:33:19 +0800 Subject: [PATCH] 增加hookip设置, 是否开启自动配置设置 --- src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java | 20 +++++++--- src/main/java/com/genersoft/iot/vmp/vmanager/play/PlayController.java | 1 src/main/resources/application.yml | 70 +++++++++++++++++++++++++--------- 3 files changed, 66 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java index 66f8e61..4a4f1f0 100644 --- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java +++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java @@ -36,6 +36,9 @@ @Value("${media.wanIp}") private String mediaWanIp; + @Value("${media.hookIp}") + private String mediaHookIp; + @Value("${media.port}") private int mediaPort; @@ -51,6 +54,9 @@ @Value("${server.port}") private String serverPort; + @Value("${media.autoConfig}") + private boolean autoConfig; + @Autowired private ZLMRESTfulUtils zlmresTfulUtils; @@ -61,8 +67,7 @@ MediaServerConfig mediaServerConfig = getMediaServerConfig(); if (mediaServerConfig != null) { logger.info("zlm鎺ュ叆鎴愬姛..."); - logger.info("璁剧疆zlm..."); - saveZLMConfig(); + if (autoConfig) saveZLMConfig(); mediaServerConfig = getMediaServerConfig(); storager.updateMediaInfo(mediaServerConfig); } @@ -91,12 +96,15 @@ } private void saveZLMConfig() { - String hookIP = sipIP; - if (mediaIp.equals(sipIP)) { - hookIP = "127.0.0.1"; + logger.info("璁剧疆zlm..."); + if (StringUtils.isEmpty(mediaHookIp)) { + mediaHookIp = sipIP; + } + if (mediaIp.equals(mediaHookIp)) { + mediaHookIp = "127.0.0.1"; } - String hookPrex = String.format("http://%s:%s/index/hook", hookIP, serverPort); + String hookPrex = String.format("http://%s:%s/index/hook", mediaHookIp, serverPort); Map<String, Object> param = new HashMap<>(); param.put("api.secret",mediaSecret); // -profile:v Baseline param.put("ffmpeg.cmd","%s -fflags nobuffer -rtsp_transport tcp -i %s -c:a aac -strict -2 -ar 44100 -ab 48k -c:v libx264 -f flv %s"); diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/play/PlayController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/play/PlayController.java index 300ffc3..3594aff 100644 --- a/src/main/java/com/genersoft/iot/vmp/vmanager/play/PlayController.java +++ b/src/main/java/com/genersoft/iot/vmp/vmanager/play/PlayController.java @@ -93,6 +93,7 @@ lockFlag = false; logger.info("娴佺紪鐮佷俊鎭凡鑾峰彇"); JSONArray tracks = mediaInfo.getJSONArray("tracks"); + logger.info(tracks.toJSONString()); streamInfo.setTracks(tracks); storager.startPlay(streamInfo); } else { diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 463548a..a15c88c 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,20 +1,24 @@ spring: + # [涓嶉渶瑕佹敼] application: name: iot-vmp-vmanager - # 褰卞瓙鏁版嵁瀛樺偍鏂瑰紡锛屾敮鎸乺edis銆乯dbc,鏆備笉鏀寔mysql + # [涓嶉渶瑕佹敼] 褰卞瓙鏁版嵁瀛樺偍鏂瑰紡锛屾敮鎸乺edis銆乯dbc,鏆備笉鏀寔mysql, database: redis - # 閫氫俊鏂瑰紡锛屾敮鎸乲afka銆乭ttp + # [涓嶉渶瑕佹敼] 閫氫俊鏂瑰紡锛屾敮鎸乲afka銆乭ttp communicate: http + # REDIS鏁版嵁搴撻厤缃� redis: - # Redis鏈嶅姟鍣↖P - host: 127.0.0.1 - #绔彛鍙� + # [蹇呴』淇敼] Redis鏈嶅姟鍣↖P, REDIS瀹夎鍦ㄦ湰鏈虹殑,浣跨敤127.0.0.1 + host: 192.168.1.141 + # [蹇呴』淇敼] 绔彛鍙� port: 6379 + # [鍙�塢 鏁版嵁搴� DB database: 6 - #璁块棶瀵嗙爜,鑻ヤ綘鐨剅edis鏈嶅姟鍣ㄦ病鏈夎缃瘑鐮侊紝灏变笉闇�瑕佺敤瀵嗙爜鍘昏繛鎺� - password: - #瓒呮椂鏃堕棿 + # [鍙�塢 璁块棶瀵嗙爜,鑻ヤ綘鐨剅edis鏈嶅姟鍣ㄦ病鏈夎缃瘑鐮侊紝灏变笉闇�瑕佺敤瀵嗙爜鍘昏繛鎺� + password: 4767cb971b40a1300fa09b7f87b09d1c + # [鍙�塢 瓒呮椂鏃堕棿 timeout: 10000 + # [涓嶅彲鐢╙ jdbc鏁版嵁搴撻厤缃�, 鏆備笉鏀寔 datasource: name: eiot url: jdbc:mysql://127.0.0.1:3306/eiot?useUnicode=true&characterEncoding=UTF8&rewriteBatchedStatements=true @@ -22,36 +26,62 @@ password: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver + +# [鍙�塢 WVP鐩戝惉鐨凥TTP绔彛, 缃戦〉鍜屾帴鍙h皟鐢ㄩ兘鏄繖涓鍙� server: port: 18080 + +# 浣滀负28181鏈嶅姟鍣ㄧ殑閰嶇疆 sip: - ip: 192.168.1.44 + # [蹇呴』淇敼] 鏈満鐨処P, 蹇呴』鏄綉鍗′笂鐨処P + ip: 192.168.1.20 + # [鍙�塢 28181鏈嶅姟鐩戝惉鐨勭鍙� port: 5060 # 鏍规嵁鍥芥爣6.1.2涓瀹氾紝domain瀹滈噰鐢↖D缁熶竴缂栫爜鐨勫墠鍗佷綅缂栫爜銆傚浗鏍囬檮褰旸涓畾涔夊墠8浣嶄负涓績缂栫爜锛堢敱鐪佺骇銆佸競绾с�佸尯绾с�佸熀灞傜紪鍙风粍鎴愶紝鍙傜収GB/T 2260-2007锛� # 鍚庝袱浣嶄负琛屼笟缂栫爜锛屽畾涔夊弬鐓ч檮褰旸.3 # 3701020049鏍囪瘑灞变笢娴庡崡鍘嗕笅鍖� 淇℃伅琛屼笟鎺ュ叆 + # [鍙�塢 domain: 3402000000 + # [鍙�塢 id: 34020000002000000001 - # 榛樿璁惧璁よ瘉瀵嗙爜锛屽悗缁墿灞曚娇鐢ㄨ澶囧崟鐙瘑鐮� + # [鍙�塢 榛樿璁惧璁よ瘉瀵嗙爜锛屽悗缁墿灞曚娇鐢ㄨ澶囧崟鐙瘑鐮� password: 12345678 -auth: #32浣嶅皬鍐檓d5鍔犲瘑锛堥粯璁ゅ瘑鐮佷负admin锛� +# 鐧婚檰鐨勭敤鎴峰悕瀵嗙爜 +auth: + # [鍙�塢 鐢ㄦ埛鍚� username: admin + # [鍙�塢 瀵嗙爜, 榛樿涓篴dmin password: 21232f297a57a5a743894a0e4a801fc3 -media: #zlm鏈嶅姟鍣ㄧ殑ip涓巋ttp绔彛, 閲嶇偣: 杩欐槸http绔彛 - ip: 192.168.1.44 - wanIp: - port: 80 +#zlm鏈嶅姟鍣ㄩ厤缃� +media: + # [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑鍐呯綉IP + ip: 127.0.0.1 + # [鍙�塢 zlm鏈嶅姟鍣ㄧ殑鍏綉IP, 鍐呯綉閮ㄧ讲缃┖鍗冲彲 + wanIp: 192.168.1.20 + # [鍙�塢 zlm鏈嶅姟鍣ㄧ殑hook鎵�浣跨敤鐨処P, 榛樿浣跨敤sip.ip + hookIp: + # [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑http.port + port: 6080 + # [鍙�塢 鏄惁鑷姩閰嶇疆ZLM, 濡傛灉甯屾湜鎵嬪姩閰嶇疆ZLM, 鍙互璁句负false, 涓嶅缓璁柊鎺ヨЕ鐨勭敤鎴蜂慨鏀� + autoConfig: true + # [鍙�塢 zlm鏈嶅姟鍣ㄧ殑hook.admin_params=secret secret: 035c73f7-bb6b-4889-a715-d9eb2d1925cc + # [鍙�塢 zlm鏈嶅姟鍣ㄧ殑general.streamNoneReaderDelayMS streamNoneReaderDelayMS: 600000 # 鏃犱汉瑙傜湅澶氫箙鑷姩鍏抽棴娴� - # 鍏抽棴绛夊緟鏀跺埌娴佺紪鐮佷俊鎭悗鍦ㄨ繑鍥�, + # [鍙�塢 鍏抽棴绛夊緟鏀跺埌娴佺紪鐮佷俊鎭悗鍦ㄨ繑鍥�, # 璁句负false鍙互鑾峰緱鏇村ソ鐨勫吋瀹规��,淇濊瘉杩斿洖鍚庢祦灏卞彲浠ユ挱鏀�, # 璁句负true鍙互蹇�熸墦寮�鎾斁绐楀彛,鍙互鑾峰緱鏇村ソ鐨勪綋楠� - closeWaitRTPInfo: true - rtp: # 鍚敤udp澶氱鍙fā寮� + closeWaitRTPInfo: false + # 鍚敤udp澶氱鍙fā寮�, 璇︾粏瑙i噴鍙傝��: https://github.com/xia-chu/ZLMediaKit/wiki/GB28181%E6%8E%A8%E6%B5%81 涓嬬殑楂橀樁浣跨敤 + rtp: + # [鍙�塢 鏄惁鍚敤udp澶氱鍙fā寮�, 寮�鍚悗浼氬湪udpPortRange鑼冨洿鍐呴�夋嫨绔彛鐢ㄤ簬濯掍綋娴佷紶杈� enable: true + # [鍙�塢 鍦ㄦ鑼冨洿鍐呴�夋嫨绔彛鐢ㄤ簬濯掍綋娴佷紶杈�, 涓嶅彧鏄痷dp, 浣跨敤TCP琚姩浼犺緭妯″紡鏃�,涔熸槸浠庤繖涓寖鍥村唴閫夋嫨绔彛 udpPortRange: 30000,30500 # 绔彛鑼冨洿 + +# [鍙�塢 鏃ュ織閰嶇疆, 涓�鑸笉闇�瑕佹敼 logging: file: name: logs/wvp.log @@ -61,4 +91,6 @@ level: com: genersoft: - iot: debug \ No newline at end of file + iot: debug + + -- Gitblit v1.8.0