roomkit-web-vue3
Version:
<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,
31 lines (30 loc) • 1.18 kB
JavaScript
import TUIRoomEngine__default, { TUIRoomDeviceMangerEvents } from "@tencentcloud/tuiroom-engine-js";
import useVideoDeviceManagerState from "./videoDeviceManagerState.mjs";
import useVideoDeviceManager from "./videoDeviceManager.mjs";
import { onDeviceChanged, initMediaDeviceList } from "./videoDeviceListHandler.mjs";
import useDeviceManager from "../../../hooks/useDeviceManager.mjs";
const deviceManager = useDeviceManager();
const { localVideoQuality, isLocalMirror } = useVideoDeviceManagerState();
const { camera } = useVideoDeviceManager();
TUIRoomEngine__default.once("ready", () => {
var _a;
(_a = deviceManager.instance) == null ? void 0 : _a.on(
TUIRoomDeviceMangerEvents.onDeviceChanged,
onDeviceChanged
);
initMediaDeviceList();
camera.updateVideoQuality({ quality: localVideoQuality.value });
camera.switchMirror({ mirror: isLocalMirror.value });
});
function useVideoDeviceState() {
const videoDeviceManagerState = useVideoDeviceManagerState();
const videoDeviceManager = useVideoDeviceManager();
return {
...videoDeviceManagerState,
...videoDeviceManager
};
}
export {
useVideoDeviceState as default,
useVideoDeviceState
};