Fix full-screen audio
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
This commit is contained in:
parent
0e34f9a464
commit
8b97904144
4 changed files with 99 additions and 14 deletions
|
|
@ -44,10 +44,11 @@ import { UserMenuContainer } from "../UserMenuContainer";
|
|||
import { useRageshakeRequestModal } from "../settings/submit-rageshake";
|
||||
import { RageshakeRequestModal } from "./RageshakeRequestModal";
|
||||
import { useMediaHandler } from "../settings/useMediaHandler";
|
||||
import { useShowInspector } from "../settings/useSetting";
|
||||
import { useShowInspector, useSpatialAudio } from "../settings/useSetting";
|
||||
import { useModalTriggerState } from "../Modal";
|
||||
import { useAudioContext } from "../video-grid/useMediaStream";
|
||||
import { useFullscreen } from "../video-grid/useFullscreen";
|
||||
import { AudioContainer } from "../video-grid/AudioContainer";
|
||||
import { useAudioOutputDevice } from "../video-grid/useAudioOutputDevice";
|
||||
|
||||
const canScreenshare = "getDisplayMedia" in (navigator.mediaDevices ?? {});
|
||||
|
|
@ -108,6 +109,8 @@ export function InCallView({
|
|||
const [layout, setLayout] = useVideoGridLayout(screenshareFeeds.length > 0);
|
||||
const { toggleFullscreen, fullscreenParticipant } = useFullscreen(elementRef);
|
||||
|
||||
const [spatialAudio] = useSpatialAudio();
|
||||
|
||||
const [audioContext, audioDestination, audioRef] = useAudioContext();
|
||||
const { audioOutput } = useMediaHandler();
|
||||
const [showInspector] = useShowInspector();
|
||||
|
|
@ -183,7 +186,6 @@ export function InCallView({
|
|||
key={fullscreenParticipant.id}
|
||||
item={fullscreenParticipant}
|
||||
getAvatar={renderAvatar}
|
||||
audioOutputDevice={audioOutput}
|
||||
audioContext={audioContext}
|
||||
audioDestination={audioDestination}
|
||||
disableSpeakingIndicator={true}
|
||||
|
|
@ -201,7 +203,6 @@ export function InCallView({
|
|||
item={item}
|
||||
getAvatar={renderAvatar}
|
||||
showName={items.length > 2 || item.focused}
|
||||
audioOutputDevice={audioOutput}
|
||||
audioContext={audioContext}
|
||||
audioDestination={audioDestination}
|
||||
disableSpeakingIndicator={items.length < 3}
|
||||
|
|
@ -217,7 +218,6 @@ export function InCallView({
|
|||
items,
|
||||
audioContext,
|
||||
audioDestination,
|
||||
audioOutput,
|
||||
layout,
|
||||
renderAvatar,
|
||||
toggleFullscreen,
|
||||
|
|
@ -235,6 +235,13 @@ export function InCallView({
|
|||
return (
|
||||
<div className={styles.inRoom} ref={elementRef}>
|
||||
<audio ref={audioRef} />
|
||||
{(!spatialAudio || fullscreenParticipant) && (
|
||||
<AudioContainer
|
||||
items={items}
|
||||
audioContext={audioContext}
|
||||
audioDestination={audioDestination}
|
||||
/>
|
||||
)}
|
||||
{!fullscreenParticipant && (
|
||||
<Header>
|
||||
<LeftNav>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue