Skip to content

Athena webrtc streamer #34226

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

jakethesnake420
Copy link
Contributor

@jakethesnake420 jakethesnake420 commented Dec 13, 2024

Not expecting a merge, just showing this working demo of how webrtc could be used with connect in the future. I provided the react component frontend code too which has a lot of bloat, but it works.

@jakethesnake420 jakethesnake420 marked this pull request as draft December 13, 2024 03:44
@jakethesnake420
Copy link
Contributor Author

Recording.2024-12-12.215222.mp4

@jakethesnake420
Copy link
Contributor Author

Recording.2024-12-12.220040.mp4

Copy link
Contributor

This PR has had no activity for 9 days. It will be automatically closed in 2 days if there is no activity.

@github-actions github-actions bot added the stale label Dec 23, 2024
@adeebshihadeh
Copy link
Contributor

adeebshihadeh commented Dec 23, 2024

Cool! How well does this work over cell? Ultimately, I'd like to replace snapshot in connect with a live stream.

@jakethesnake420
Copy link
Contributor Author

jakethesnake420 commented Dec 23, 2024

Cool! How well does this work over cell? Ultimately, I'd like to replace snapshot in connect with a live stream.

It works reliably well. I created my own TURN server using coturn so it relays through that when using mobile data. You obviously need a decent cell connection for live streaming. Even with a bad connection it will still send some frames. WebRTC is robust to connection interruptions but since its using athena, if the websocket connection times out, it will set the end_event and reset everything.

@jakethesnake420
Copy link
Contributor Author

@adeebshihadeh The video I posted was using a turn server over mobile hotspot, not the local network.

@github-actions github-actions bot removed the stale label Dec 25, 2024
@morrislee
Copy link
Contributor

are we able to implement this for connect? this would a great addition or does it add too much server traffic?

@jakethesnake420
Copy link
Contributor Author

jakethesnake420 commented Jan 2, 2025

It could put a strain on the servers bandwidth if there was hundreds of simultanious streams. But this could be easily managed. Konik connect has already added support for it for free if you want it.

@morrislee
Copy link
Contributor

It could put a strain on the servers bandwidth if there was hundreds of simultanious streams. But this could be easily managed. Konik connect has already added support for it for free if you want it.

I am sorry, whats Konik connect? is that a connect fork? How do I use it? Do I also need a different openpilot branch?

@jakethesnake420
Copy link
Contributor Author

jakethesnake420 commented Jan 2, 2025

Yea its a connect fork and requires a fork of openpilot. Setup info in the discord https://discord.com/invite/vXG2eq5KSZ

Copy link
Contributor

This PR has had no activity for 9 days. It will be automatically closed in 2 days if there is no activity.

@github-actions github-actions bot added the stale label Jan 12, 2025
@adeebshihadeh
Copy link
Contributor

Gonna mark this as "ignore stale"

@incognitojam up to you if you wanna review and get something merged or you wanna just keep the draft around until we have time to write it ourselves

@royjr
Copy link
Contributor

royjr commented Feb 17, 2025

this is awesome!

@jakethesnake420
Copy link
Contributor Author

jakethesnake420 commented Feb 17, 2025

Also you can implement OpenXR into the frontend for VR support. You can send the commands from the quest controllers over a datachannel. This is how you can do comma body/humanoid teleop with minimal code.

@jakethesnake420
Copy link
Contributor Author

Recording.2025-04-27.101830.mp4

@5igma
Copy link

5igma commented May 7, 2025

Do you have a new discord link. Old link is expired for setup.

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

Successfully merging this pull request may close these issues.

5 participants