| | |
| | | } |
| | | |
| | | @Override |
| | | public List<StreamInfo> getMediaList(MediaServerItem mediaServerItem, String app, String stream) { |
| | | public List<StreamInfo> getMediaList(MediaServerItem mediaServerItem, String app, String stream, String callId) { |
| | | List<StreamInfo> streamInfoList = new ArrayList<>(); |
| | | JSONObject mediaList = zlmresTfulUtils.getMediaList(mediaServerItem, app, stream); |
| | | if (mediaList != null) { |
| | |
| | | return null; |
| | | } |
| | | JSONObject mediaJSON = data.getJSONObject(0); |
| | | JSONArray tracks = mediaJSON.getJSONArray("tracks"); |
| | | |
| | | if (authority) { |
| | | streamInfo = getStreamInfoByAppAndStream(mediaServerItem, app, stream, tracks, null, calld, true); |
| | | }else { |
| | | streamInfo = getStreamInfoByAppAndStream(mediaServerItem, app, stream, tracks, null,null, true); |
| | | Track track = Track.getInstance(mediaJSON); |
| | | StreamInfo streamInfo = getStreamInfoByAppAndStream(mediaServerItem, app, stream, track, callId, true); |
| | | if (streamInfo != null) { |
| | | streamInfoList.add(streamInfo); |
| | | } |
| | | } |
| | | } |
| | | return streamInfoList; |
| | | } |
| | | |
| | | public StreamInfo getStreamInfoByAppAndStream(MediaServerItem mediaInfo, String app, String stream, Track track, String addr, String callId, boolean isPlay) { |
| | | public StreamInfo getStreamInfoByAppAndStream(MediaServerItem mediaInfo, String app, String stream, Track track, String callId, boolean isPlay) { |
| | | StreamInfo streamInfoResult = new StreamInfo(); |
| | | streamInfoResult.setStream(stream); |
| | | streamInfoResult.setApp(app); |
| | | if (addr == null) { |
| | | addr = mediaInfo.getStreamIp(); |
| | | } |
| | | |
| | | String addr = mediaInfo.getStreamIp(); |
| | | streamInfoResult.setIp(addr); |
| | | streamInfoResult.setMediaServerId(mediaInfo.getId()); |
| | | String callIdParam = ObjectUtils.isEmpty(callId)?"":"?callId=" + callId; |