aboutsummaryrefslogtreecommitdiff
path: root/client-web
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2023-09-08 17:44:44 +0200
committermetamuffin <metamuffin@disroot.org>2023-09-08 17:44:44 +0200
commit7351017d221b3fb5d4e20836e88be66bf19f4fa5 (patch)
treee612ec5c45edf39066b50016998b64bcc6343c08 /client-web
parent2ae6c32e19f364f1932ed918bebf0e708a4b70da (diff)
downloadkeks-meet-7351017d221b3fb5d4e20836e88be66bf19f4fa5.tar
keks-meet-7351017d221b3fb5d4e20836e88be66bf19f4fa5.tar.bz2
keks-meet-7351017d221b3fb5d4e20836e88be66bf19f4fa5.tar.zst
fix set remote desc in stable state
Diffstat (limited to 'client-web')
-rw-r--r--client-web/source/resource/track.ts4
-rw-r--r--client-web/source/user/remote.ts3
2 files changed, 3 insertions, 4 deletions
diff --git a/client-web/source/resource/track.ts b/client-web/source/resource/track.ts
index d0c56c7..9c337c1 100644
--- a/client-web/source/resource/track.ts
+++ b/client-web/source/resource/track.ts
@@ -74,10 +74,8 @@ export function new_local_track(info: ProvideInfo, track: TrackHandle, ...extra_
function create_track_display(target: HTMLElement, track: TrackHandle): HTMLElement {
const is_video = track.kind == "video"
const is_audio = track.kind == "audio"
-
+
const stream = new MediaStream([track.track])
-
-
const media_el = is_video
? document.createElement("video")
: document.createElement("audio")
diff --git a/client-web/source/user/remote.ts b/client-web/source/user/remote.ts
index b651964..f6b64ea 100644
--- a/client-web/source/user/remote.ts
+++ b/client-web/source/user/remote.ts
@@ -158,7 +158,8 @@ export class RemoteUser extends User {
async on_answer(answer: string) {
log("webrtc", `got answer: ${this.display_name}`, { answer })
const answer_description = new RTCSessionDescription({ sdp: answer, type: "answer" })
- await this.pc.setRemoteDescription(answer_description)
+ if (this.pc.signalingState == "have-local-offer") // TODO why is this even necessary?
+ await this.pc.setRemoteDescription(answer_description)
this.negotiation_busy = false
}