Commit Graph

3 Commits

Author SHA1 Message Date
Brummel 0d5c2f5888 Formatting 2026-04-19 15:35:10 +02:00
Brummel d0f70e706e Add libc dependency for unix targets
This commit adds the `libc` dependency to the `Cargo.toml` file for
Unix-based targets. This dependency is required by the `ffmpeg` command
execution within the `recorder` module, specifically for handling
process management and signaling on Unix-like systems.
2026-04-17 16:23:04 +02:00
Brummel 5f7e46256c Add audio recording and upload capabilities
Introduces new modules for audio recording (`recorder.rs`) and
asynchronous uploading (`uploader.rs`) with retry logic.

The `recorder` module uses `ffmpeg` as a subprocess to capture audio and
save it as M4A files. It handles starting, stopping, and reporting
recording events.

The `uploader` module manages a queue of recordings to be uploaded to
the server. It supports persistent storage of pending uploads via
sidecar JSON files, exponential backoff for retries, and emits events
for UI feedback.

New dependencies were added to `Cargo.toml` and `Cargo.lock` to support
these features, including `reqwest`, `serde_json`, `tokio`, `uuid`, and
`which`.
2026-04-17 15:49:55 +02:00