修复大华对讲talk模式
This commit is contained in:
@@ -175,15 +175,18 @@ public class SendRtpInfo {
|
||||
return sendRtpItem;
|
||||
}
|
||||
|
||||
public static SendRtpInfo getInstance(Integer localPort, MediaServer mediaServer, String ip, int port, String ssrc,
|
||||
String deviceId, String platformId, Integer channelId, boolean isTcp, boolean rtcp,
|
||||
public static SendRtpInfo getInstance(Integer localPort, MediaServer mediaServer, String ip, Integer port, String ssrc,
|
||||
String deviceId, String platformId, Integer channelId, Boolean isTcp, Boolean rtcp,
|
||||
String serverId) {
|
||||
if (localPort == 0) {
|
||||
return null;
|
||||
}
|
||||
SendRtpInfo sendRtpItem = new SendRtpInfo();
|
||||
sendRtpItem.setIp(ip);
|
||||
sendRtpItem.setPort(port);
|
||||
if(port != null) {
|
||||
sendRtpItem.setPort(port);
|
||||
}
|
||||
|
||||
sendRtpItem.setSsrc(ssrc);
|
||||
if (deviceId != null) {
|
||||
sendRtpItem.setTargetId(deviceId);
|
||||
|
||||
@@ -517,7 +517,14 @@ public class PlayServiceImpl implements IPlayService {
|
||||
}, userSetting.getPlayTimeout());
|
||||
|
||||
try {
|
||||
mediaServerService.startSendRtpPassive(mediaServerItem, sendRtpInfo, userSetting.getPlayTimeout() * 1000);
|
||||
Integer localPort = mediaServerService.startSendRtpPassive(mediaServerItem, sendRtpInfo, userSetting.getPlayTimeout() * 1000);
|
||||
if (localPort == null || localPort <= 0) {
|
||||
timeoutCallback.run();
|
||||
mediaServerService.releaseSsrc(mediaServerItem.getId(), sendRtpInfo.getSsrc());
|
||||
sessionManager.removeByStream(sendRtpInfo.getStream());
|
||||
return;
|
||||
}
|
||||
sendRtpInfo.setPort(localPort);
|
||||
}catch (ControllerException e) {
|
||||
mediaServerService.releaseSsrc(mediaServerItem.getId(), sendRtpInfo.getSsrc());
|
||||
log.info("[语音对讲]失败 deviceId: {}, channelId: {}", device.getDeviceId(), channel.getDeviceId());
|
||||
|
||||
Reference in New Issue
Block a user