Skip to content

Integrate LiveKit Capture - #86

Open
ladvoc wants to merge 6 commits into
mainfrom
ladvoc/integrate-livekit-capture
Open

ladvoc wants to merge 6 commits into
mainfrom
ladvoc/integrate-livekit-capture

Conversation

@ladvoc

@ladvoc ladvoc commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Integrate the new LiveKit Capture crate, allowing the user to publish test tracks using pattern source (logo/gradient) and clock source. This replaces the existing logo track implementation. UI screenshot:

Screenshot 2026-10-08 at 4 17 16 PM

Additional source types will be exposed (e.g., device) as they are available upstream.

@ladvoc
ladvoc requested a review from MaxHeimbrock October 8, 2026 23:21
ladvoc and others added 2 commits October 9, 2026 10:52
Signed-off-by: Jacob Gelman <3182119+ladvoc@users.noreply.github.com>
@MaxHeimbrock
MaxHeimbrock force-pushed the ladvoc/integrate-livekit-capture branch from a578617 to f5110f5 Compare October 9, 2026 12:53
MaxHeimbrock and others added 4 commits October 9, 2026 14:57
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Unify capture, sine, and data track toggles behind TogglePublish and report
each source's PublishState back to the UI, including capture pumps that exit
on their own. Checkboxes are disabled while a toggle is in flight.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Tear down every local track and report each source unpublished, both on
user-initiated disconnect and when the room disconnects on its own.
Previously the sine generator task kept running after disconnect.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MaxHeimbrock

MaxHeimbrock commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

Looks good.

I added more descriptive naming and checkboxes to make unpublishing more obvious.

Screenshot 2026-10-09 at 15 20 28

Also the CI was red because of the need for a clang bump and unpublishing was not possible for the sine wave.

Please have a look if you are fine with these commits.

@MaxHeimbrock

Copy link
Copy Markdown
Contributor

Also I thought about moving the mic input also to the menu as: Audio: Microphone as it is also a track you can publish.

@ladvoc

ladvoc commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor Author

@MaxHeimbrock, changes look good! I think it would make sense to also move microphone to the menu. Once device support in LiveKit Capture is upstreamed, there will be a new option in the menu to publish webcam.

One idea I had is to make this a submenu to allow selecting a specific device:

Publish
└── Video: Camera
    ├── MacBook Pro Camera
    └── HD Pro Webcam

Same could be done for microphone selection.

@MaxHeimbrock

Copy link
Copy Markdown
Contributor

@MaxHeimbrock, changes look good! I think it would make sense to also move microphone to the menu. Once device support in LiveKit Capture is upstreamed, there will be a new option in the menu to publish webcam.

One idea I had is to make this a submenu to allow selecting a specific device:

.
└── Video: Camera
    ├── MacBook Pro Camera
    └── HD Pro Webcam

Same could be done for microphone selection.

Yes, I also thought about submenus, like

─ Audio
    └─ Microphone
    └─ Sine Wave
─ Video
    └─ Clock
    └─ Logo
    └─ Camera
        └─ MacBook Pro Camera
        └─ HD Pro Webcam

I am out for a week, so I let you decide if you want to merge this first or continue working on the UI.

@MaxHeimbrock MaxHeimbrock left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ready to be merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants