decord/source/modules/guild_rooms/GuildRoomSpatialAudioManager.tsx

119 lines
4.8 KiB
TypeScript
Raw Normal View History

// Module ID: 17488
// Function ID: 17489
// Name: GuildRoomSpatialAudioManager
// Dependencies: [32, 4552, 1236, 502, 1957, 1908, 4659, 4794, 7221, 17489, 9218, 4836, 2]
2026-07-20 16:05:17 +00:00
// Module 17488 (GuildRoomSpatialAudioManager)
import AudioActionCreatorsDefault from "AudioActionCreators" /* 9218 */;
import GuildRoomSpatialAudio from "GuildRoomSpatialAudio" /* 17489 */;
import _slicedToArray from "module_32" /* 32 */;
import ExperimentStore from "ExperimentStore" /* 4552 */;
import ApexExperimentStore from "ApexExperimentStore" /* 1236 */;
import AuthenticationStore from "AuthenticationStore" /* 502 */;
import ChannelStore from "ChannelStore" /* 1957 */;
import MediaEngineStore from "MediaEngineStore" /* 1908 */;
import RTCConnectionStore from "RTCConnectionStore" /* 4659 */;
import GuildRoomStore from "GuildRoomStore" /* 4794 */;
import AutomaticLifecycleManager from "AutomaticLifecycleManager" /* 7221 */;
2026-07-23 10:11:24 +00:00
const GuildRoomsExperiment = tmp(4836);
require = fn;
2026-07-29 08:29:29 +00:00
class GuildRoomSpatialAudioManager extends tmp2 {
constructor() {
applyArgumentsResult = HermesBuiltin.applyArguments(new.target, new.target);
closure_0 = applyArgumentsResult;
applyArgumentsResult.actions = {
AUDIO_SET_AUDIO_MIXER_SETTINGS() {
return applyArgumentsResult.apply();
},
RTC_CONNECTION_STATE() {
return applyArgumentsResult.apply();
},
RTC_CONNECTION_USERS_MERGED() {
return applyArgumentsResult.apply();
},
MEDIA_SESSION_JOINED() {
return applyArgumentsResult.apply();
},
GUILD_ROOM_CONNECT() {
return applyArgumentsResult.apply();
},
GUILD_ROOM_UPDATE() {
return applyArgumentsResult.apply();
},
GUILD_ROOM_LOCAL_UPDATE() {
return applyArgumentsResult.apply();
},
GUILD_ROOM_DISCONNECT() {
return applyArgumentsResult.apply();
}
};
applyArgumentsResult.reapplyForExperimentUpdate = function reapplyForExperimentUpdate() {
if (GuildRoomSpatialAudio.GUILD_ROOM_SPATIAL_AUDIO_ENABLED) {
const audioMixerSettings = MediaEngineStore.getAudioMixerSettings();
const result = AudioActionCreatorsDefault.setAudioMixerSettings(audioMixerSettings);
2026-08-25 06:04:03 +00:00
applyArgumentsResult.apply();
}
2026-07-29 08:29:29 +00:00
};
return applyArgumentsResult;
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
const prototype = GuildRoomSpatialAudioManager.prototype;
prototype["_initialize"] = function _initialize() {
const result = new Map().set(ExperimentStore, this.reapplyForExperimentUpdate);
this.stores = result.set(ApexExperimentStore, this.reapplyForExperimentUpdate);
2026-07-29 08:29:29 +00:00
};
prototype["_terminate"] = function _terminate() {
};
prototype["isLivingRoomAvailable"] = function isLivingRoomAvailable() {
if (GuildRoomSpatialAudio.GUILD_ROOM_SPATIAL_AUDIO_ENABLED) {
const guildId = RTCConnectionStore.getGuildId();
2026-08-25 06:04:03 +00:00
let interactionsEnabled = null != guildId;
if (interactionsEnabled) {
const obj = { guildId, location: "GuildRoomSpatialAudioManager" };
interactionsEnabled = GuildRoomsExperiment.getGuildRoomsConfig(obj, { autoTrackExposure: false }).interactionsEnabled;
const tmpResult = GuildRoomsExperiment;
2026-08-25 06:04:03 +00:00
}
return interactionsEnabled;
} else {
return false;
2026-07-29 08:29:29 +00:00
}
};
prototype["apply"] = function apply() {
if (MediaEngineStore.getAudioMixerSettings().enabled) {
const channelId = RTCConnectionStore.getChannelId();
2026-07-29 08:29:29 +00:00
if (null != channelId) {
const self = this;
if (this.isLivingRoomAvailable()) {
const channel = ChannelStore.getChannel(channelId);
2026-07-29 08:29:29 +00:00
let isGuildStageVoiceResult;
if (channel != null) {
isGuildStageVoiceResult = channel.isGuildStageVoice();
}
if (!isGuildStageVoiceResult) {
const obj2 = { users: GuildRoomStore.getRoomUsers(channelId), currentUserId: AuthenticationStore.getId(), channelId };
_require = require("GuildRoomSpatialAudio").computeLivingRoomWorldPoints(obj2);
const mediaEngine = MediaEngineStore.getMediaEngine();
2026-07-29 08:29:29 +00:00
mediaEngine.eachConnection((setUserPosition) => {
const entries = Object.entries(closure_0);
2026-07-29 08:29:29 +00:00
while (tmp2 !== undefined) {
let tmp5 = _slicedToArray(tmp3, 2);
2026-07-29 08:29:29 +00:00
[tmp6, tmp7] = tmp5;
let obj = GuildRoomSpatialAudio;
2026-07-29 08:29:29 +00:00
let setUserPositionResult = setUserPosition.setUserPosition(tmp6, obj.livingRoomWorldPointToMediaEnginePoint(tmp7));
continue;
}
});
const obj3 = require("GuildRoomSpatialAudio");
2026-07-29 08:29:29 +00:00
}
}
}
}
};
const guildRoomSpatialAudioManager = new GuildRoomSpatialAudioManager();
const size = fn(2);
let result = size.fileFinishedImporting("modules/guild_rooms/GuildRoomSpatialAudioManager.tsx");
2026-07-20 16:05:17 +00:00
2026-07-29 08:29:29 +00:00
export default guildRoomSpatialAudioManager;