|  | @@ -275,37 +275,37 @@ public class ZLMHttpHookListener {
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              // 设置音频信息及录制信息
 | 
	
		
			
				|  |  | -        List<SsrcTransaction> ssrcTransactionForAll = sessionManager.getSsrcTransactionForAll(null, null, null, param.getStream());
 | 
	
		
			
				|  |  | -        if (ssrcTransactionForAll != null && ssrcTransactionForAll.size() == 1) {
 | 
	
		
			
				|  |  | +            List<SsrcTransaction> ssrcTransactionForAll = sessionManager.getSsrcTransactionForAll(null, null, null, param.getStream());
 | 
	
		
			
				|  |  | +            if (ssrcTransactionForAll != null && ssrcTransactionForAll.size() == 1) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            // 为录制国标模拟一个鉴权信息, 方便后续写入录像文件时使用
 | 
	
		
			
				|  |  | -            StreamAuthorityInfo streamAuthorityInfo = StreamAuthorityInfo.getInstanceByHook(param);
 | 
	
		
			
				|  |  | -            streamAuthorityInfo.setApp(param.getApp());
 | 
	
		
			
				|  |  | -            streamAuthorityInfo.setStream(ssrcTransactionForAll.get(0).getStream());
 | 
	
		
			
				|  |  | -            streamAuthorityInfo.setCallId(ssrcTransactionForAll.get(0).getSipTransactionInfo().getCallId());
 | 
	
		
			
				|  |  | +                // 为录制国标模拟一个鉴权信息, 方便后续写入录像文件时使用
 | 
	
		
			
				|  |  | +                StreamAuthorityInfo streamAuthorityInfo = StreamAuthorityInfo.getInstanceByHook(param);
 | 
	
		
			
				|  |  | +                streamAuthorityInfo.setApp(param.getApp());
 | 
	
		
			
				|  |  | +                streamAuthorityInfo.setStream(ssrcTransactionForAll.get(0).getStream());
 | 
	
		
			
				|  |  | +                streamAuthorityInfo.setCallId(ssrcTransactionForAll.get(0).getSipTransactionInfo().getCallId());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            redisCatchStorage.updateStreamAuthorityInfo(param.getApp(), ssrcTransactionForAll.get(0).getStream(), streamAuthorityInfo);
 | 
	
		
			
				|  |  | +                redisCatchStorage.updateStreamAuthorityInfo(param.getApp(), ssrcTransactionForAll.get(0).getStream(), streamAuthorityInfo);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            String deviceId = ssrcTransactionForAll.get(0).getDeviceId();
 | 
	
		
			
				|  |  | -            String channelId = ssrcTransactionForAll.get(0).getChannelId();
 | 
	
		
			
				|  |  | -            DeviceChannel deviceChannel = storager.queryChannel(deviceId, channelId);
 | 
	
		
			
				|  |  | -            if (deviceChannel != null) {
 | 
	
		
			
				|  |  | -                result.setEnable_audio(deviceChannel.isHasAudio());
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            // 如果是录像下载就设置视频间隔十秒
 | 
	
		
			
				|  |  | -            if (ssrcTransactionForAll.get(0).getType() == InviteSessionType.DOWNLOAD) {
 | 
	
		
			
				|  |  | -                // 获取录像的总时长,然后设置为这个视频的时长
 | 
	
		
			
				|  |  | -                InviteInfo inviteInfoForDownload = inviteStreamService.getInviteInfo(InviteSessionType.DOWNLOAD, deviceId, channelId, param.getStream());
 | 
	
		
			
				|  |  | -                if (inviteInfoForDownload != null && inviteInfoForDownload.getStreamInfo() != null ) {
 | 
	
		
			
				|  |  | -                    String startTime = inviteInfoForDownload.getStreamInfo().getStartTime();
 | 
	
		
			
				|  |  | -                    String endTime = inviteInfoForDownload.getStreamInfo().getEndTime();
 | 
	
		
			
				|  |  | -                    long difference = DateUtil.getDifference(startTime, endTime)/1000;
 | 
	
		
			
				|  |  | -                    result.setMp4_max_second((int)difference);
 | 
	
		
			
				|  |  | -                    result.setEnable_mp4(true);
 | 
	
		
			
				|  |  | -                    // 设置为2保证得到的mp4的时长是正常的
 | 
	
		
			
				|  |  | -                    result.setModify_stamp(2);
 | 
	
		
			
				|  |  | +                String deviceId = ssrcTransactionForAll.get(0).getDeviceId();
 | 
	
		
			
				|  |  | +                String channelId = ssrcTransactionForAll.get(0).getChannelId();
 | 
	
		
			
				|  |  | +                DeviceChannel deviceChannel = storager.queryChannel(deviceId, channelId);
 | 
	
		
			
				|  |  | +                if (deviceChannel != null) {
 | 
	
		
			
				|  |  | +                    result.setEnable_audio(deviceChannel.isHasAudio());
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                // 如果是录像下载就设置视频间隔十秒
 | 
	
		
			
				|  |  | +                if (ssrcTransactionForAll.get(0).getType() == InviteSessionType.DOWNLOAD) {
 | 
	
		
			
				|  |  | +                    // 获取录像的总时长,然后设置为这个视频的时长
 | 
	
		
			
				|  |  | +                    InviteInfo inviteInfoForDownload = inviteStreamService.getInviteInfo(InviteSessionType.DOWNLOAD, deviceId, channelId, param.getStream());
 | 
	
		
			
				|  |  | +                    if (inviteInfoForDownload != null && inviteInfoForDownload.getStreamInfo() != null) {
 | 
	
		
			
				|  |  | +                        String startTime = inviteInfoForDownload.getStreamInfo().getStartTime();
 | 
	
		
			
				|  |  | +                        String endTime = inviteInfoForDownload.getStreamInfo().getEndTime();
 | 
	
		
			
				|  |  | +                        long difference = DateUtil.getDifference(startTime, endTime) / 1000;
 | 
	
		
			
				|  |  | +                        result.setMp4_max_second((int) difference);
 | 
	
		
			
				|  |  | +                        result.setEnable_mp4(true);
 | 
	
		
			
				|  |  | +                        // 设置为2保证得到的mp4的时长是正常的
 | 
	
		
			
				|  |  | +                        result.setModify_stamp(2);
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          if (param.getApp().equalsIgnoreCase("rtp")) {
 |