ssrc 码流类型调整

This commit is contained in:
zxb 2023-08-16 15:49:56 +08:00
parent 205f1f1f60
commit f1c4287611
4 changed files with 66 additions and 66 deletions

View File

@ -73,51 +73,51 @@ public class AssistRESTfulUtils {
.get() .get()
.url(url) .url(url)
.build(); .build();
if (callback == null) { if (callback == null) {
try { try {
Response response = client.newCall(request).execute(); Response response = client.newCall(request).execute();
if (response.isSuccessful()) {
ResponseBody responseBody = response.body();
if (responseBody != null) {
String responseStr = responseBody.string();
responseJSON = JSON.parseObject(responseStr);
}
}else {
response.close();
Objects.requireNonNull(response.body()).close();
}
} catch (ConnectException e) {
logger.error(String.format("连接Assist失败: %s, %s", e.getCause().getMessage(), e.getMessage()));
logger.info("请检查media配置并确认Assist已启动...");
}catch (IOException e) {
logger.error(String.format("[ %s ]请求失败: %s", url, e.getMessage()));
}
}else {
client.newCall(request).enqueue(new Callback(){
@Override
public void onResponse(@NotNull Call call, @NotNull Response response){
if (response.isSuccessful()) { if (response.isSuccessful()) {
ResponseBody responseBody = response.body(); try {
if (responseBody != null) { String responseStr = Objects.requireNonNull(response.body()).string();
String responseStr = responseBody.string(); callback.run(JSON.parseObject(responseStr));
responseJSON = JSON.parseObject(responseStr); } catch (IOException e) {
logger.error(String.format("[ %s ]请求失败: %s", url, e.getMessage()));
} }
}else { }else {
response.close(); response.close();
Objects.requireNonNull(response.body()).close(); Objects.requireNonNull(response.body()).close();
} }
} catch (ConnectException e) { }
@Override
public void onFailure(@NotNull Call call, @NotNull IOException e) {
logger.error(String.format("连接Assist失败: %s, %s", e.getCause().getMessage(), e.getMessage())); logger.error(String.format("连接Assist失败: %s, %s", e.getCause().getMessage(), e.getMessage()));
logger.info("请检查media配置并确认Assist已启动..."); logger.info("请检查media配置并确认Assist已启动...");
}catch (IOException e) {
logger.error(String.format("[ %s ]请求失败: %s", url, e.getMessage()));
} }
}else { });
client.newCall(request).enqueue(new Callback(){ }
@Override
public void onResponse(@NotNull Call call, @NotNull Response response){
if (response.isSuccessful()) {
try {
String responseStr = Objects.requireNonNull(response.body()).string();
callback.run(JSON.parseObject(responseStr));
} catch (IOException e) {
logger.error(String.format("[ %s ]请求失败: %s", url, e.getMessage()));
}
}else {
response.close();
Objects.requireNonNull(response.body()).close();
}
}
@Override
public void onFailure(@NotNull Call call, @NotNull IOException e) {
logger.error(String.format("连接Assist失败: %s, %s", e.getCause().getMessage(), e.getMessage()));
logger.info("请检查media配置并确认Assist已启动...");
}
});
}

View File

@ -600,7 +600,7 @@ public class MediaServerServiceImpl implements IMediaServerService {
param.put("protocol.continue_push_ms", "3000" ); param.put("protocol.continue_push_ms", "3000" );
// 最多等待未初始化的Track时间单位毫秒超时之后会忽略未初始化的Track, 设置此选项优化那些音频错误的不规范流 // 最多等待未初始化的Track时间单位毫秒超时之后会忽略未初始化的Track, 设置此选项优化那些音频错误的不规范流
// 等zlm支持给每个rtpServer设置关闭音频的时候可以不设置此选项 // 等zlm支持给每个rtpServer设置关闭音频的时候可以不设置此选项
// param.put("general.wait_track_ready_ms", "3000" ); // param.put("general.wait_track_ready_ms", "3000" );
if (mediaServerItem.isRtpEnable() && !ObjectUtils.isEmpty(mediaServerItem.getRtpPortRange())) { if (mediaServerItem.isRtpEnable() && !ObjectUtils.isEmpty(mediaServerItem.getRtpPortRange())) {
param.put("rtp_proxy.port_range", mediaServerItem.getRtpPortRange().replace(",", "-")); param.put("rtp_proxy.port_range", mediaServerItem.getRtpPortRange().replace(",", "-"));
} }

View File

@ -185,7 +185,7 @@ public class PsController {
String stream, String stream,
String callId, String callId,
Boolean isUdp Boolean isUdp
) { ) {
logger.info("[第三方PS服务对接->发送流] " + logger.info("[第三方PS服务对接->发送流] " +
"ssrc->{}, \r\n" + "ssrc->{}, \r\n" +
"dstIp->{}, \n" + "dstIp->{}, \n" +
@ -193,12 +193,12 @@ public class PsController {
"app->{}, \n" + "app->{}, \n" +
"stream->{}, \n" + "stream->{}, \n" +
"callId->{} \n", "callId->{} \n",
ssrc, ssrc,
dstIp, dstIp,
dstPort, dstPort,
app, app,
stream, stream,
callId); callId);
MediaServerItem mediaServerItem = mediaServerService.getDefaultMediaServer(); MediaServerItem mediaServerItem = mediaServerService.getDefaultMediaServer();
String key = VideoManagerConstants.WVP_OTHER_SEND_PS_INFO + userSetting.getServerId() + "_" + callId; String key = VideoManagerConstants.WVP_OTHER_SEND_PS_INFO + userSetting.getServerId() + "_" + callId;
OtherPsSendInfo sendInfo = (OtherPsSendInfo)redisTemplate.opsForValue().get(key); OtherPsSendInfo sendInfo = (OtherPsSendInfo)redisTemplate.opsForValue().get(key);
@ -305,17 +305,17 @@ public class PsController {
public int getTestPort() { public int getTestPort() {
MediaServerItem defaultMediaServer = mediaServerService.getDefaultMediaServer(); MediaServerItem defaultMediaServer = mediaServerService.getDefaultMediaServer();
// for (int i = 0; i <300; i++) { // for (int i = 0; i <300; i++) {
// new Thread(() -> { // new Thread(() -> {
// int nextPort = sendRtpPortManager.getNextPort(defaultMediaServer); // int nextPort = sendRtpPortManager.getNextPort(defaultMediaServer);
// try { // try {
// Thread.sleep((int)Math.random()*10); // Thread.sleep((int)Math.random()*10);
// } catch (InterruptedException e) { // } catch (InterruptedException e) {
// throw new RuntimeException(e); // throw new RuntimeException(e);
// } // }
// System.out.println(nextPort); // System.out.println(nextPort);
// }).start(); // }).start();
// } // }
return sendRtpPortManager.getNextPort(defaultMediaServer); return sendRtpPortManager.getNextPort(defaultMediaServer);
} }

View File

@ -198,7 +198,7 @@ public class RtpController {
Boolean isUdp, Boolean isUdp,
@RequestParam(required = false)Integer ptForAudio, @RequestParam(required = false)Integer ptForAudio,
@RequestParam(required = false)Integer ptForVideo @RequestParam(required = false)Integer ptForVideo
) { ) {
logger.info("[第三方服务对接->发送流] " + logger.info("[第三方服务对接->发送流] " +
"ssrc->{}, \r\n" + "ssrc->{}, \r\n" +
"dstIpForAudio->{}, \n" + "dstIpForAudio->{}, \n" +
@ -210,16 +210,16 @@ public class RtpController {
"callId->{}, \n" + "callId->{}, \n" +
"ptForAudio->{}, \n" + "ptForAudio->{}, \n" +
"ptForVideo->{}", "ptForVideo->{}",
ssrc, ssrc,
dstIpForAudio, dstIpForAudio,
dstIpForVideo, dstIpForVideo,
dstPortForAudio, dstPortForAudio,
dstPortForVideo, dstPortForVideo,
app, app,
stream, stream,
callId, callId,
ptForAudio, ptForAudio,
ptForVideo); ptForVideo);
if (!((dstPortForAudio > 0 && !ObjectUtils.isEmpty(dstPortForAudio) || (dstPortForVideo > 0 && !ObjectUtils.isEmpty(dstIpForVideo))))) { if (!((dstPortForAudio > 0 && !ObjectUtils.isEmpty(dstPortForAudio) || (dstPortForVideo > 0 && !ObjectUtils.isEmpty(dstIpForVideo))))) {
throw new ControllerException(ErrorCode.ERROR400.getCode(), "至少应该存在一组音频或视频发送参数"); throw new ControllerException(ErrorCode.ERROR400.getCode(), "至少应该存在一组音频或视频发送参数");
} }