Commit Graph

35 Commits

Author SHA1 Message Date
Georgi Gerganov
915dd8be16 ggwave : add DSS test + remove OperatingMode enum 2022-06-11 20:23:13 +03:00
Georgi Gerganov
d76316aecb ggwave : add default constructor 2022-06-11 19:52:25 +03:00
Georgi Gerganov
0cf3d0e36b ggwave : big refactoring / renaming 2022-06-05 15:21:55 +03:00
Georgi Gerganov
83e6b72e55 ggwave : various improvements
- faster FFT implementation
- built-in Direct Sequence Spread option
- remove <map> dependency from implementation
- update arduino-rx example
2022-06-04 15:41:23 +03:00
Georgi Gerganov
782ab237ac ggwave : remove <functional> header dependency 2022-05-30 22:01:38 +03:00
Georgi Gerganov
721ba8e107 ggwave : remove unused ampl i16 Tx buffer 2022-05-29 16:49:10 +03:00
Georgi Gerganov
8fa457fce0 wip 2022-05-28 22:14:16 +03:00
Georgi Gerganov
fcb3bec055 wip 2022-05-28 19:41:56 +03:00
Georgi Gerganov
59f576f1e8 waver : fix data race with ggwave instance + v1.4.1 2021-07-02 21:42:14 +03:00
Georgi Gerganov
e2ef350693 fix log message 2021-06-28 20:10:21 +03:00
Georgi Gerganov
00b23ff54f r2t2 - Transmit data through the PC speaker (#32)
* inital implementation

* remove file

* ggwave-cli : txProtocol -> txProtocolId

* ggwave : add custom protocol enum values

* r2t2 : use cutom protocols

* r2t2 : build only on Unix systems

* r2t2 : remove thread

* r2t2-rx : wip

* r2t2 : wasm build ready + various fixes

* r2t2 : error message

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* r2t2 : length 16

* r2t2 : use slow protocol by default

* r2t2 : add timestamp

* r2t2 : update html

* r2t2 : update github link

* r2t2 : more robust tx

* r2t2 : add option to use beep command

* emscripten : cannot use requestAnimationFrame when capturing audio

This causes the queued audio buffer to grow indefinitely when the page
is not focused, causing the process to run out of memory.

* r2t2 : disable beep option

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* r2t2 : add example to README
2021-04-18 13:20:45 +03:00
Georgi Gerganov
1c59e38696 ggwave : switch to floating point sampling rate 2021-02-27 12:23:25 +02:00
Georgi Gerganov
5b5293d764 Waver v1.4.0 (#23)
* waver : change default protocol

* waver : global scale to 1.25

* waver : more colors

* waver : resend last message

* waver : bigger send button

* waver : start with fixed-length enabled

* waver : fix spectrum display for fixed-length mode

* waver : add option to control input sample rate offset

* ggwave : improve fixed-length decoding

* examples-common : SDL now captures 1024 samples instead of 4096

* waver : spectrum improvements + spectrogram mode

* minor changes

* ggwave : add FFT static method

* waver : realtime spectrum display

* waver : fix dragging behavior

* waver : show current tx protocol in "Messages"

* waver : show frequency range and bandwidth of selected protocol

* waver : change sample rate offset function

output instead of input

* waver : add info about local peers

* waver : add option to pause spectrum by clicking it

* waver : minor

* waver : add option descriptions

* waver : fix data races

* waver : purple-ish background

* waver : cian-ish background

* waver : add option button to cancel receiving

* waver : add option to select Rx Protocols

* waver : change default protocol

* waver : fix displayed protocol for each message
2021-02-27 11:45:01 +02:00
Georgi Gerganov
f4fb02d5d4 ggwave : add "soundMarkerThreshold" parameter
Can be used to control the threshold used for distinguishing odd from even
frequencies in the sound markers.
2021-02-21 00:13:28 +02:00
Georgi Gerganov
19bf22df0d ggwave v0.2.0 (#20)
* ggwave : add support for fixed length transmissions

* spectrogram : add sample rate offset for debugging purposes

* gwave : fix decoding bug

* waver : wip

* wip

* remove post-marker frames

* add resampler

* ggwave : input/output resampling

* ggwave : fix python build

* ggwave : update spm

* ggwave : refactor duplicate encode/decode code

* ggwave : fix sound marker detection

* waver : fix typo

* ggwave : fix uninitialized members

* ggwave : more sensitive receive
2021-02-20 19:16:15 +02:00
Georgi Gerganov
07eb33e9c9 minor : fix callback variable name 2021-02-07 20:38:23 +02:00
Georgi Gerganov
19f353018d Javascript bindings (#14)
* Initial version ready

- bindings are in `bindings/emscripten.cpp`
- minimal Javascript example is in `examples/ggwave-js`

* add npm package + add test-ggwave.js

* js : rename export name to "ggwave_factory"

* update to v0.1.5

* Update README.md

* npm : add npm-publish target
2021-01-24 17:25:58 +02:00
Georgi Gerganov
ba8e0cd2b1 c, python : add option to query encode size 2021-01-23 17:13:13 +02:00
Georgi Gerganov
597cc48cbb core : refactoring + bug fix
- rename callback types
- fix calculation of data frames
2021-01-23 15:47:59 +02:00
Georgi Gerganov
a64106783f Support for various sample formats (#11)
* wip : support for various sample formats

* finalize support for various sample formats

* adding more tests

* update python bindings

* add "string" header
2021-01-23 11:45:20 +02:00
Georgi Gerganov
cd332b5919 ggwave : refactoring + comments 2021-01-17 21:19:41 +02:00
Georgi Gerganov
94978e679a ggwave : add default samples per frame 2021-01-16 18:39:11 +02:00
Georgi Gerganov
174b6872e8 examples : add "simple-rx" example + minor clean-up 2020-12-19 11:26:40 +02:00
Georgi Gerganov
c5b0b43112 ggwave-gui : v1.2.0 2020-12-13 20:30:00 +02:00
Georgi Gerganov
ef081f4856 ggwave-gui : adding tx waveform display 2020-12-13 16:24:52 +02:00
Georgi Gerganov
6c04843d58 ggwave-gui : attempt to reinit playback/capture 2020-12-09 19:15:59 +02:00
Georgi Gerganov
d234b9ccb9 ggwave-gui : minor 2020-12-06 09:13:38 +02:00
Georgi Gerganov
72d0ca630d wip : volume no longer protocol parameter 2020-12-05 13:32:39 +02:00
Georgi Gerganov
4a8a219f39 wip : refactor GGWave 2020-12-05 13:20:06 +02:00
Georgi Gerganov
a02ead3b90 wip : remove TxMode
always use variable length
2020-12-05 11:25:29 +02:00
Georgi Gerganov
429ff0f1b1 wip : receive all types of protocols 2020-12-04 22:27:04 +02:00
Georgi Gerganov
2b76af15fb examples : minor fix 2020-12-03 21:43:36 +02:00
Georgi Gerganov
88e9ed79f0 examples : refactor common code 2020-11-29 18:22:04 +02:00
Georgi Gerganov
0bbb11fffb refactor example + adding imgui and imtui submodules 2020-11-29 17:45:20 +02:00
Georgi Gerganov
69efeca387 Initial commit 2020-11-29 11:02:17 +02:00