Commit cb1f1417b622b20e94133d89c6cb7fa9cbe6f4ed
1 parent
0a245c4c
兼容回复的invite 200OK消息中缺少ssrc(y字段)的情况
Showing
1 changed file
with
11 additions
and
1 deletions
src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java
| ... | ... | @@ -314,7 +314,13 @@ public class PlayServiceImpl implements IPlayService { |
| 314 | 314 | if (!device.getStreamMode().equalsIgnoreCase("TCP-ACTIVE")) { |
| 315 | 315 | return; |
| 316 | 316 | } |
| 317 | - String substring = contentString.substring(0, contentString.indexOf("y=")); | |
| 317 | + | |
| 318 | + String substring; | |
| 319 | + if (contentString.indexOf("y=") > 0) { | |
| 320 | + substring = contentString.substring(0, contentString.indexOf("y=")); | |
| 321 | + }else { | |
| 322 | + substring = contentString; | |
| 323 | + } | |
| 318 | 324 | try { |
| 319 | 325 | SessionDescription sdp = SdpFactory.getInstance().createSessionDescription(substring); |
| 320 | 326 | int port = -1; |
| ... | ... | @@ -568,6 +574,10 @@ public class PlayServiceImpl implements IPlayService { |
| 568 | 574 | ResponseEvent responseEvent = (ResponseEvent) eventResult.event; |
| 569 | 575 | String contentString = new String(responseEvent.getResponse().getRawContent()); |
| 570 | 576 | String ssrcInResponse = SipUtils.getSsrcFromSdp(contentString); |
| 577 | + // 兼容回复的消息中缺少ssrc(y字段)的情况 | |
| 578 | + if (ssrcInResponse == null) { | |
| 579 | + ssrcInResponse = ssrcInfo.getSsrc(); | |
| 580 | + } | |
| 571 | 581 | if (ssrcInfo.getSsrc().equals(ssrcInResponse)) { |
| 572 | 582 | // ssrc 一致 |
| 573 | 583 | if (mediaServerItem.isRtpEnable()) { | ... | ... |