Simple streaming audio server in C
Simple audio streaming server and client written in C, using backpressured
pipelines, as part of course on Systems Programming.
The application is composed of four main components:
As part of the assignment, we also had to design and implement our own reliable
transport protocol on top of UDP for streaming the audio packets. Our protocol
is similar to TCP and documented in PROTOCOL.txt
Download the source code by running the following code in your command prompt:
git clone https://github.com/fabianishere/sas.git
or simply
grab
a copy of the source code as a Zip file.
Create the build directory.
$ mkdir build
$ cd build
Brainfuck requires CMake and a C compiler (e.g. Clang or GCC) in order to run.
Then, simply create the Makefiles:
$ cmake ..
and finally, build it using the building system you chose (e.g. Make):
$ make
In the build directory, start the server as follows:
./sas-server/sas-server
Next, start the client as follows:
./sas-client/sas-client <HOST> <PATH-TO-WAV>
where HOST
refers to the address hosting the server (e.g. localhost) and PATH-TO-WAV
refers to the (relative) path from the servers’ current working directory
to some WAV file.
sas is available under the MIT license.