All Projects → hakobera → go-ayame

hakobera / go-ayame

Licence: Apache-2.0 License
go-ayame is go client library for WebRTC Signaling Server Ayame

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to go-ayame

Mediadevices
Go implementation of the MediaDevices API.
Stars: ✭ 197 (+885%)
Mutual labels:  webrtc, p2p
rtc-ssh
WebRTC wrapper for SSH connect
Stars: ✭ 95 (+375%)
Mutual labels:  webrtc, p2p
Webrtc server node
videoCall VideoConference 视频通话 视频会议
Stars: ✭ 208 (+940%)
Mutual labels:  webrtc, p2p
Spitfire
An easy to use WebRTC Datachannels library for .NET applications.
Stars: ✭ 164 (+720%)
Mutual labels:  webrtc, p2p
P2P-CKPlayer
嵌入P2P引擎的CKPlayer,视频网站省流量&加速神器
Stars: ✭ 49 (+145%)
Mutual labels:  webrtc, p2p
Peardownloader.js
一个支持多协议、多源、混合P2P-CDN的下载器
Stars: ✭ 170 (+750%)
Mutual labels:  webrtc, p2p
Peertransfer
📦 • Send a file p2p and e2e encrypted in your browser using WebRTC.
Stars: ✭ 238 (+1090%)
Mutual labels:  webrtc, p2p
Webrtc Qr
WebRTC Connect Experiment - https://aquigorka.com/webrtc-qr/
Stars: ✭ 154 (+670%)
Mutual labels:  webrtc, p2p
P2P-DPlayer
DPLayer powered by CDNBye P2P Engine
Stars: ✭ 63 (+215%)
Mutual labels:  webrtc, p2p
meanOs
Mean Operating System - The first decentralized, artificially intelligent, MEAN.js stack, operating system. Mean OS is the only operating system hosted anonymous using a P2P network and a suite of non-standard in-browser delivery mechanisms. Mean OS proudly supports Brave and Tor, be free!
Stars: ✭ 62 (+210%)
Mutual labels:  webrtc, p2p
Pikachu Volleyball P2p Online
Pikachu Volleyball peer-to-peer online via WebRTC data channels
Stars: ✭ 160 (+700%)
Mutual labels:  webrtc, p2p
udpeer
A simple UDP peer to peer networking proxy using webrtc
Stars: ✭ 19 (-5%)
Mutual labels:  webrtc, p2p
P2pt
Simple WebRTC Peer 2 Peer connections using WebTorrent trackers as the signalling server. Use WebTorrent trackers for any kind of WebRTC app ! 🔥 Make WebRTC apps fast & easy ! 🚀⭐
Stars: ✭ 159 (+695%)
Mutual labels:  webrtc, p2p
Netflux
JavaScript client and server side transport API based on WebRTC & WebSocket
Stars: ✭ 188 (+840%)
Mutual labels:  webrtc, p2p
P2p Cdn Sdk Javascript
Free p2p cdn github javascript sdk to reduce video streaming costs of live and on demand video using webrtc by upto 90% and improve scalability by 6x - 🚀 Vadootv 🚀
Stars: ✭ 158 (+690%)
Mutual labels:  webrtc, p2p
Ayame
WebRTC Signaling Server Ayame
Stars: ✭ 218 (+990%)
Mutual labels:  webrtc, p2p
Wt Tracker
High-performance WebTorrent tracker
Stars: ✭ 144 (+620%)
Mutual labels:  webrtc, p2p
Meshenger Android
P2P Audio/Video calls over local networks. No server or Internet access needed.
Stars: ✭ 152 (+660%)
Mutual labels:  webrtc, p2p
secure-webrtc-swarm
💢 Create a swarm of p2p connections with invited peers using WebRTC.
Stars: ✭ 23 (+15%)
Mutual labels:  webrtc, p2p
Diffy
🎞️💓🍿 Love streaming - It's always best to watch a movie together ! 🤗
Stars: ✭ 37 (+85%)
Mutual labels:  webrtc, p2p

go-ayame

go-ayame は WebRTC Signaling Server Ayame の Go 言語用のクライアントライブラリです。

前提事項

go-ayame を利用するには go 1.14 以上が必要です。

使い方

import "github.com/hakobera/go-ayame/ayame"

signalingURL := "wss://ayame-labo.shiguredo.jp/signaling"
roomID := "your_room_id"

// ayame.Connect の作成
opts := ayame.DefaultOptions()
con := ayame.NewConnection(signalingURL, roomID, opts, false, false)

// PeerConnecition 接続時の処理
con.OnConnect(func() {
    fmt.Println("Connected")
})

// 動画、音声パケットデータ受信時の処理
con.OnTrackPacket(func(track *webrtc.Track, packet *rtp.Packet) {
    switch track.Kind() {
    case webrtc.RTPCodecTypeAudio:
        // Audio データを使って何かをする
    case webrtc.RTPCodecTypeVideo:
        // Video データを使って何かをする
    }
})

// Ayame サーバーへ接続
err := con.Connect()
if err != nil {
    log.Fatal("failed to connect Ayame", err)
}

License

Copyright 2020 Kazuyuki Honda (hakobera)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].