Spaces:
Running
on
T4
Running
on
T4
Mark Duppenthaler
commited on
Commit
•
a29f052
1
Parent(s):
5aff120
Merge
Browse files
streaming-react-app/src/StreamingInterface.tsx
CHANGED
@@ -152,7 +152,6 @@ export default function StreamingInterface() {
|
|
152 |
useState<StreamingStatus>('stopped');
|
153 |
|
154 |
const isStreamConfiguredRef = useRef<boolean>(false);
|
155 |
-
|
156 |
const [hasMaxSpeakers, setHasMaxSpeakers] = useState<boolean>(false);
|
157 |
|
158 |
const [outputMode, setOutputMode] = useState<SupportedOutputMode>('s2s&t');
|
@@ -167,6 +166,9 @@ export default function StreamingInterface() {
|
|
167 |
|
168 |
// Dynamic Params:
|
169 |
const [targetLang, setTargetLang] = useState<string | null>(null);
|
|
|
|
|
|
|
170 |
|
171 |
const [serverDebugFlag, setServerDebugFlag] = useState<boolean>(
|
172 |
debugParam ?? false,
|
@@ -248,6 +250,7 @@ export default function StreamingInterface() {
|
|
248 |
setAgent((prevAgent) => {
|
249 |
if (prevAgent?.name !== newAgent?.name) {
|
250 |
setTargetLang(newAgent?.targetLangs[0] ?? null);
|
|
|
251 |
}
|
252 |
return newAgent;
|
253 |
});
|
@@ -424,6 +427,7 @@ export default function StreamingInterface() {
|
|
424 |
// available before actually configuring and starting the stream
|
425 |
const fullDynamicConfig: DynamicConfig = {
|
426 |
targetLanguage: targetLang,
|
|
|
427 |
};
|
428 |
|
429 |
await onSetDynamicConfig(fullDynamicConfig);
|
@@ -753,7 +757,7 @@ export default function StreamingInterface() {
|
|
753 |
<div className="header-container-sra">
|
754 |
<div>
|
755 |
<Typography variant="body2" sx={{color: '#65676B'}}>
|
756 |
-
Welcome! This space is locked to one speaker at a time, please duplicate the space <a target="_blank" rel="noopener noreferrer" href="https://huggingface.co/spaces/facebook/seamless-streaming?duplicate=true">here</a>. Unset the environment variable `LOCK_SERVER_COMPLETELY
|
757 |
<br/>
|
758 |
In your duplicated space, join a room as speaker or listener (or both), and share the
|
759 |
room code to invite listeners.
|
@@ -909,6 +913,28 @@ export default function StreamingInterface() {
|
|
909 |
spacing={1}
|
910 |
alignItems="flex-start"
|
911 |
sx={{flexGrow: 1}}>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
912 |
{isListener && (
|
913 |
<Box
|
914 |
sx={{
|
@@ -1090,8 +1116,6 @@ export default function StreamingInterface() {
|
|
1090 |
</Alert>
|
1091 |
</div>
|
1092 |
)}
|
1093 |
-
|
1094 |
-
|
1095 |
{serverState != null && hasMaxSpeakers && (
|
1096 |
<div>
|
1097 |
<Alert severity="error">
|
|
|
152 |
useState<StreamingStatus>('stopped');
|
153 |
|
154 |
const isStreamConfiguredRef = useRef<boolean>(false);
|
|
|
155 |
const [hasMaxSpeakers, setHasMaxSpeakers] = useState<boolean>(false);
|
156 |
|
157 |
const [outputMode, setOutputMode] = useState<SupportedOutputMode>('s2s&t');
|
|
|
166 |
|
167 |
// Dynamic Params:
|
168 |
const [targetLang, setTargetLang] = useState<string | null>(null);
|
169 |
+
const [enableExpressive, setEnableExpressive] = useState<boolean | null>(
|
170 |
+
null,
|
171 |
+
);
|
172 |
|
173 |
const [serverDebugFlag, setServerDebugFlag] = useState<boolean>(
|
174 |
debugParam ?? false,
|
|
|
250 |
setAgent((prevAgent) => {
|
251 |
if (prevAgent?.name !== newAgent?.name) {
|
252 |
setTargetLang(newAgent?.targetLangs[0] ?? null);
|
253 |
+
setEnableExpressive(null);
|
254 |
}
|
255 |
return newAgent;
|
256 |
});
|
|
|
427 |
// available before actually configuring and starting the stream
|
428 |
const fullDynamicConfig: DynamicConfig = {
|
429 |
targetLanguage: targetLang,
|
430 |
+
expressive: enableExpressive,
|
431 |
};
|
432 |
|
433 |
await onSetDynamicConfig(fullDynamicConfig);
|
|
|
757 |
<div className="header-container-sra">
|
758 |
<div>
|
759 |
<Typography variant="body2" sx={{color: '#65676B'}}>
|
760 |
+
Welcome! This space is locked to one speaker at a time, please duplicate the space <a target="_blank" rel="noopener noreferrer" href="https://huggingface.co/spaces/facebook/seamless-streaming?duplicate=true">here</a>. Unset the environment variable `LOCK_SERVER_COMPLETELY`.
|
761 |
<br/>
|
762 |
In your duplicated space, join a room as speaker or listener (or both), and share the
|
763 |
room code to invite listeners.
|
|
|
913 |
spacing={1}
|
914 |
alignItems="flex-start"
|
915 |
sx={{flexGrow: 1}}>
|
916 |
+
{currentAgent?.dynamicParams?.includes(
|
917 |
+
'expressive',
|
918 |
+
) && (
|
919 |
+
<FormControlLabel
|
920 |
+
control={
|
921 |
+
<Switch
|
922 |
+
checked={enableExpressive ?? false}
|
923 |
+
onChange={(
|
924 |
+
event: React.ChangeEvent<HTMLInputElement>,
|
925 |
+
) => {
|
926 |
+
const newValue = event.target.checked;
|
927 |
+
setEnableExpressive(newValue);
|
928 |
+
onSetDynamicConfig({
|
929 |
+
expressive: newValue,
|
930 |
+
});
|
931 |
+
}}
|
932 |
+
/>
|
933 |
+
}
|
934 |
+
label="Expressive"
|
935 |
+
/>
|
936 |
+
)}
|
937 |
+
|
938 |
{isListener && (
|
939 |
<Box
|
940 |
sx={{
|
|
|
1116 |
</Alert>
|
1117 |
</div>
|
1118 |
)}
|
|
|
|
|
1119 |
{serverState != null && hasMaxSpeakers && (
|
1120 |
<div>
|
1121 |
<Alert severity="error">
|