From f3ea07bdcd722d667e16b7a880f41a30b9374732 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期五, 14 六月 2024 17:03:55 +0800
Subject: [PATCH] 调整转码后的流的输出位置

---
 src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java             |   11 +++++++++++
 src/main/java/com/genersoft/iot/vmp/vmanager/bean/StreamContent.java   |   14 ++++++++++++++
 src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java |   12 ++++++++----
 src/main/resources/application.yml                                     |    2 +-
 4 files changed, 34 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java b/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java
index 979f54a..2d94034 100644
--- a/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java
+++ b/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java
@@ -83,6 +83,9 @@
     @Schema(description = "鏄惁鏆傚仠锛堝綍鍍忓洖鏀句娇鐢級")
     private boolean pause;
 
+    @Schema(description = "杞爜鍚庣殑瑙嗛娴�")
+    private StreamInfo transcodeStream;
+
     public void setFlv(StreamURL flv) {
         this.flv = flv;
     }
@@ -521,6 +524,14 @@
         this.transactionInfo = transactionInfo;
     }
 
+    public StreamInfo getTranscodeStream() {
+        return transcodeStream;
+    }
+
+    public void setTranscodeStream(StreamInfo transcodeStream) {
+        this.transcodeStream = transcodeStream;
+    }
+
     @Override
     public StreamInfo clone() {
         StreamInfo instance = null;
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java
index ead5052..d68261b 100755
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java
@@ -95,10 +95,6 @@
         if (addr == null) {
             addr = mediaInfo.getStreamIp();
         }
-        if (!"broadcast".equalsIgnoreCase(app) && !ObjectUtils.isEmpty(mediaInfo.getTranscodeSuffix()) && !"null".equalsIgnoreCase(mediaInfo.getTranscodeSuffix())) {
-            stream = stream + "_" + mediaInfo.getTranscodeSuffix();
-//            streamInfoResult.setStream(stream);
-        }
 
         streamInfoResult.setIp(addr);
         streamInfoResult.setMediaServerId(mediaInfo.getId());
@@ -112,6 +108,14 @@
         streamInfoResult.setRtc(addr, mediaInfo.getHttpPort(),mediaInfo.getHttpSSlPort(), app,  stream, callIdParam, isPlay);
 
         streamInfoResult.setTracks(tracks);
+
+        if (!"broadcast".equalsIgnoreCase(app) && !ObjectUtils.isEmpty(mediaInfo.getTranscodeSuffix()) && !"null".equalsIgnoreCase(mediaInfo.getTranscodeSuffix())) {
+            String newStream = stream + "_" + mediaInfo.getTranscodeSuffix();
+            mediaInfo.setTranscodeSuffix(null);
+            StreamInfo transcodeStreamInfo = getStreamInfoByAppAndStream(mediaInfo, app, newStream, tracks, addr, callId, isPlay);
+            streamInfoResult.setTranscodeStream(transcodeStreamInfo);
+        }
+
         return streamInfoResult;
     }
 }
diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/bean/StreamContent.java b/src/main/java/com/genersoft/iot/vmp/vmanager/bean/StreamContent.java
index 4974209..f985738 100755
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/bean/StreamContent.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/bean/StreamContent.java
@@ -97,6 +97,9 @@
     @Schema(description = "鏂囦欢涓嬭浇鍦板潃锛堝綍鍍忎笅杞戒娇鐢級")
     private DownloadFileInfo downLoadFilePath;
 
+    @Schema(description = "杞爜鍚庣殑瑙嗛娴�")
+    private StreamContent transcodeStream;
+
     private double progress;
 
     public StreamContent(StreamInfo streamInfo) {
@@ -178,6 +181,17 @@
         if (streamInfo.getDownLoadFilePath() != null) {
             this.downLoadFilePath = streamInfo.getDownLoadFilePath();
         }
+        if (streamInfo.getTranscodeStream() != null) {
+            this.transcodeStream = new StreamContent(streamInfo.getTranscodeStream());
+        }
+    }
+
+    public StreamContent getTranscodeStream() {
+        return transcodeStream;
+    }
+
+    public void setTranscodeStream(StreamContent transcodeStream) {
+        this.transcodeStream = transcodeStream;
     }
 
     public String getApp() {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 3f47844..ddb05de 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -2,4 +2,4 @@
   application:
     name: wvp
   profiles:
-    active: local
\ No newline at end of file
+    active: local271
\ No newline at end of file

--
Gitblit v1.8.0