github.com/keroserene/go-webrtc (go): Package webrtc/data contains the go wrapper for the Peer-to-Peer Data API portion of WebRTC spec.  See: https://w3c.github.io/webrtc-pc/#idl-def-RTCDataChannel  Package webrtc is a golang wrapper on native code WebRTC.  For consistency with the browser-based WebRTCs, the interface here is based loosely on: w3c.github.io/webrtc-pc  The main goal of this project is to present a golang WebRTC package in the most idiomatic and simple-to-use way.  However, to provide a better experience for users of this package, there are differences inherent in the interface written here and the original native code WebRTC - from the golang requirement of Capitalized identifiers for public interfaces, to the replacement of certain callbacks with goroutines.  Note that building the necessary libwebrtc static library is excessively complicated, which is why the necessary platform-specific archives will be provided in lib/. This also mitigates the possibility that future commits on native libwebrtc will break go-webrtc, because the interface with the native code, through the intermediate CGO layer, is relatively fragile.  Due to other external goals of the developers, this package will only be focused on DataChannels. However, extending this package to allow video/audio media streams and related functionality, to be a "complete" WebRTC suite, is entirely possible and will likely happen in the long term. (Issue #7) This will however have implications for the archives that need to be built and linked.  Please share any improvements or concerns as issues or pull requests on github.
Keywords: golang|peer-connection|webrtc