Skip to content

Quicr/qmedia

Repository files navigation

qmedia

Implementation of realtime audio/video library and experimental MacOs client on top of libquicr

Note: This project is under active development and might be breaking and fixing things ;)

2-Way Realtime Call over QUICR Datagrams

This video captures a 2-way realtime call with QUICR relay node deployed in Akamai's Atlanta Network, USA and the 2 clients running on mac-book in London (on Hilton Hotel Network)

Here both the clients publish audio and video streams, as well as subscribe to each other's audio and video streams.

The Relay node has experimental feature to drop/forward based on the priority set by the application.

akamia-2-way-call-compressed.mp4

1 Publisher and 3 Subscribers audio/video flows over QUICR Datagrams

Here is a simple demo of 1 publisher sending audio and video streams with 3 subscribers asking for the same, The Relay node is running on AWS in Ohio with clients running in SanJose California

1_3_pub_sub_480p.mp4

Quickstart

git clone https://github.com/Quicr/qmedia
cd qmedia

vcpkg is used for some non-cmake friendly dependencies

git submodule init
git submodule update

Rest of the dependencies are fetched via cmake and should build libqmedia.a and libneo_media_client.dylib

mkdir build
cd build
cmake ..
make all

or with the convenient Makefile

make cclean
make all

Please check Build Prequisites in case of errors.

Running Mac Client

The source code for Mac client is under mac-client/

mac-client can be run with

 1. Copy libneo_media_client.dylib from build/src/extern into mac-client/Neo directory
 2. Open RTMC.xcodeproj under mac-client
 3. Build and Run
   3.1 This needs a QuicR relay to be started as explained below

Running mac-client needs a backend QuicR relay server which can be run locally with

1. cd build/_deps/quicrq-build
2.  ./quicrq_app -p 7777 -c ../picoquic-src/certs/cert.pem -k ../picoquic-src/certs/key.pem  server

About

QuicR Realtime Media Client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •