From af94347100b4524ff8053dc7e2ec6267bf38a6dc Mon Sep 17 00:00:00 2001 From: acgist <289547414@qq.com> Date: Sat, 23 Sep 2023 10:59:58 +0800 Subject: [PATCH] =?UTF-8?q?[*]=20=E6=97=A5=E5=B8=B8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- taoyao-client-media/src/Taoyao.js | 19 ++++---- taoyao-client-web/src/components/Taoyao.js | 47 +++++++++---------- .../MediaConsumerSetPriorityProtocol.java | 1 + 3 files changed, 33 insertions(+), 34 deletions(-) diff --git a/taoyao-client-media/src/Taoyao.js b/taoyao-client-media/src/Taoyao.js index aa0c59d..bd05941 100644 --- a/taoyao-client-media/src/Taoyao.js +++ b/taoyao-client-media/src/Taoyao.js @@ -1080,23 +1080,22 @@ class Taoyao { * @param {*} body 消息主体 */ async mediaConsumerSetPriority(message, body) { - const me = this; const { roomId, consumerId, priority, } = body; - const room = me.rooms.get(roomId); + const room = this.rooms.get(roomId); const consumer = room?.consumers.get(consumerId); - if(consumer) { - console.debug("设置消费者优先级", consumerId, priority); - if(priority <= 0 || priority >= 256) { - await consumer.unsetPriority(); - } else { - await consumer.setPriority(priority); - } + if(!consumer) { + console.debug("设置消费者优先级(消费者无效)", roomId, consumerId); + return; + } + console.debug("设置消费者优先级", consumerId, priority); + if(priority <= 0 || priority >= 256) { + await consumer.unsetPriority(); } else { - console.debug("设置消费者优先级(无效)", consumerId); + await consumer.setPriority(priority); } } diff --git a/taoyao-client-web/src/components/Taoyao.js b/taoyao-client-web/src/components/Taoyao.js index a143923..fa0287f 100644 --- a/taoyao-client-web/src/components/Taoyao.js +++ b/taoyao-client-web/src/components/Taoyao.js @@ -1587,11 +1587,11 @@ class Taoyao extends RemoteClient { const me = this; const consumer = me.consumers.get(consumerId); if(!consumer) { - me.platformError("请求关键帧消费者无效"); + me.platformError("消费者无效"); return; } if(consumer.kind !== "video") { - me.platformError("只能请求视频消费者关键帧"); + me.platformError("只能请求视频消费者"); return; } me.push(protocol.buildMessage("media::consumer::request::key::frame", { @@ -1662,11 +1662,11 @@ class Taoyao extends RemoteClient { const me = this; const consumer = me.consumers.get(consumerId); if(!consumer) { - me.platformError("修改最佳空间层和时间层消费者无效"); + me.platformError("消费者无效"); return; } if(consumer.kind !== "video") { - me.platformError("只能修改视频消费者最佳空间层和时间层"); + me.platformError("只能修改视频消费者"); return; } me.push(protocol.buildMessage("media::consumer::set::preferred::layers", { @@ -1677,26 +1677,6 @@ class Taoyao extends RemoteClient { })); } - /** - * 设置消费者优先级信令 - * - * @param {*} consumerId 消费者ID - * @param {*} priority 优先级:1~255 - */ - mediaConsumerSetPriority(consumerId, priority) { - const me = this; - const consumer = me.consumers.get(consumerId); - if(!consumer) { - me.platformError("设置消费者优先级消费者无效"); - return; - } - me.push(protocol.buildMessage("media::consumer::set::priority", { - roomId: me.roomId, - consumerId, - priority, - })); - } - /** * 消费媒体信令 * @@ -1803,6 +1783,25 @@ class Taoyao extends RemoteClient { } } + /** + * 设置消费者优先级信令 + * + * @param {*} consumerId 消费者ID + * @param {*} priority 优先级:1~255 + */ + mediaConsumerSetPriority(consumerId, priority) { + const consumer = this.consumers.get(consumerId); + if(!consumer) { + this.platformError("消费者无效"); + return; + } + this.push(protocol.buildMessage("media::consumer::set::priority", { + priority, + consumerId, + roomId: this.roomId, + })); + } + /** * 查询消费者状态信令 * diff --git a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/media/MediaConsumerSetPriorityProtocol.java b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/media/MediaConsumerSetPriorityProtocol.java index 9870abe..293d696 100644 --- a/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/media/MediaConsumerSetPriorityProtocol.java +++ b/taoyao-signal-server/taoyao-signal/src/main/java/com/acgist/taoyao/signal/protocol/media/MediaConsumerSetPriorityProtocol.java @@ -17,6 +17,7 @@ import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter; */ @Protocol @Description( + memo = "如果优先级不在范围内表示取消优先级设置", body = """ { "roomId" : "房间ID",