mirror of
https://github.com/fluxerapp/fluxer.git
synced 2026-09-02 21:04:06 +03:00
fix(voice): honour the codec preference in fallback selection (#2390)
This commit is contained in:
@@ -549,7 +549,11 @@ class ScreenShareCodecNegotiation {
|
||||
selector: (preference: CodecPreference) => VideoCodec,
|
||||
preference: CodecPreference,
|
||||
): VideoCodec {
|
||||
if (this.selectedCodec && this.canUseSelectedCodecForCurrentParticipants(this.selectedCodec)) {
|
||||
if (
|
||||
preference === 'auto' &&
|
||||
this.selectedCodec &&
|
||||
this.canUseSelectedCodecForCurrentParticipants(this.selectedCodec)
|
||||
) {
|
||||
return this.selectedCodec;
|
||||
}
|
||||
if (this.localCodecs.length === 0) this.localCodecs = buildLocalCodecAdvertisements();
|
||||
@@ -560,7 +564,8 @@ class ScreenShareCodecNegotiation {
|
||||
unknownParticipants,
|
||||
getScreenShareCodecPreferenceOrder(preference),
|
||||
);
|
||||
return negotiated.codec ?? selector('auto');
|
||||
if (getEncodeSet(this.localCodecs).has(negotiated.codec)) return negotiated.codec;
|
||||
return selector(preference);
|
||||
}
|
||||
|
||||
private getRemoteCodecInputs(room: Room | null = this.room): {
|
||||
|
||||
Reference in New Issue
Block a user