Skip to content

Commit

Permalink
fix: combine tracks
Browse files Browse the repository at this point in the history
  • Loading branch information
varshith15 committed Dec 23, 2024
1 parent 6dad03a commit 7035b03
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 5 deletions.
2 changes: 1 addition & 1 deletion server/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ def __init__(self, track: MediaStreamTrack):

async def recv(self):
frame = await self.track.recv()
return await self.pipeline(frame)
return frame

# async def recv(self):
# frame = await self.source.recv()
Expand Down
15 changes: 11 additions & 4 deletions ui/src/components/webcam.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,21 @@ function StreamCanvas({
const videoRef = useRef<HTMLVideoElement | null>(null);

useEffect(() => {
if (!stream) return;

const canvas = canvasRef.current!;
const outputStream = canvas.captureStream(30);
onStreamReady(outputStream);
const videoOnlyStream = canvas.captureStream(frameRate);
const audioTracks = stream.getAudioTracks();
const combinedStream = new MediaStream([
...videoOnlyStream.getVideoTracks(),
...audioTracks,
]);
onStreamReady(combinedStream);

return () => {
outputStream.getTracks().forEach((track) => track.stop());
combinedStream.getTracks().forEach((track) => track.stop());
};
}, [onStreamReady, frameRate]);
}, [stream, frameRate, onStreamReady]);

// Set up canvas animation loop
useEffect(() => {
Expand Down

0 comments on commit 7035b03

Please sign in to comment.