A yet to be voice call application in terminal. with the power of go and webRTC (pion).

Kenny

I'm just trying to make a cli operated voice call chat application using go with help of webRTC and PortAudio.

It might stay a Work In Progress for a long time.

Usage

go get the project or clone it and use go mod download to install dependencies. You also must install portaudio.

after that, find out about available commands with:

./kenny -h

TODO

  • Integrate with PortAudio for audio recording and audio playback
  • Use OPUS for audio encoding/decoding
  • Add webRTC signaling client
  • Transmit audio with webRTC
  • Integrate with ion-sfu
  • Look back and see WTF have I done !?

Contribution

Any help and contribution would be greatly appreciated.

Owner
Mohammad Fatemi
CE student at Amirkabir University of Technology, just hanging around with Java and Go
Mohammad Fatemi
Similar Resources

Pure Go implementation of the WebRTC API

Pure Go implementation of the WebRTC API

Pion WebRTC A pure Go implementation of the WebRTC API New Release Pion WebRTC v3.0.0 has been released! See the release notes to learn about new feat

Jan 1, 2023

Pure Go implementation of the WebRTC API

Pure Go implementation of the WebRTC API

Pure Go implementation of the WebRTC API

Jan 8, 2023

gRPC over WebRTC

gRPC over WebRTC Just a proof of concept, please be kind. How to Start all the things Client, create-react-app + grpc-web signaling + webrtc extension

Dec 16, 2022

Scalable WebRTC Signaling Server with ayame-like protocol.

ayu ayu is WebRTC Signaling Server with ayame-like protocol. Scalable: ayu uses Redis to store room states, so it can be used on serverless platforms

Nov 11, 2022

WebRTC media servers stress testing tool (currently only Janus)

 WebRTC media servers stress testing tool (currently only Janus)

GHODRAT WebRTC media servers stress testing tool (currently only Janus) Architecture Janus media-server under load Deployment ghodrat # update or crea

Nov 9, 2022

Go Webrtc Signaling Server

Go Webrtc Signaling Server This package is used to listen for Remote SDP (Sessio

Sep 7, 2022

Overlay networks based on WebRTC.

Overlay networks based on WebRTC.

weron Overlay networks based on WebRTC. ⚠️ weron has not yet been audited! While we try to make weron as secure as possible, it has not yet undergone

Jan 4, 2023

Experimental system call tracer for Linux x86-64, written in Go

gtrace A system call tracer for Linux x86-64. DISCLAIMER: This software is experimental and not considered stable. Do not use it in mission-critical e

Nov 29, 2022

Implementing SPEEDEX price computation engine in Golang as a standalone binary that exchanges can call

speedex-standalone Implementing SPEEDEX price computation engine in Golang as a standalone binary that exchanges can call. Notes from Geoff About Tato

Dec 1, 2021
Comments
  • This is an awesome project!

    This is an awesome project!

    Hey @smf8

    I am really excited to see this project. It will unlock a lot of new use cases if people can use a CLI application. In the future I might open a PR so users can join other SFUs (Jitsi, Janus, Mediasoup...) and maybe proprietary services even.

    If there is anything I can do to help email me at anytime sean @ pion.ly or in Slack

  • Move audio to a separate package

    Move audio to a separate package

    I thought it would be better to have a separate external audio package.

    This way, we could have different implementations, i.e., portaudio, pion/mediadevices, faiface/beep.

    Currently, I plan only to add portaudio. But it'd be great to have others in the future.

Related tags
Demonstration of using Pion WebRTC with a shared socket

pion-webrtc-shared-socket This example demonstrates how Pion WebRTC can use an already listening UDP socket. On startup we listen on UDP Socket 8000.

Apr 4, 2022
This project is the eloboration of pion/webrtc.

This project is the eloboration of pion/webrtc. The idea is to make the (pion/webrtc) sfu-ws example be able to handle multiple rooms

Nov 29, 2021
A library for communication with solar power inverters of the RCT power brand, not endorsed by or affiliated with the eponymous company.

rct A library for communication with solar power inverters of the RCT power brand. Tested with the RCT PS 6.0 solar power inverter, battery and grid p

Dec 21, 2022
A simple WebRTC Signaling server for flutter-webrtc and html5
A simple WebRTC Signaling server for flutter-webrtc and html5

flutter-webrtc-server A simple WebRTC Signaling server for flutter-webrtc and html5. Online Demo: https://demo.cloudwebrtc.com:8086/ Features Support

Dec 13, 2021
A gRPC and WS voice chat server written in Go.

VoGRPC Voice over gRPC A small WS and gRPC server, designed to support voice messaging. Progress so far: WS + Socket.io support Roadmap Database desig

Nov 4, 2021
Announces arrivals and departures in voice chat via TTS.

Trumpet This is a Discord Bot. The bot's sole purpose is to announce arrivals and departures in voice chat via TTS. This is a fork of a lightweight Di

Jul 2, 2022
Playing with go, gobot & pion
Playing with go, gobot & pion

Tello-WebRTC-FPV Lately there were a couple of articles about pion and it looked very cool, but I didn't know what I could do with it. I then remember

Nov 21, 2022
A fast subdomain enumerator for web URLs using the power of Goroutines.
A fast subdomain enumerator for web URLs using the power of Goroutines.

gosublister A fast subdomain enumerator for web URLs written in go with goroutines. Options Usage: gosublister -u [URL] [Other Flags] Flags: -u,

May 7, 2023
A toy MMO example built using Ebiten and WebRTC DataChannels (UDP)
A toy MMO example built using Ebiten and WebRTC DataChannels (UDP)

Ebiten WebRTC Toy MMO ⚠️ This is a piece of incomplete hobby work and not robust. Please read the "Why does this project exist?" section. What is this

Aug 28, 2022
Peerconnection_explainer - PeerConnection-Explainer parses WebRTC Offers/Answers then provides summaries and suggestions

PeerConnection Explainer PeerConnection Explainer decodes WebRTC... so you don't have too! PeerConnection Explainer parses WebRTC Offers/Answers then

Oct 31, 2022