Skip to content

Feature gui improvements#5

Open
joenaess wants to merge 4 commits into
kb-labb:mainfrom
joenaess:feature-gui-improvements
Open

Feature gui improvements#5
joenaess wants to merge 4 commits into
kb-labb:mainfrom
joenaess:feature-gui-improvements

Conversation

@joenaess

@joenaess joenaess commented Mar 5, 2026

Copy link
Copy Markdown
Contributor

Description

This PR introduces a few GUI features to the easysearch web interface to hopefully improve the productivity of users reviewing transcripts.

Key Additions

1. Playback Speed Controls

  • Added a responsive <select> dropdown next to the audio player in the UI.
  • Allows users to precisely adjust audio transcription playback speed from 0.5x up to 2.0x.
  • Stays perfectly synchronized with the requestAnimationFrame word-level highlighting.

2. Global Keyboard Navigation

  • Added keydown event listeners to the global context to allow power-user keyboard navigation holding the interface:
    • Spacebar: Toggles Play/Pause globally, regardless of where the mouse cursor is located (unless typing in the search bar).
    • ArrowLeft / ArrowRight: Skips the audio backwards and forwards precisely by 5-second intervals.

3. Native VTT Subtitle Export

  • Implemented a purely client-side export utility that downloads the current transcript directly from the page view state without hitting the backend server.
  • Clicking the "Download VTT" button dynamically parses the easysearch alignment data and formats it into standard timeline syntax for a .vtt (Video Text Track) file, triggering an instant browser-native download.

Documentation

  • Updated docs/get-started/search.qmd to detail these new "Advanced Player Controls".

Verification

  • Features were successfully verified on a local instance using test.wav alignment outputs.
  • UI elements adapt properly to the pre-existing system dark mode in style.css.

@joenaess

joenaess commented Mar 5, 2026

Copy link
Copy Markdown
Contributor Author

Hoppas det är användbart ;-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant