Browse Source

Merge branch 'v5.9.3sdk' of http://192.168.32.253:3000/Software/android-cloud-H5 into v5.9.3sdk

t_finder 3 weeks ago
parent
commit
3f8eb55899

+ 1 - 1
static/rtcEngine/WXtrialInterfaceCopy.html

@@ -83,7 +83,7 @@
                         <div>
                             <div v-for="item in definitionList" :key="item.key"
                                 :class="['tc drawer-item mb-15', {active: definitionValue === item.name}]"
-                                @click.prevent="definitionFun(item.name)">
+                                @click.prevent="definitionFun(item)">
                                 {{item.name}}
                             </div>
                             <!-- <div class="tc drawer-item mb-15" @click.prevent="resolutionRatio">

File diff suppressed because it is too large
+ 1 - 1
static/rtcEngine/config/js/SDK.min.js


+ 37 - 10
static/rtcEngine/js/WXtrialInterfaceCopy.js

@@ -153,14 +153,17 @@ const app = new Vue({
         levitatedSphereVisible: false,
         // 清晰度数据
         definitionList: [{
+            name: '自动',
+            value: 2800
+        }, {
             name: '高清',
             value: 2800
         }, {
             name: '标清',
-            value: 2200,
+            value: 1500,
         }, {
-            name: '极速',
-            value: 1800,
+            name: '流畅',
+            value: 1000,
         }],
         // 选中的清晰度
         definitionValue: '标清',
@@ -275,7 +278,6 @@ const app = new Vue({
             this.levitatedSpherePositionData = levitatedSpherePositionData ? JSON.parse(levitatedSpherePositionData) : { right: '15px', top: '15px' }
             // 清晰度
             this.definitionValue = definitionValue ? definitionValue : '标清'
-            console.log("清晰度", this.definitionValue)
             // 获取参数
             this.parametersData = getParameters()
             let { token, merchantSign } = this.parametersData
@@ -412,6 +414,12 @@ const app = new Vue({
             engine.on('NETWORK_STATS', (r) => {
                 // console.log("网络信息统计", r);
             });
+            engine.on('RECEIVE_BITRATE_STATUS', (r) => {
+                // code 100251 成功
+                // code 100261 失败
+                // code 100262 输入码率值异常
+                // console.log("设置码率信息", r);
+            });
 
             // 解码状态
             engine.on("DECODING_STATUS", (r) => {
@@ -483,15 +491,34 @@ const app = new Vue({
             localStorage.setItem('levitatedSpherePositionData', JSON.stringify(this.levitatedSpherePositionData))
         },
 
-        // 清晰度
-        definitionFun(value) {
-            this.definitionValue = value
-            this.engine && this.engine.setMaxBitrate(value)
+        // 清晰度 画质
+        definitionFun(item) {
+            this.definitionValue = item.name
+            const setBitrate = (item) => {
+                const encoderConfig = {
+                    '自动': { width: 720, height: 1280, fps: 30 },
+                    '高清': { width: 720, height: 1280, fps: 30 },
+                    '标清': { width: 540, height: 960, fps: 25 },
+                    '流畅': { width: 450, height: 800, fps: 20 }
+                };
+
+                // 设置码率和是否允许自动
+                this.engine?.setCustomBitrate(item.value, item.name === '自动');
+
+                // 获取并设置编码器分辨率和帧率
+                const config = encoderConfig[item.name];
+                if (config) {
+                    this.engine?.setEncoderSize(config);
+                }
+            };
+
+            // 设置自动码率
+            setBitrate(item);
 
             // 设置日志参数 推流质量
-            logReportObj.setParams({ imageQuality: value });
+            logReportObj.setParams({ imageQuality: item.name });
 
-            localStorage.setItem('definitionValue', value)
+            localStorage.setItem('definitionValue', item.name)
             this.levitatedSphereVisible = false
         },