Skip to content
An application that sends audio through the WebRTC data channel between two peers
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
js
media
styles
.gitignore Wrapped socket io inside window onload Jul 7, 2017
README.md
app.js Writing comments and cleaning up in app.js and local.js Aug 11, 2017
index.html
local.js
package.json Letsencrypted app.js. gitignored app.js for github Jul 7, 2017

README.md

WebRTCDataMedia - Multimedia through the WebRTC Data Channel

Demo: https://webrtc-stud.uninett.no

  • Submit the room name in the prompt.
  • Send the link or the room name to a peer.
  • Chat with eachother with audio and video through the WebRTC data channel.

This WebRTC system attempts to apply the WebRTC datachannel to transmit uncompressed audio and video between peer-browsers.

The system attempts to mimic how current music collaboration tools transmit audio over IP-nettworks, i.e. uncompressed and unbuffered. The aim is to achieve an audio connection with lower delay (and higher quality) compared to the standard audio channel in WebRTC.

Installation Guide

git clone https://github.com/hungqt/PeerAudio.git

npm install
node local.js

Then open http://localhost:8080 to see your app.

  • The server file local.js is used to run localhost, while app.js is deployed to the server.

The system

The system consists of a server and client.

Server

A node.jo server is implemented to provider "rooms" for peers of clients to meet. socket.io is applied to implement room-support and simple "vanilla" forwarding of messages between room-members are performed.

Currently only two member per room is supported.

Server JavaScript-code is in app.js.

Client

After loading the client page requires "vanilla" selection of a room name (of the user choice). When two clients have join a room, audio may be exchanged.

  • Batch forwarding: A peer may record an audio clip and forward to the other peer. Receiveing peer may play out the clip.
  • Realtime: A peer may initiate a live audiostream

All audio is forwarded across the WebRTC datachannel.

Client JavaScript-code is in js/main.js.

Status

The system is very much under development, and currently not fully implemented.

You can’t perform that action at this time.