Improve recording waveform speed + query permissions (by Jose)

This commit is contained in:
Koper
2023-07-26 16:38:54 +07:00
parent 499edd665b
commit 2420e18ba3
3 changed files with 123 additions and 38 deletions

View File

@@ -6,23 +6,11 @@ import useWebRTC from "./components/webrtc.js";
import "../public/button.css";
const App = () => {
const [isRecording, setIsRecording] = useState(false);
const [stream, setStream] = useState(null);
const handleRecord = (recording) => {
setIsRecording(recording);
if (recording) {
navigator.mediaDevices
.getUserMedia({ audio: true })
.then(setStream)
.catch((err) => console.error(err));
} else if (!recording && serverData.peer) {
serverData.peer.send(JSON.stringify({ cmd: "STOP" }));
}
};
const serverData = useWebRTC(stream, setIsRecording);
// This is where you'd send the stream and receive the data from the server.
// transcription, summary, etc
const serverData = useWebRTC(stream, setIsRecording);
return (
<div className="flex flex-col items-center h-[100svh]">
@@ -33,8 +21,6 @@ const App = () => {
<Recorder setStream={setStream} serverData={serverData} />
<Dashboard
isRecording={isRecording}
onRecord={(recording) => handleRecord(recording)}
transcriptionText={serverData.text ?? "(No transcription yet)"}
finalSummary={serverData.finalSummary}
topics={serverData.topics ?? []}