Kbd-Audio - Tools For Capturing Together With Analysing Keyboard Input Paired Amongst Microphone Capture


This is a collection of command-line together with GUI tools for capturing together with analyzing audio data. The most interesting tool is called keytap - it tin jurist pressed keyboard keys alone past times analyzing the well captured from the computer's microphone.

Build instructions
Dependencies:
  • SDL2 - used to capture well together with to opened upward GUI windows libsdl
  • FFTW3 - to a greater extent than or less of the helper tools perform Fourier transformations fftw
Linux together with Mac OS
git clone https://github.com/ggerganov/kbd-audio cd kbd-audio git submodule update --init mkdir construct && cd construct cmake .. make
Windows
(todo, PRs welcome)

Tools

record-full
Record well to a raw binary file on disk
Usage: ./record-full output.kbd

play-full
Playback a recording captured via the record-full tool
Usage: ./play-full input.kbd

record
Record well alone spell typing. Useful for collecting preparation information for keytap
Usage: ./record output.kbd

play
Playback a recording created via the record tool
Usage: ./play input.kbd

keytap
Detect pressed keys via microphone well capture inward real-time. Uses preparation information captured via the record tool.
Usage: ./keytap-gui input0.kbd [input1.kbd] [input2.kbd] ...
Live present (WebAssembly threads required)


keytap2 (work inward progress)
Detect pressed keys via microphone well capture. Uses statistical information (n-gram frequencies) almost the language. No preparation information is required. The 'recording.kbd' input file has to live on generated via the record-full tool together with contains the well information that volition live on analyzed. The 'n-gram.txt' file has to incorporate n-gram probabilities for the corresponding language.
Usage: ./keytap2-gui recording.kbd n-gram.txt


Feedback
Any feedback almost the functioning of the tools is highly appreciated. Please drib a comment here.