From d270fd3d34bd5a7bf02302fba1e92a4be000f8c9 Mon Sep 17 00:00:00 2001 From: Kimberlee Johnson Date: Mon, 29 Nov 2021 16:01:00 -0800 Subject: [PATCH] Updated handleRecordingStarted and fixed typo --- custom/recording/components/RecordingModal.js | 2 +- custom/recording/contexts/RecordingProvider.js | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/custom/recording/components/RecordingModal.js b/custom/recording/components/RecordingModal.js index 1725f4d..11ae3fa 100644 --- a/custom/recording/components/RecordingModal.js +++ b/custom/recording/components/RecordingModal.js @@ -94,7 +94,7 @@ export const RecordingModal = () => { {!enableRecording ? ( Recording is not enabled for this room (or your browser does not - support it.) Please enabled recording when creating the room or via + support it.) Please enable recording when creating the room or via the Daily dashboard. ) : ( diff --git a/custom/recording/contexts/RecordingProvider.js b/custom/recording/contexts/RecordingProvider.js index a56a0e3..c34f56c 100644 --- a/custom/recording/contexts/RecordingProvider.js +++ b/custom/recording/contexts/RecordingProvider.js @@ -177,13 +177,25 @@ export const RecordingProvider = ({ children }) => { */ const handleRecordingStarted = useCallback( (event) => { + console.log('RECORDING'); + console.log(event); + if (recordingState === RECORDING_RECORDING) return; + setRecordingState(RECORDING_RECORDING); if (event.local) { // Recording started locally, either through UI or programmatically setIsRecordingLocally(true); if (!recordingStartedDate) setRecordingStartedDate(new Date()); + if (event.type === 'output-byte-stream') { + const { readable, writable } = new TransformStream({ + transform: (chunk, ctrl) => { + chunk.arrayBuffer().then((b) => ctrl.enqueue(new Uint8Array(b))); + }, + }); + window.writer = writable.getWriter(); + readable.pipeTo(window.streamSaver.createWriteStream('test-vid.mp4')); + } } - setRecordingState(RECORDING_RECORDING); }, [recordingState, recordingStartedDate] );