Library & GUI program to transfer data between computers using sound.
MIT License
The project will ultimately enable easy communication between computers that do not require any additional services (Bluetooth / WiFi), using high-frequency sounds. We will create a documented transmission protocol that supports error correction and transmission validation. On its basis, we are going to build a mechanism that allows you to transfer files or text between computers. The whole will be wrapped in API made available in the form of shared libraries (.so / .dll). In addition, we've created sample applications (CLI / QT) that use this API to present its capabilities.
To build on your own (instructions below) or for the newest commit on master at: https://codedocs.xyz/Lorak-mmk/EchoConnect/index.html
git clone --recurse-submodules https://github.com/Lorak-mmk/EchoConnect.git
cd EchoConnect
mkdir -p build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make
# Tests
GTEST_COLOR=1 make test CTEST_OUTPUT_ON_FAILURE=TRUE
Output files:
Library: build/libecho/*.so*
Tests: build/libecho/tests/libecho_tests
Automatic documentation build requires Release build mode, i.e. cmake -DCMAKE_BUILD_TYPE=Release
Manual documentation build (in build/):
make doc_doxygen
Documentation files: build/libecho/docs/doc_doxygen