Commit Graph
19 Commits
Author SHA1 Message Date
kato 41867429a5 fix(build): ensure gtk4-layer-shell loads before libwayland-client
Tests / Go and GTK tests (push) Failing after 1m44s
- Update CGO_LDFLAGS in build scripts to include gtk4-layer-shell with the correct load order.
- Add a new layershell_link.go file to maintain the dependency on gtk4-layer-shell.
- Modify overlay_gtk.go to clarify the importance of load order for Layer Shell functionality.
- Enhance run.sh to preload gtk4-layer-shell for proper overlay positioning.
2026-07-17 19:35:08 +03:00
kato 04ad4eb3d9 feat(gui): enhance application UI with new status segments and improved layout
Tests / Go and GTK tests (push) Failing after 2m14s
- Refactor status bar to include separate labels for source, speech, and outputs.
- Update buildWindow method to adjust layout and styling of status elements.
- Introduce new text tags for console and caption buffers to improve text rendering.
- Modify settings controls to use CheckButton instead of Switch for better clarity.
- Revise CSS styles for improved visual consistency and responsiveness across UI elements.
2026-07-17 15:34:50 +03:00
kato 54fb100d3c docs: update README with detailed desktop features and setup requirements 2026-07-17 14:41:10 +03:00
kato 55fbd357b0 docs: update README with VAD, new threshold option, and silence handling
Release / Tests before release (push) Successful in 1m29s
Release / Build and publish release (push) Successful in 3m5s
Tests / Go and GTK tests (push) Successful in 1m39s
Update README to clarify VAD mode behavior: provisional caption only after Silero detects speech, Parakeet idle during silence. Document new --vad-threshold option to control Silero speech confidence. Add troubleshooting tip for music/noise false detections.
2026-07-17 10:35:59 +03:00
kato b0487be39e feat: implement isolated model worker with auto-restart and hot-reload
Tests / Go and GTK tests (push) Successful in 1m38s
Release / Tests before release (push) Successful in 1m34s
Release / Build and publish release (push) Successful in 2m24s
Introduce a supervised child process for capture, VAD, and recognition,
enabling automatic restart on crash/hang and hot-reload via SIGHUP.
Add `--model-auto-restart`, `--model-timeout`, and
`--model-shutdown-timeout` options. Refactor `Run()` with lifecycle
hooks for proper process group cleanup. Update README with new
behavior and CLI flags.
2026-07-17 01:47:37 +03:00
kato b3ed538820 ci(release): add patchelf to CI workflows and update release documentation
Tests / Go and GTK tests (push) Canceled after 40s
Release / Tests before release (push) Successful in 1m44s
Release / Build and publish release (push) Successful in 3m2s
- Install patchelf in both build and release jobs to support runtime library relocation.
- Update release notes to describe the private desktop runtime archive.
- Clarify in README that development builds require GTK4 dev libraries, while release archives are self-contained with lib/ directory.
- Adjust troubleshooting and release procedure to reflect new offline runtime packaging.
2026-07-16 22:09:38 +03:00
kato 76bc3d8185 ci: add nodejs24 and nodejs24-bin to CI dependencies
Tests / Go and GTK tests (push) Successful in 1m38s
Release / Tests before release (push) Successful in 2m5s
Release / Build and publish release (push) Successful in 3m23s
2026-07-16 20:48:42 +03:00
kato 449626bffa docs: add CI/release documentation and ignore dist directory
Tests / Go and GTK tests (push) Failing after 1m8s
Add `/dist/` to `.gitignore` to exclude locally built distribution
artifacts. Document the Gitea Actions workflow, release tagging, and
branch protection setup in the README.
2026-07-16 19:40:21 +03:00
kato 13ddebbf98 feat(overlay): improve provisional text display and line splitting 2026-07-16 19:27:39 +03:00
kato 2f5ca41ac3 feat: add --overlay-font-family option for caption font customization
Allow users to specify a custom font family for the overlay captions via
a new --overlay-font-family flag, defaulting to "Sans". Validation
ensures the font family is not empty. Updated README, config, and tests.
2026-07-16 18:09:09 +03:00
kato 192666dd43 fix(overlay): enforce text wrap width to prevent overflow beyond screen
Add `gtk_label_set_width_chars` to set a concrete width for label allocation,
ensuring long sentences wrap within the configured max-chars bubble width
instead of extending off-screen.
2026-07-16 18:06:00 +03:00
kato bd2fc175a8 feat(overlay): add gradual fade effect for aging caption lines
Updated the overlay sink and state to apply a gradual fade from white to gray for completed caption lines over their display lifetime. The `FinalMarkup` method replaces plain `FinalText`, generating Pango markup with decreasing brightness. A periodic refresh timer (200 ms) recalculates colors and expiry, improving visual clarity of line recency. README updated to document the new fade behavior.
2026-07-16 18:03:23 +03:00
kato 55181d6397 feat: add six-line caption cap and enforce 3s minimum final timeout
- Reduce default overlay-final-timeout from 4s to 3s and validate
  that non-zero timeout is at least 3s to prevent captions from
  disappearing too quickly.
- Limit completed captions to six lines and keep each visible for
  at least 3s, improving readability during fast speech.
- Update README to document new VAD behavior and changed defaults.
2026-07-16 18:00:11 +03:00
kato fea9161b3c feat: make overlay caption bubble width fixed and left-align text
Set a fixed width on the caption bubble via `gtk_widget_set_size_request()` using
the effective width parameter, and change label alignment from center to left with
fill halign. Update the `--overlay-max-width` help text and README description to
reflect the new fixed-width behavior (still capped at 80% of monitor width).
2026-07-16 17:38:42 +03:00
kato 7affa0dbc8 chore: add Apache License 2.0 and ignore build directory 2026-07-16 17:24:50 +03:00
kato 45e4bce2a0 refactor: reorganize monolithic main package into focused packages
Move the executable entry point to `src/cmd/captioneer` and split audio, capture, config, caption, and model logic into separate packages under `src/`. Update README with new build/run commands and a package-overview section.
2026-07-16 12:12:01 +03:00
kato ce2161b7e6 refactor: move source files to src/ directory and rename project to Captioneer
Restructure Go source code into a dedicated `src/` directory, rename the project from "audio-listen" to "Captioneer", and update README accordingly. Add `.gitignore` entry for the built binary `captioneer`.
2026-07-16 12:01:51 +03:00
kato d042637351 refactor: extract flag parsing, validation, and packet processing into functions; add README and .gitignore 2026-07-16 11:56:40 +03:00
kato f473846bf6 Initial Commit 2026-07-16 11:42:51 +03:00