mirror of
https://github.com/legop3/MultiRoombaRover.git
synced 2026-09-15 17:12:59 -04:00
fixes
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -11,7 +11,7 @@
|
|||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Multi Roomba Rover" />
|
<meta name="apple-mobile-web-app-title" content="Multi Roomba Rover" />
|
||||||
<title>Multi Roomba Rover</title>
|
<title>Multi Roomba Rover</title>
|
||||||
<script type="module" crossorigin src="/assets/index-CyMJCyW9.js"></script>
|
<script type="module" crossorigin src="/assets/index-CVZhRUxX.js"></script>
|
||||||
<link rel="stylesheet" crossorigin href="/assets/index-Bz1ixYh7.css">
|
<link rel="stylesheet" crossorigin href="/assets/index-Bz1ixYh7.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ export default function VideoTile({
|
|||||||
const [restartToken, setRestartToken] = useState(0);
|
const [restartToken, setRestartToken] = useState(0);
|
||||||
const [audioRestartToken, setAudioRestartToken] = useState(0);
|
const [audioRestartToken, setAudioRestartToken] = useState(0);
|
||||||
const [muted, setMuted] = useState(true);
|
const [muted, setMuted] = useState(true);
|
||||||
|
const hasDedicatedAudio = Boolean(audioSessionInfo?.url);
|
||||||
const usingSnapshot = videoMode === 'snapshot';
|
const usingSnapshot = videoMode === 'snapshot';
|
||||||
const sensors = telemetryFrame?.sensors;
|
const sensors = telemetryFrame?.sensors;
|
||||||
const { value: audioSettings } = useSettingsNamespace('audio', AUDIO_SETTINGS_DEFAULTS);
|
const { value: audioSettings } = useSettingsNamespace('audio', AUDIO_SETTINGS_DEFAULTS);
|
||||||
@@ -205,7 +206,7 @@ export default function VideoTile({
|
|||||||
|
|
||||||
const attemptUnmute = useCallback(
|
const attemptUnmute = useCallback(
|
||||||
(delay = 0) => {
|
(delay = 0) => {
|
||||||
if (forceMute) return;
|
if (forceMute || hasDedicatedAudio) return;
|
||||||
clearTimeout(unmuteTimer.current);
|
clearTimeout(unmuteTimer.current);
|
||||||
|
|
||||||
const scheduleRetry = () => {
|
const scheduleRetry = () => {
|
||||||
@@ -234,7 +235,7 @@ export default function VideoTile({
|
|||||||
|
|
||||||
unmuteTimer.current = setTimeout(tryPlay, delay);
|
unmuteTimer.current = setTimeout(tryPlay, delay);
|
||||||
},
|
},
|
||||||
[ensurePlayback, forceMute],
|
[ensurePlayback, forceMute, hasDedicatedAudio],
|
||||||
);
|
);
|
||||||
|
|
||||||
useEffect(
|
useEffect(
|
||||||
@@ -400,7 +401,11 @@ export default function VideoTile({
|
|||||||
});
|
});
|
||||||
if (nextStatus === 'playing') {
|
if (nextStatus === 'playing') {
|
||||||
resumeAudioContext();
|
resumeAudioContext();
|
||||||
audioRef.current?.play().catch(() => {});
|
const target = audioRef.current;
|
||||||
|
if (target) {
|
||||||
|
target.muted = false;
|
||||||
|
target.play().catch(() => {});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (['error', 'failed', 'disconnected', 'closed'].includes(nextStatus)) {
|
if (['error', 'failed', 'disconnected', 'closed'].includes(nextStatus)) {
|
||||||
scheduleAudioRestart();
|
scheduleAudioRestart();
|
||||||
@@ -444,6 +449,7 @@ export default function VideoTile({
|
|||||||
const attemptPlay = async () => {
|
const attemptPlay = async () => {
|
||||||
const target = audioRef.current;
|
const target = audioRef.current;
|
||||||
if (!target) return;
|
if (!target) return;
|
||||||
|
target.muted = false;
|
||||||
if (!target.paused && !target.ended) return;
|
if (!target.paused && !target.ended) return;
|
||||||
await resumeAudioContext();
|
await resumeAudioContext();
|
||||||
target
|
target
|
||||||
@@ -550,7 +556,7 @@ export default function VideoTile({
|
|||||||
) : (
|
) : (
|
||||||
<video
|
<video
|
||||||
ref={videoRef}
|
ref={videoRef}
|
||||||
muted={forceMute || muted}
|
muted={forceMute || muted || hasDedicatedAudio}
|
||||||
playsInline
|
playsInline
|
||||||
autoPlay
|
autoPlay
|
||||||
controls={false}
|
controls={false}
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ export const HORN_SETTINGS_DEFAULTS = {
|
|||||||
|
|
||||||
export const AUDIO_SETTINGS_DEFAULTS = {
|
export const AUDIO_SETTINGS_DEFAULTS = {
|
||||||
masterVolume: 1,
|
masterVolume: 1,
|
||||||
alertVolume: 0.3,
|
alertVolume: 0.5,
|
||||||
roverVolume: 1,
|
roverVolume: 1,
|
||||||
autoLevelEnabled: true,
|
autoLevelEnabled: true,
|
||||||
autoLevelMode: 'compressor',
|
autoLevelMode: 'compressor',
|
||||||
|
|||||||
Reference in New Issue
Block a user