Fix/canvas invalid state - #1148
Conversation
|
Someone is attempting to deploy a commit to the itzzavdhesh's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Warning Review limit reached
Next review available in: 11 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (2)
📒 Files selected for processing (88)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
✍️ DCO Sign-off NeededHey @desireddymohithreddy0925! 👋 One or more commits in this PR are missing a Warning
How to fix: For the latest commit: git commit --amend --signoff
git push --force-with-leaseFor multiple commits, replace git rebase --signoff HEAD~N
git push --force-with-leaseThis comment will update automatically after you push. 🤖 VoiceForge Automation · Updates automatically on edits |
🛠️ PR Needs UpdatesHey @desireddymohithreddy0925! 👋 A few things need fixing before a mentor can review this PR. Warning
How to fix:
Once fixed, the workflow re-runs automatically and pings the right mentor. 🤖 VoiceForge Automation · Updates automatically on edits |
There was a problem hiding this comment.
Review completed against the latest diff
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
|
Hi @desireddymohithreddy0925 Your PR has Branch Conflict please resolve them and ping me after! Thanks |
❌ Merge Policy ViolationCaution Unauthorized Merge — Pull request #1148 was merged by @Itzzavdheshh (mentor) without any review on record. VoiceForge guidelines require contributors/mentors to submit at least one review (approval, comment, or changes requested) before merging a pull request to ensure code quality and point-tracking integrity. 📊 Violation Summary
🤖 VoiceForge Automation |
🎊 PR Merged SuccessfullyHey @desireddymohithreddy0925! 👋 Congratulations and thank you for your contribution to VoiceForge! Note 🔗 Linked issue(s): #747 · ✅ Marked as merged and complete Maintainers may still handle final cleanup, release notes, or follow-up tracking after the merge. 🤖 VoiceForge Automation · Updates automatically on edits |
🐛 Bug Fix Description
This PR fixes a critical crash in the Virtual Camera's render loop where abruptly disconnecting a webcam (or losing hardware priority) caused continuous
InvalidStateErrorexceptions, spiking CPU usage and flooding the browser console.Fixes #747
💡 Proposed Solution
video.readyState === video.HAVE_ENOUGH_DATA(4) before callingcontext.drawImage(video).✅ Acceptance Criteria
video.readyStateproperty before attempting to draw.🌱 Contributor Checklist
Summary by cubic
Fixes a crash in the virtual camera render loop by guarding canvas draws and scheduling frames with requestVideoFrameCallback, preventing InvalidStateError spikes when the webcam disconnects. Also adds Docker-based development and CI lint/format checks to improve reliability and DX.
Bug Fixes
context.drawImage(video)behindvideo.readyState === video.HAVE_ENOUGH_DATA; skip/pause when below 4 and resume cleanly on reconnect.New Features
docker-compose.ymlfor local dev; enable Vitehost: true.eslint,prettier,.editorconfig,.lintstagedrc, and a GitHub Action; apply Prettier formatting across the repo.@gradio/clienttype definitions and tighten voice clone/speak flow with cache checks and clearer errors.Written for commit 6a2403b. Summary will update on new commits.