QUILL Studio User Guide

Version 2.0.0

Preferences gains Find a setting in the next maintenance update. Type a term from a setting’s label or help, press Down for matching settings, then Enter to focus one. Control+F returns to search; Escape clears a search before closing. Search navigates only: OK still saves, Cancel still cancels, and values are not indexed. Disabled settings stay disabled.

(QUILL Studio 2.0.0 follows Audio Studio 1.0.0. The previously unpublished 2.2.0 build is renumbered for this release.)

QUILL Studio is audiobook and audio production the way a screen reader user would design it: a small home window with a menu bar, a wizard that asks one question at a time and announces every step, a chapter editor you drive entirely by ear, and spoken progress for every long run. It runs the exact same Audio Studio code that ships inside the QUILL editor and shares QUILL’s data store, so a voice you configure here reads aloud in QUILL too, and nothing you set up is ever stranded.

Three journeys cover the whole workshop:

Installing and running

The QuillVille Runtime: install Python once, use it everywhere

Every QuillVille app - QUILL, Quill Radio, Quill Weather, and QUILL Studio - now shares one Python runtime, called the QuillVille Runtime. It is installed once per user and reused by all of them. Install it a single time (with any Quill app), and every app you add afterward launches instantly, because the shared runtime is already there.

The runtime is reference-counted: it is removed only when the last app that needs it is uninstalled, so removing one app never leaves the others unable to start.

The Studio comes as two downloads. Pick the one that fits how you work:

Earlier test builds also came as a small “Lite” installer and a “Companion” zip. Those are gone. If you have one, take the installer in place of the Lite installer, or the portable zip in place of the Companion zip. Help > Check for Updates offers the right one for you.

The installer

Run the installer (QUILL-Audio-Studio-Setup-Shared-<version>.exe). It makes sure the shared QuillVille Runtime is present (installing it only if it is not) and then installs the Studio to its own folder with a Start Menu group (including a User Guide shortcut) and an uninstaller. Your data lives in the shared Quill store in your Windows profile (%APPDATA%\Quill), the same store QUILL, Quill Radio, and QUILL Cast use. Uninstalling never deletes that shared data, and never removes the shared runtime while another Quill app still needs it.

Windows SmartScreen may warn on first run because this release is not code-signed; choose “More info” then “Run anyway”.

The portable zip

Extract the full portable zip (QUILL-Audio-Studio-Portable-Lean-<version>.zip) anywhere - even a USB stick - and run QuillAudioStudio\QuillAudioStudio.exe. This edition needs no runtime download: it bundles its own genuine, unmodified copy of Python and the offline speech engines, so it runs with no installation and no internet. The portable switch is a data folder next to the exe that contains a storage-mode.json marker file holding {"mode": "portable"}. When that folder and marker are present, all settings, voices, downloaded engines, and your book list live inside the app folder, so the whole studio travels with you. The portable zip ships this marker already in place; the installed copy ships no data folder and uses the shared %APPDATA%\Quill store instead.

Both packaged flavors bundle ffmpeg and the mpv player engine in a tools folder next to the exe, so audiobook building and high-fidelity playback work out of the box.

Downloading the QuillVille Runtime

The installer and the portable zip both carry everything the Studio needs, so you should never see this. If the shared runtime has gone missing from an installed copy - removed by hand, say - the Studio offers to download it again, about 230 MB, one time. This download always shows a fully accessible progress bar that works with NVDA, JAWS, and Narrator, whether the download was triggered by the installer or by the app’s own first launch. Progress is announced as a percentage, so you always know how far along it is and never face a silent wait. Once the runtime is installed, this app and every other QuillVille app start instantly, and you are never asked to download it again unless every Quill app has been removed.

A note on antivirus

The Studio’s launcher is now a genuine, tiny native program, and the bundled Python is the official unmodified build. Earlier versions used a renamed and modified copy of Python’s pythonw.exe as the launcher, which some antivirus tools flagged as a false positive. That pattern is completely gone, so the Quill apps are far less likely to be flagged. If an antivirus tool ever does flag a Quill app, it is a false positive; the downloads come from the project’s official releases.

Running from source

From a checkout of the repository:

run-quill-studio-safe-mode.bat launches with Safe Mode on (see “Safe Mode” below).

The home window

The Studio opens as a plain window with a menu bar. Most work happens in modal surfaces (the Studio Wizard, the Chapter Workbench, and focused dialogs), which you launch from the menus. The home window stays intentionally quiet so your books are not front-and-center unless you choose to open one.

From top to bottom:

Start points:

The status bar

The status bar reads “Ready - use the menu bar to begin” when idle. During a long run it carries per-file progress, and by default the Studio also speaks the 25, 50, and 75 percent milestones so you can follow an overnight narration from another window (turn this off in Preferences).

You can read the bar rather than wait for it to speak. Press F6 to move focus into it, then Left and Right to move between its cells:

Press Enter to act on the cell you are on, use the context menu (Application key, or Shift+F10) for what that cell offers, and press Escape or F6 again to leave the bar and return to the window. View > Show Status Bar hides or shows it, and the Studio remembers your choice.

The Progress text is also written into the system-tray tooltip, so a long run is still reviewable when the window is minimized to the tray.

The library window

The home window does not show your books by default. Open View > Library Window… (Ctrl+Alt+Y) to browse your library in a dedicated window.

The library fills in as you work: every book you open in the Chapter Workbench joins it, and you can shape it yourself with Favorites and folders. Books are grouped into four built-in collections and any folders you create:

In the Library Window, expand and collapse the groups with Left and Right. Press Enter on a book to open it in the Chapter Workbench. The context menu (Application key, or Shift+F10) is keyboard-complete on both books and folders: Open, Reveal in Folder, Favorite (toggle), Move to Folder, New Folder, and Remove. Reveal in Folder opens your operating system’s file manager (Windows File Explorer, or the macOS Finder) with the book file selected, so you can find it on disk. Remove takes the book out of your library but never touches the file on disk, and says so. The tree remembers which book you had selected when the library reloads.

The Studio wizard

The Studio wizard

Studio > Open Studio Wizard… (Ctrl+N) opens the wizard. Its first page asks the one question that matters - what would you like to make? - and the following steps adapt to your answer. The wizard remembers which journey you used last and pre-selects it.

Wizard mechanics, the same on every page:

The menu items Narrate Documents…, Build From Recordings…, and Edit a Book… are shortcuts into the same wizard (Edit a Book goes straight to a file picker and then the Workbench).

Journey 1: Narrate Documents

Seven steps: Start, What should I read?, Who should read it?, How should chapters work?, Output and diagnostics, Tell me about the book, Review and start.

What should I read?

Who should read it?

How should chapters work?

Output and diagnostics

Tell me about the book

Review and start

The summary reads every choice back in plain sentences; press Back to change any of it. Save a job file… pins this exact run to a portable .quilljob (see “Job files”). Press Start and the run begins in the background: per-file progress in the status bar, spoken milestones at 25, 50, and 75 percent, and the finished book lands in Your books. Cancel (or Escape) stops a run cleanly - the file being synthesized right now finishes first, so you are never left with a half-written audio file, and nothing new is started after it. The diagnostics log records the same chunk-by-chunk detail the progress dialog shows, so reading the log after a run tells you as much as watching it did.

Journey 2: Build From Recordings

Four steps: Start, Where are the recordings?, Tell me about the book, Review and start.

Journey 3: The Chapter Workbench

Open a book three ways: Edit a Book… (a file picker), Studio > Open Book File… (Ctrl+O), or press Enter on a book in Your books. A chaptered MP3, M4B, or M4A opens with its chapters; a file with no chapter markers opens as one big chapter, ready to carve.

Chapters for a lecture, a meeting or any recording

The Workbench is not only for audiobooks. Studio > Find Chapters in a Recording… (Ctrl+Shift+R) asks for any MP3, M4A or M4B – a two-hour lecture, a recorded meeting, a talk somebody sent you – opens the Workbench on it, and starts Propose chapters from silences straight away.

  1. Pick the recording and press Open.
  2. Choose how quiet counts as silence (-30 decibels suits most speech; -40 a noisy room) and how long a pause must last (0.8 seconds catches a speaker drawing breath between topics; 2 or 3 seconds only the real breaks), and press OK.
  3. The scan runs in the background; you can keep listening. Each new chapter starts in the middle of a silence and is titled Proposed chapter 1, Proposed chapter 2 and so on, so a guess never passes for a name somebody chose.
  4. Review them: Enter plays one, Hear boundary plays the moments around its start, Set start to playhead, Split at playhead and the nudge buttons move a boundary, Merge into previous removes one, and Rename names it.
  5. Save writes the chapters (an MP3 in place, touching only its tags; an M4B as a new file), or Export chapters… writes a chapter file. Open the recording again and the chapters are there.

If the recording already has chapters of its own, you are asked first: Keep mine, add proposals (the default) keeps every chapter you had and adds a proposed one only where a silence is at least ten seconds from yours; Replace with the proposal swaps the list; Cancel changes nothing. While the scan runs the button reads Stop proposing chapters; press it, or close the Workbench, and the list stays exactly as it was. Restore original takes back a whole proposal. A long recording is given time in proportion to its length, so an all-day recording is scanned to the end. FFmpeg is needed; without it you are told so.

Sleep Timer (Ctrl+Shift+T) and Play Queue (Ctrl+Shift+Q) now work inside the Workbench too, so you can set one while a book plays there.

The chapter list

Each row reads in full: “3. The Long Road - starts 1:02:03, runs 12:40”. Press Enter on a chapter to hear it. Selecting a chapter loads its title into the Chapter title field - type a new one and press Enter (or the Rename button).

The player

The built-in player anchors everything. All controls are buttons with access keys, fully reachable with Tab and screen-reader-friendly:

The player also remembers your volume and mute choice per book - turn one book down to 40% and mute another, close them, and each reopens at the level you left it.

Playback uses the bundled mpv engine when it is available (gapless audio, exact seeking, instant chapter jumps even on eight-hour books) and quietly falls back to the Windows media engine when it is not - a broken engine can never take playback away.

While a Workbench is open, your media keys drive the active player: Play/Pause, Stop, Next chapter, and Previous chapter work from any window. With no Workbench open they are silent. (Media keys are a Windows feature.)

Which way the slider keys go (Slider Keys)

On the Volume slider, the arrow keys follow the family’s Slider Keys choice, made in Preferences (Ctrl+Comma) with the Slider Keys… button:

Right is always more and Left always less. It is one choice for every Quill app with a volume slider – QUILL Studio, Quill Radio, QUILL Cast and Quill Media Player – so changing it here changes it there at the next key press. Each key press also tells your screen reader the new value. Ctrl+Up and Ctrl+Down, the volume keys that work from anywhere in the apps that have them, are not changed.

Chapter surgery

All by ear:

  1. Play until you hear where a boundary belongs, and pause there.
  2. Split at playhead - the chapter is cut in two exactly at the playhead. This is the fix for a book whose chapters landed in the wrong places.
  3. Set start to playhead - retime an existing boundary: select the chapter, park the playhead where it should start, press. The timeline always stays contiguous.
  4. Merge into previous and Restore original (one press undoes every edit) round it out.

Analysis helpers

Both propose, never impose - proposals land in the list for review, and Restore original undoes them.

Import, export, and split

Book details and saving

Title (album), author, narrator, genre, and year are edited right in the dialog.

Saving is honest about physics:

Long saves run in the background so the window stays responsive.

Publish…

Opens the Publish dialog for this book - save your chapter edits first. See “Publishing” below.

Voices

Engines

The Speech Hub

Voices > Speech Hub (Voices and Engines)… (Ctrl+Shift+H) is the one place to see and set everything: offline voices on one tab, cloud voices on another, and the speech-recognition (dictation/transcription) engines and models alongside. Pick an engine and voice, adjust rate, volume, or speed, preview, and Set as Default. Voices you configure here are shared with QUILL - and the hub’s “export to audio” action opens the Studio Wizard, because in this app that is what export means.

Pronunciation dictionaries

Voices > Pronunciation Dictionaries… opens the same manager QUILL uses to teach the speech engines how to say tricky words - names, acronyms, invented terms. Each entry maps what is written to how it should be spoken, and dictionaries apply as a silent text transform to both narration runs and live Read Aloud. Because this is shared QUILL data, a correction you make here is honoured everywhere the shared store is used.

Voice previews

Every preview speaks the same standard phrase, so voices are directly comparable. When a bundled sample ships for a voice, the preview plays instantly - even before the engine is downloaded. When no sample ships but the engine is installed, the Studio synthesizes the phrase live with the real voice; if that synthesis is taking a moment, you hear “Generating preview, please wait” so silence never leaves you guessing. If neither a sample nor an installed engine is available, the status line says “Download this voice to hear a preview.” Starting a new preview always stops the previous one; previews never overlap.

Generate captions from audio or video

Voices > Generate Captions (Offline)… transcribes an audio or video file into a .srt or .vtt caption file entirely on your own machine - nothing is uploaded. Point it at a recording, a finished chapter, or a video, and it writes captions alongside. Press Ctrl+Shift+C to start it. It uses the same speech-recognition engine and models as the Studio’s other transcription work, so if no model is installed yet it offers to open Manage Speech Models first. The next section explains the engines and walks through an example.

Speech recognition: the engines that listen

Narration is the Studio speaking. A few features need the opposite: the Studio listening to a recording and writing down what was said. Two features do that, both on your own computer: Generate Captions (Offline) (Ctrl+Shift+C), and the Workbench’s Propose AI titles…, which writes down the first minute of each chapter. The Studio has no dictation and no voice commands; for typing by voice, use QUILL Transcribe.

The listening is done by a speech-recognition engine and a model, which is the file of speech knowledge the engine uses. There are three engines to choose from:

Every engine keeps the audio on your computer. Nothing is uploaded, and the Studio does not use online speech services for captions. Vosk, an engine older guides mentioned, is no longer offered for speech recognition.

Choosing an engine and downloading a model

  1. Press Ctrl+Shift+M (Voices > Manage Speech Models…). It opens the Speech Hub on its offline speech-recognition tab.
  2. Choose an engine, then a model. Each model row says its size and what it can do, such as “detects the spoken language; never invents text from silence”, before you download anything.
  3. Download it. Progress is announced, and Cancel works.

If you would rather be walked through it, Voices > Download Optional Components… (Ctrl+Alt+Shift+D) has a row called Dictation (offline speech). Choose it and you are offered the three engines in the order above, recommended first, then a model. Test on that row proves the engine works once it is installed.

The Studio shares its speech settings with QUILL, so an engine you choose in either one is used by both. If the engine you chose is not ready, the Studio uses Whisper.cpp instead, so captions still work.

Example: captions for a finished chapter

  1. Press Ctrl+Shift+C (Voices > Generate Captions (Offline)…).
  2. If no model is installed yet, the Studio asks “No offline speech model is installed yet. Open Manage Speech Models to download one?” Choose Yes, download Whisper.cpp’s Small model, close the window, and press Ctrl+Shift+C again.
  3. Choose the audio or video file, such as chapter 3 of your book.
  4. Wait while it works. The Studio tells you how it is getting on, and says when it has finished.
  5. Choose the caption format, SubRip captions (.srt) or WebVTT captions (.vtt), then choose where to save. The file is named after the recording to begin with.

Limits

Convert audio between formats

Voices > Convert Audio… changes audio files between formats and pulls the audio track out of video files. It uses the ffmpeg the Studio already bundles, so there is nothing extra to install, nothing leaves your machine, and it works in Safe Mode.

The run happens in the background with several files at once, so the window stays responsive, and Cancel works. Progress appears in the status bar’s Progress cell and the tray tooltip, and the spoken summary at the end names any files that failed rather than reporting success for all of them.

Voices > Convert from URL… takes a link - YouTube and the many other sites the downloader supports - fetches its audio, and hands it to the converter. The downloader is not bundled: the first time you use this, the Studio explains what it is about to install and asks, and it reminds you that you are responsible for having the right to the audio you download. Unavailable in Safe Mode.

Downloading voices, engines, and components

Everything heavy downloads on demand, with progress and a working Cancel:

If a component install fails, the Studio offers to save a diagnostics bundle - a small, redacted zip you can send to support so the failure can be read without exposing anything private.

All downloads are disabled in Safe Mode.

AI features

Set Up AI

AI > Set Up AI… runs a short, jargon-free wizard: choose how AI should run - a cloud provider with your own key (paste it, test it) or a local model via Ollama (nothing leaves your machine) - and you land ready to go. Nothing is applied until you confirm, and you can cancel at any point with nothing lost.

One configured provider powers three things in this app:

All AI features are unavailable in Safe Mode.

Publishing

Publish a Finished Book

Book Tools > Publish a Finished Book… asks for the book file (pre-selecting the book highlighted in Your books) and opens the Publish dialog. The Workbench’s Publish… button opens the same dialog for the book you are editing. Three explicit, consent-first paths:

Make a Podcast Feed From a Folder

Book Tools > Make a Podcast Feed From a Folder… runs a whole show from one folder. Every MP3, M4B, or M4A master becomes an episode (oldest file = episode 1), with its title from its tags or your per-episode override and your per-episode description, edited in an accessible list. The show settings (title, author, description, media URL base, feed URL, cover URL) persist in the folder itself, so after each new build one press of Write feed.rss now regenerates the complete feed. Write show notes page produces an accessible show-notes.html beside it. Everything here is local file IO; uploading is the SFTP destination’s job.

All publishing is unavailable in Safe Mode.

ACX Compliance Check

Book Tools > ACX Compliance Check… measures any audio file - not just books built here - against the ACX submission window: integrated loudness (target -20 LUFS plus or minus 3), true peak (max -3 dBFS), and noise floor (max -60 dBFS). A passing file is told so plainly; a failing one gets a concrete recommendation per criterion (“make the recording 5.8 dB quieter”). The measurement runs in the background and needs ffmpeg; if ffmpeg is missing the app points you at Voices > Get FFmpeg… first.

Job files

A .quilljob file pins an entire run - folder, voices, rotation and casting, chapters, output, mastering, and book details - in a small, portable, hand-editable text file.

Keep one job file per project, or edit one in any text editor between runs. Loading a job from the Studio menu behaves exactly like loading it in the wizard - just one dialog sooner.

Book Tools

Two listening aids live on the Book Tools menu:

Mute (Ctrl+M) is also on the Book Tools menu - same as the Mute button in the player.

The Studio menu

Two items on the Studio menu track your listening across launches:

Preferences

Studio > Preferences… (Ctrl+Comma):

These preferences are stored in a small app-local file, so the shared settings QUILL wrote stay exactly as QUILL wrote them. Speech settings (engine, voices, rates) deliberately stay in the shared store - configure a voice here and QUILL reads aloud with it too.

Where the Studio’s own sounds play

The Studio makes short sounds of its own, such as the ones that mark a narration run starting and finishing. You choose where they play, and you can turn them off.

After you choose, one sound plays on the new device, so you know straight away where it went.

If the device you chose is unplugged or asleep, you still hear every sound, on the system default, and the Studio tells you once. When the device comes back, the sounds go back to it by themselves.

This changes the Studio only. Your other QUILL apps keep their own choice, unless you have checked “Share these choices with my other Quill apps”, which copies a change here to the others that share. Your screen reader is never moved.

The system tray

QUILL Studio’s icon is three white-and-gold waveform bars on a dark slate tile. If you have used an earlier build, this is new: the Studio used to share Quill Radio’s blue broadcast-wave icon, so on a desktop with more than one QuillVille app installed several of them looked identical. Every app in the family now has its own - the same rounded tile shape and the same gold accent throughout, but its own colour and its own picture each.

While minimized to the tray the Studio keeps running - a long narration continues with the window tucked away. Use Studio > Minimize to Tray (Ctrl+Alt+T) to send the window there without closing it. Right-click (or keyboard-invoke) the tray icon for:

Double-click the tray icon to bring the window back.

Announcements: how the Studio tells you things

Everything the Studio announces - “Ready”, a run milestone, a finished conversion, a warning - goes out on four channels at once, so you hear or feel it in whichever way you actually work:

Announcements are also recorded as they happen, so a message that went past while you were reading something else is not simply gone.

These settings are shared with QUILL rather than repeated in the Studio’s own Preferences, so set them once in QUILL’s Preferences (Accessibility) and they apply here too: whether to show announcements in braille, the braille style (the full spoken wording, or a compact position-first form), how long an identical braille message is held back, whether an error stays on the display instead of flashing past, whether the companion apps play sound cues, whether a cue stands in for speech while Quiet Mode is on, and which severities interrupt speech.

Checking for updates

Help > Check for Updates… compares your version with the newest Quill release, works out which download matches the flavor you run (the installer for an installed copy, the portable zip for a portable one), and fetches it with spoken progress. Then choose Install and restart now and the Studio does the rest itself: it applies the update - unpacking the new portable files over your folder, or running the installer quietly - and relaunches, keeping every setting, voice, and saved listening position. There is nothing to unzip and no folder to swap by hand.

Help > About shows your version with a build number, such as 2.0.0 (build 2). The build number tells you which build of a version you have: when a fix comes out without a new version number, it is a newer build, and Check for Updates offers it.

All the Quill apps are published from one place, and each one recognizes its own download, so an update to Quill Radio is never offered to the Studio and each app updates on its own schedule. The automatic startup check (on by default, throttled to once a day) is silent unless it actually finds something.

The Command Palette

Help > Command Palette… (Ctrl+Shift+P) lists every Studio command in one searchable list: the three journeys, Open Job File, Publish, the podcast feed, the ACX check, Sleep Timer, Mute Playback, Play Queue, the Speech Hub, Pronunciation Dictionaries, Generate Captions, Convert Audio, Convert from URL, model and component downloads, AI setup, Preferences, and Check for Updates. Type a few letters, arrow to the command, press Enter.

Quillins

Quillins are QUILL’s small, sandboxed, permission-gated add-ons. They run in QUILL, Quill Radio, and QUILL Cast today; The Studio does not offer a Quillins menu yet. The groundwork is in place - an add-on can declare that it contributes an extra step to the Studio’s audio processing, such as a loudness pass at the mastering stage, and a sample add-on demonstrates exactly that - but the Studio does not load add-ons in this version. When it does, they will be off in Safe Mode like everywhere else.

Keyboard reference

Action Key
Open Studio Wizard… Ctrl+N
Minimize to Tray Ctrl+Alt+T
Open Library Window Ctrl+Alt+Y
Open Book File Ctrl+O
Preferences Ctrl+Comma
Command Palette Ctrl+Shift+P
Move focus to the status bar (and back out) F6
Open selected book (Library Window) Enter
Remove selected book from library (Library Window) Delete
Play selected chapter (Workbench list) Enter
Rename chapter (Workbench title field) Enter
Mute (player / shell) Ctrl+M
Media Play/Pause (when a Workbench is open) Media key
Media Stop (when a Workbench is open) Media key
Media Next chapter (when a Workbench is open) Media key
Media Previous chapter (when a Workbench is open) Media key
Studio menu Alt+S
Book Tools menu Alt+B
Voices menu Alt+I
AI menu Alt+A
View menu Alt+V
Help menu Alt+H
What’s New (the changelog, in your browser) Ctrl+Shift+F1
Build From Recordings button (main window) Alt+R
Your books list (main window) Alt+Y

Every button and field in the wizard, the Workbench, and the dialogs also has an access key (underlined letter), reachable with Alt plus that letter while the surface has focus.

Safe Mode

Set the environment variable QUILL_SAFE_MODE=1 or pass --safe-mode (or use run-quill-studio-safe-mode.bat). Safe Mode disables AI features, publishing, and component downloads; everything local - narration with installed engines, the Workbench, saving - keeps working. Use it to isolate a problem or to run on a machine where network features are unwelcome.

Sharing data with QUILL

The Studio reads and writes the same data store as QUILL, Quill Radio, and QUILL Cast: %APPDATA%\Quill for an installed copy, or the data folder next to the exe (marked by a storage-mode.json file holding {"mode": "portable"}) for a portable one. Shared between the apps:

Only the handful of window-behavior preferences above are app-local. Uninstalling the Studio never deletes the shared data.

Getting help

Support is run by Community Access, and the address is support@community-access.org. A person reads it, and replies come back by email.

The quickest way there is Help > Get Help from Support… (Ctrl+Alt+F2), which every app in the family answers with the same form: what kind of message this is, a subject, what happened, and – if you want an answer – an email address to reply to. What you expected and how to reproduce it are optional, and worth more than anything else when you can give them.

Press Send and your own mail program opens with the whole message already written, addressed to support, with QUILL Studio’s name and version and your Windows version filled in at the bottom. Nothing is sent until you send it there, so you can read it over, add anything, or change your mind.

If this machine has no mail program set up – webmail only, say – the app puts the whole message on your clipboard and tells you the address, so nothing you typed is lost. And writing to support@community-access.org yourself always works just as well: there is no form you have to use. Say which app you were using and what happened.

What’s New

Help > What’s New (Ctrl+Shift+F1) opens QUILL Studio’s changelog in your browser: everything that has changed, newest first, grouped by subject so you can move through it by heading. Every app in the QuillVille family has the same command.

Licences and notices

QUILL Studio is free and released under the MIT License. It also includes software, data and sounds from other projects, each under its own licence.

To read them, open the Help menu, choose About QUILL Studio, and then choose the Licences and Notices button. The list opens as a plain text file, with one heading for each component: what it is, its licence, who holds the copyright and what the licence asks of us. The full licence texts are at the end.

The same file, THIRD-PARTY-NOTICES.txt, and QUILL Studio’s own licence, LICENSE.txt, are also in the folder where QUILL Studio is installed or unpacked, so you can open them without starting the app.

Troubleshooting

Two Help items are worth knowing before anything else goes wrong. Help > View Log… opens the Studio’s own log, so you can read what happened during a run instead of guessing. Help > Save Diagnostics… writes a small, redacted zip - the log plus what the Studio can tell about your machine and settings, with anything private scrubbed - which is exactly what to attach to a bug report. Help > Get Help from Support… (Ctrl+Alt+F2) writes to a person for you, already tagged with this app’s name and version.

Screenshots and the Screenshot Inspector (unreleased)

The new Capture menu keeps screenshot work separate from your book library. It does not record sound or change your audio devices.

Choose Capture screen to select a named visible window, one display, the full desktop, an active window after a delay, or a guided region. For the easiest first capture, choose the whole named window: no size settings are needed. Guided regions use familiar portions of a window or display; exact coordinates are optional advanced settings. Displays left of or above your primary display can have negative coordinates. Minimized windows must be restored first.

By default, the window list aims to stay short by listing top-level task windows (similar to what Alt+Tab shows). Use Show all windows (advanced) when you need tool windows or helper dialogs that are not normally listed. If you need more than a window title to decide, use Window properties… for the selected window. If the window list shows only Desktop/Display targets, update: a preview build had a regression that hid named windows.

Refresh windows and displays when the list is stale; a missing target remains unavailable rather than silently becoming a desktop screenshot.

Choose an absolute save folder and a delay, then activate Start capture. For the active-window option, switch to the intended application during that delay. A selected named window is captured directly. Cancel pending capture cancels a capture that has not started. A capture already in progress may finish.

Screenshot active window now and Screenshot full desktop now are immediate actions. Repeat last selected target uses the target, folder and delay you chose in Capture screen. It asks you to choose a target first when none has been selected this session.

Screenshots are saved as uniquely named PNG files, with a JSON verification report and readable Markdown report. File decoding, dimensions and the file hash are objective checks. They do not prove that the intended content is visible or private. Protected content can still be blank. Screenshot Inspector opens the latest screenshot; Open saved screenshot opens a saved PNG for review.

Guided regions: no pixel calculations required

Choose Guided region from Target. In Region source, choose the window or display containing the material. In Capture portion, start with Whole source (recommended; keeps all visible context). Studio calculates the screen position and size.

For a smaller area, choose Top half, Bottom half, Left half, Right half, or Middle quarter. These describe portions of the source rectangle, not recognized controls. For example, the top half may include a dialog heading while excluding its buttons. If you do not know which part contains your content, keep Whole source or capture the whole named window instead.

Read Capture plan and guidance before Start capture. It explains the source, exclusions, possible clipping, and next review steps. Guidance is selectable text, and changed selections are announced. The content area scrolls while Start capture and Cancel remain outside it. Use Tab to visit labeled controls; native choice controls use arrow keys.

A guided region captures an area of the desktop. Overlapping windows and notifications can appear in it. Direct named-window capture is the better choice when you need the whole application window. Keep a guided region’s source still during the delay. If it moves, resizes, disappears or changes process, refresh and choose again; Studio will not silently switch sources.

Enter exact coordinates (advanced) is optional. Enabling it starts with the current guided portion’s values. Left and Top locate its upper-left corner; Width and Height measure its size in physical screen dots. A screen left of or above your primary display can have negative Left or Top. Studio rejects values beyond the desktop, but valid numbers alone cannot prove that text is readable or the intended dialog is complete.

After capture, use local OCR to check expected text. If you approve AI sharing, choose the framing preset and ask “Is the whole dialog visible, including its buttons?”, “Is any text cut off?”, or “What should I change before sharing?” AI gives uncertain advice; no setting guarantees semantic correctness.

Screenshot commands and default in-app shortcuts

These shortcuts operate inside Studio. System-wide screenshot keys are separate, opt-in assignments; the Capture menu displays the current in-app bindings.

Action Default in-app shortcut
Capture screen: choose source and delay Ctrl+Alt+Shift+S
Open saved screenshot Ctrl+Alt+Shift+O
Screenshot Inspector Ctrl+Alt+Shift+I
Cancel pending capture Ctrl+Alt+Shift+X
Screenshot active window now Ctrl+Alt+Shift+F5
Screenshot full desktop now Ctrl+Alt+Shift+F6
Repeat last selected target Ctrl+Alt+Shift+F4
Screenshot global hotkeys configuration Ctrl+Alt+Shift+H

Immediate full-desktop capture includes every display. Repeat uses the last source/folder/delay selected in this session; there is no repeat recipe after a fresh launch until you select one. A previously approved automatic-AI setting also applies to screenshots triggered by global keys.

Global screenshot hotkeys

Open Capture > Screenshot global hotkeys. Select active-window capture, full-desktop capture, repeat-last-target or cancellation, choose Assign and press your preferred combination, then Save. Clear removes a binding. These keys work while Studio is in the tray or another application has focus, provided Windows grants the registration. No global screenshot key is taken by default. An unavailable combination is reported so you can choose another. Safe Mode leaves them inactive. Test your chosen keys with your screen reader and other applications.

Local OCR and image-grounded AI chat

The Inspector shows the exact image source, hash, file checks and a selectable conversation. Read text locally runs the existing offline OCR service. Confidence is reported only when the engine supplies it; OCR availability and recognition accuracy vary.

Choose a Prompt style. Screenshot-specific presets cover orientation, controls, text/errors/tables, capture problems, possible sensitive information, alt text and charts. The shared image styles and your custom prompts are available too. Editable prompt instructions lets you add detail or replace the preset, and Your question or additional instructions accepts a separate question. Manage prompts adds, edits or removes reusable prompts in the shared library.

Configured AI providers. Screenshot AI uses QUILL’s shared AI connection settings, model selection, provider-specific credentials and vision transport: OpenAI, Google Gemini, Anthropic Claude, OpenRouter, Ollama (local or cloud), and compatible custom endpoints. Select the provider and an image-capable model through the shared AI setup. Studio does not require Ollama or maintain a separate provider configuration. Provider/model image support still applies; a text-only model cannot inspect screenshots. Changing the connection pauses previously approved automatic uploads.

Choose Ask AI to approve sending the complete screenshot to the named provider, model and endpoint. Private information is not automatically redacted. A privacy-review prompt is a review of an image already sent to that provider, not a guarantee that sharing was safe. AI Off and Safe Mode block AI; local capture and verification continue to work.

The reply appears in the same conversation. Ask follow-ups about that image without capturing again. The image bytes are checked against the original hash before each request. Editing the saved image causes inspection to fail rather than silently answering about a different artifact. You can keep typing while a reply is pending, but a second request waits until the first finishes.

Save report exports objective evidence and clearly labeled unverified observations. Export description saves a text description and conversation, and Copy image copies the PNG to the clipboard. Closing the Inspector cancels unsent chat work; a request already sent may still finish. AI and OCR observations need review even when the file checks pass.

Optional automatic AI

Automatically inspect future captures with AI is off by default. Enabling it asks for separate approval to send every future user-triggered Studio screenshot, including full-desktop captures, to the selected connection. Use for automatic AI saves the current prompt instructions for those requests.

Changing the provider, model or endpoint pauses automatic analysis until you approve the new connection. AI Off and Safe Mode override this setting. Clearing the checkbox stops future and queued unsent automatic requests; it cannot recall a request already sent. Capturing remains an explicit user action. The result is available in Screenshot Inspector and the report.

This screenshot milestone does not yet provide video recording, screen/audio mixing, scrolling screenshots, UIA-element selection or annotation/redaction editing. Those are later production steps. Release acceptance still requires JAWS, NVDA, Narrator, braille, mixed-DPI and installed/portable testing.

Worked example: an error dialog for a support request

  1. Open the application and error dialog you want to document. Avoid showing passwords, private messages or unrelated personal material.
  2. Open Capture screen and choose that named window. If a dialog has its own window entry, choose its title. Use Refresh windows and displays if it is missing; restore minimized windows first.
  3. Keep the whole window for the first attempt. Choose an absolute save folder and enough delay to return to the application, then Start capture.
  4. Open Screenshot Inspector. Review the source name and file evidence. Read text locally and check that the expected error code and message appear. Missing OCR text might mean recognition failed; it does not by itself prove that the capture is wrong.
  5. If you want AI help, choose the text/errors preset, add “Preserve the exact error code; mark uncertain characters,” and enter your question. Ask AI presents the configured destination before sending. Declining leaves the screenshot saved locally.
  6. Ask a follow-up such as “Are any buttons or message lines clipped?” The same image is used again. Capture a new image when the application changes; a follow-up does not inspect the live desktop.
  7. Save report and Export description. Copy image only when ready to paste it into the intended destination. Review the exported text and image before sharing. The evidence report labels AI/OCR observations as unverified.

Worked example: use your configured AI provider

Use AI > Set Up AI and QUILL’s shared connection controls to choose OpenAI, Google Gemini, Anthropic Claude, OpenRouter, Ollama or a compatible custom service. Configure the endpoint, credential and an image-capable model there. The Screenshot Inspector uses that active shared connection; it does not have a separate provider selector or separate key store. Switching providers in shared settings affects other QUILL features that use the same connection.

Open a saved PNG or make a new screenshot. Choose a prompt, edit its instructions, type a question and activate Ask AI. Check the provider, effective model and endpoint in the consent message. Local OCR works independently of a cloud key. A provider being configured does not prove that every one of its models accepts images. Provider errors should be resolved through the shared connection/model settings, rather than by sending the image to another service without approval.

Customize a reusable prompt and keep the conversation grounded

Choose a built-in style for a starting point. Add your purpose in Editable prompt instructions, for example: “I am writing a bug report. Separate the exact visible error text from your explanation. Describe positions as top/bottom/left/right; do not invent keyboard shortcuts.” Add a separate question such as “What information should I include in my report?”

Edits in the prompt field apply to that request. Use Manage prompts to add or edit a reusable custom prompt in the shared image-prompt library. Choosing another style fills the editor with that style, so save reusable wording through Manage prompts before changing styles. Use for automatic AI explicitly saves the current instructions for future automatic requests; editing a manual question does not grant automatic-sharing consent.

Follow-ups include earlier observations about the current image. A provider may misunderstand the text or layout. Ask it to identify uncertainties and verify important strings locally. Replacing or editing the PNG changes its hash; reopen it as a new review artifact instead of continuing under the old verification.

What the evidence proves

The PNG is the saved screenshot. The same-named verification JSON is machine-readable; the verification Markdown is readable text. A description export contains file evidence and recorded observations. Full decode, dimensions and SHA-256 establish that the saved image is decodable and identify its bytes. They do not establish privacy, completeness, visual quality, accessibility or that the intended dialog is visible. “Uniform pixels” can indicate an empty-looking result; it cannot identify every protected or failed capture.

AI and OCR findings are separate from objective checks. AI does not automatically fix, redact, annotate or publish an image. This milestone exports PNG; JPEG conversion, editable annotation layers and comprehensive evidence bundles are still pending.

Screenshot troubleshooting

Completion status and next steps

The full screenshot PRD is not complete. UIA control selection, content-aware regions, scrolling/sequence capture, comparison, named workspaces, keyboard crop/zoom, annotation/redaction and Capture and Dictate remain. Actual JAWS/NVDA/Narrator/braille usability, mixed-DPI hardware, live-provider privacy and installer/portable acceptance also remain. The requirement coverage audit, docs/design/quill-studio-screenshot-coverage.md in QUILL’s source, lists each one. Video demonstrations with optional sound are a separate later milestone.