Commit Graph

292 Commits

Author SHA1 Message Date
Georgi Gerganov
0400c8dec6 Update README.md 2021-04-18 15:56:31 +03:00
Georgi Gerganov
90b963f354 Update README.md 2021-04-18 15:55:19 +03:00
Georgi Gerganov
959bc4ed41 r2t2 : fix example url 2021-04-18 15:54:42 +03:00
Georgi Gerganov
84ba8c7f5e Update README.md 2021-04-18 13:57:36 +03:00
Georgi Gerganov
cafa304f4a Update README.md 2021-04-18 13:30:02 +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
midijohnny
464aa2283b Update README-tmpl.rst (#29)
See issues: there was a typo in the docs.
The parameter "txProtocol" should be "txProtocolId"
2021-04-12 13:03:53 +03:00
Georgi Gerganov
ba87a651e3 ggwave : add option to query the generated tones
Calling the getWaveformTones() method after calling encode() gives a
list of the tones participating in the generated sound
2021-04-03 18:49:36 +03:00
Georgi Gerganov
7d88f42e4e ref #2 : add Android example link to the README 2021-03-13 11:24:48 +02:00
Georgi Gerganov
153a6d2d6a ggsock : fix install target 2021-03-08 15:27:39 +02:00
Georgi Gerganov
80e99d361d spectrogram : disable offset for wasm build 2021-03-01 09:51:29 +02:00
Georgi Gerganov
9ea6aed9d1 waver : add shortcuts to delete messages 2021-02-28 17:27:07 +02:00
Georgi Gerganov
b1240da806 ggwave-to-file : minor fixes 2021-02-28 17:22:46 +02:00
Georgi Gerganov
9ffe6f43f6 Create README.md 2021-02-28 17:07:12 +02:00
Georgi Gerganov
6accc90199 Spectrogram - WASM port (#26)
* wip in progress

* wip

* done

* fix small window behavior
2021-02-28 17:03:55 +02:00
Georgi Gerganov
28e06d5b08 spectrogram : update tool 2021-02-28 16:27:25 +02:00
Georgi Gerganov
1875faec9d cmake : fix emscripten install targets 2021-02-28 08:02:13 +00:00
Georgi Gerganov
a0f5e9e3da waver : display detected Rx in spectrogram 2021-02-28 09:33:55 +02:00
Georgi Gerganov
4c3b249bf5 Update CHANGELOG.md 2021-02-28 00:26:27 +02:00
Georgi Gerganov
e08001e9a2 Update README-tmpl.md 2021-02-28 00:13:08 +02:00
Georgi Gerganov
08d68978b6 Update README.md 2021-02-28 00:09:25 +02:00
Georgi Gerganov
74f35ebcf0 waver : fix font loading and snap build waver-v1.4.0 2021-02-27 22:36:36 +02:00
Georgi Gerganov
770e464722 snap : try to fix install target 2021-02-27 21:47:33 +02:00
Georgi Gerganov
29a6c35bef snap : attempt to fix build 2021-02-27 20:56:26 +02:00
Georgi Gerganov
5b14586967 waver : fix emscripten build 2021-02-27 18:52:51 +00:00
Georgi Gerganov
ff09965707 snap : update waver to 1.4.0 2021-02-27 20:31:08 +02:00
Georgi Gerganov
5a26dacd0f Add msys2 CI build (#25)
* ci : add msys2 build

* wip

* wip

* revert me

* wip

* msys2 : build static libs by default

* Revert "revert me"

This reverts commit 2fe8012508.

* done
2021-02-27 20:24:09 +02:00
Georgi Gerganov
158ed71323 msys2 : build static libs by default 2021-02-27 10:19:06 -08:00
Georgi Gerganov
68d77facb2 tests : fix C test 2021-02-27 19:59:52 +02:00
Georgi Gerganov
5f2bfd09ba msys2 : fix build 2021-02-27 09:47:13 -08:00
Georgi Gerganov
8a930b7a96 cmake : do not configure files when not standalone 2021-02-27 15:17:17 +02:00
Georgi Gerganov
d977c0fc9c waver : make the spectrogram time axis vertical 2021-02-27 15:11:24 +02:00
Georgi Gerganov
f279604989 waver : fix spectrogram display
Was exceeding 2^16 vertices
2021-02-27 15:03:09 +02:00
Georgi Gerganov
bdf56d2f8f ggwave : update js bindings 2021-02-27 12:27:18 +02: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
553b414929 ggwave : more resampling fixes
This time the sound cracking should be fixed for real.

Also adding option to generate noise in the cpp tests
2021-02-21 13:30:27 +02:00
Georgi Gerganov
311442f01c cmake : separate version string for python package 2021-02-21 00:55:55 +02:00
Georgi Gerganov
bf4be2a4f4 js : update ggwave.js 2021-02-20 22:45:29 +00:00
Georgi Gerganov
bd9d6b1d81 ggwave-js : simplify example (#21)
Now that ggwave support input resampling, we don't need to resample
in javascript
2021-02-21 00:43:37 +02:00
Georgi Gerganov
e5c094296f python : fix cython wrapper 2021-02-21 00:42:26 +02:00
Georgi Gerganov
5b9c561579 resampler : minor fixes 2021-02-21 00:40:11 +02:00
Georgi Gerganov
62b71c3322 ggwave : resampling fixes
The old output resampling was bugged and produced cracking in the audio
when the output sampling rate was different from the base sampling rate.

Additionally, the decoding wasn't properly handling resampled input in all
cases.
2021-02-21 00:16:43 +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
6011c0cef2 resampler : can now query the expected resampled size 2021-02-21 00:11:20 +02:00
Georgi Gerganov
d3732946c6 close #19 : add cmake option for single-file wasm build
If enabled, we build ggwave using "-s SINGLE_FILE=1" which causes
the WASM to be embedded inside the .js file.

Otherwise, 2 separate files are produced:
- libggwave.js
- libggwave.wasm
ggwave-v0.2.0
2021-02-20 19:57:47 +02:00
Georgi Gerganov
580090c721 ggwave v0.2.0 2021-02-20 19:42:16 +02:00
Georgi Gerganov
e36d5032dc Update CHANGELOG.md 2021-02-20 19:26:21 +02:00
Georgi Gerganov
b0f55ac025 Update CHANGELOG.md 2021-02-20 19:25:33 +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