Subject: Emacspeak discussion list
List archive
- From: Saad Attieh <saad_attieh AT me.com>
- To: Bart Bunting <emacspeak AT emacspeak.net>
- Cc: Victor Tsaran <vtsaran AT gmail.com>, Doustdar Parham <parham90 AT gmail.com>, Emacspeaks <emacspeak AT emacspeak.net>
- Subject: Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try
- Date: Thu, 24 Sep 2026 17:21:25 +0300
I'm looking forward to eventually migrating from Emacspeak to Emacsvox.
I'll look into the transition this coming week and let you know how it goes. So far, I've found that letting Windows handle the audio is the most responsive setup.
On another note, I'm also looking into using my screen reader, NVDA, as a speech server. It's a bit crazy, but it would let Emacs and NVDA interrupt each other, and it would let me inherit a bunch of NVDA features, such as sending system audio to one channel and the screen reader to the other, or even simple global shortcuts like copying the last spoken phrase to the clipboard. The downside is that it might hurt responsiveness, since the chain would go from Emacs to Omnivox to NVDA to Eloquence, and NVDA is written in Python, which isn't the fastest. Still, it's something I'm interested in exploring.
On 24 Sep 2026, at 2:25 pm, Bart Bunting <emacspeak AT emacspeak.net> wrote:
Hi Saad,
Thanks for taking the time to write. It’s great to hear that you’ve been using Omnivox regularly with Emacspeak and Eloquence on WSL.
Emacsvox is tightly integrated with Omnivox, and I think you’ll get the fullest experience using them together. I’ve certainly found this the most responsive combination, with Windows handling the audio.
When you get a chance to try Emacsvox, I’d be very interested to hear how the transition goes. Let me know if you have any issues and I’ll do my best to assist.
Regards,
Bart
Saad Attieh <saad_attieh AT icloud.com> writes:Just wanted to write in and say thanks.I’ve been using emacspeak with omnivox solidly, for the past 2 to 3 weeks now. Irun Emacspeak on WSL and pipe to eloquence on my windows via omnivox. I diduse an LLM to connect everything up. I am looking forward to at some pointmigrating from Emacspeak to Emacsvox.Regards,SaadSent from my iPhone (excuse typos)Saad Attiehsaad_attieh AT me.comhttp://saad.aiOn 24 Sep 2026, at 8:48 am, Victor Tsaran <emacspeak AT emacspeak.net>wrote:I see. Thanks.On Wed, Sep 23, 2026 at 1:01 PM Parham Doustdar <parham90 AT gmail.com>wrote:Hi Victor,You need Emacsvox (which would be the Emacspeak equivalent) and youalso need Omnivox (which would be the Swiftmac equivalent), if thatmakes sense.HTH.On 23 Sep 2026, at 21:59, Victor Tsaran (via emacspeak Mailing List)<emacspeak AT emacspeak.net> wrote:Thanks for the explanation.So, in the end, do I only need Omnivox or both Emacsvox andOmnivox?--- --- --- ---Find my music onYoutube: http://www.youtube.com/c/victortsaranSpotify: https://open.spotify.com/artist/605ZF2JPei9KqgbXBqYA16Band Camp: http://victortsaran.bandcamp.comOn Tue, Sep 22, 2026 at 11:57 PM Bart Bunting<bart AT bunting.net.au> wrote:Hi Victor,Thanks for pointing this out. I had let the published manual fallbehind the repository, and the Mac and Linux instructions weretoo easy to miss among the WSL material. I have now pushed theupdated README and republished the manual. Sorry for theconfusion.Emacsvox needs a speech-server process. For a new installation,I recommend Omnivox. On macOS, Omnivox uses Apple’sAVSpeechSynthesizer and the system voices available throughit. Emacsvox talks to Omnivox, which handles synthesis andplayback; it does not connect directly to the Mac’s speechsystem.Emacsvox should still work with older Emacspeak-compatiblespeech servers, but I have not tested that route heavily. Omnivoxretains the traditional Emacspeak line protocol, while the newerprotocol used between Emacsvox and Omnivox is significantlydifferent and more extensive. Many Emacsvox features rely onthose additions for their full experience. For example:• Voice discovery and palettes let you browse installed enginesand voices, preview adjustments, and give a named voice anordered set of choices across engines, with fallbacks when apreferred voice is unavailable.• Aural Presentation can coordinate speech, voice changes,sounds, tones, pauses and spatial placement in a singlepresentation, including cues positioned within speech.• Selective replacement lets a newer navigation or status updatecancel obsolete speech from the same context without clearingunrelated output.• Playback feedback tells Emacs when speech reaches a markedposition or finishes, supporting features that need to coordinatewith playback.The compatibility path preserves ordinary speech and somesimpler presentation behavior, but cannot provide all of thosefacilities or the same timing guarantees. So an older server maybe usable, but Omnivox is the recommended route for the fullEmacsvox experience.On either an Intel or Apple silicon Mac, you can install and checkOmnivox with Homebrew:sh ⧉brew install bartbunting/omnivox/omnivox"$(brew --prefix omnivox)/bin/omnivox" --checkThat installs the speech server. Emacs 30.2 or newer andEmacsvox are installed separately. The Mac instructions explainhow to select the Homebrew executable for Emacsvox, includingwhen starting Emacs from Finder:https://bartbunting.github.io/emacsvox/Installing-An-Omnivox-Release-Binary.htmlThen follow the build and first-speech steps here:https://bartbunting.github.io/emacsvox/Quick-Installation.htmlFor GNU/Linux, the manual covers Debian/Ubuntu packages andthe archive or source installation routes. Omnivox normally useseSpeak NG there. The Emacsvox package requires a packagedEmacs 30.2 or newer; the Omnivox amd64 package is tested onUbuntu 24.04 and 26.04:https://bartbunting.github.io/emacsvox/Installation.htmlMy everyday setup is still WSL2, so feedback on the Macinstallation is particularly useful. Please let me know if any stepis unclear.Kind regards,BartVictor Tsaran <vtsaran AT gmail.com> writes:Hi Bart.I did not see any installation notes or configurations forEmacsvox for Macor Linux in the Github repository. Did I miss something?Do I need Omnivox for Emacsvox or the latter links to mydefault speechsynthesis manager on mac?On Tue, Sep 22, 2026 at 4:15 PM Bart Bunting<emacspeak AT emacspeak.net>wrote:Hello all,I wanted to follow up on my August announcement with themain changessince then, particularly the installation options and speechengines.I am conscious that this list is specifically about Emacspeak,and do notwant to fill it with Emacsvox announcements. Robert and Iare workingtowards a dedicated Emacsvox mailing list. In the meantime,I hope anupdate on this existing thread is useful to those whoexpressed interest.The current releases are Emacsvox 2026.9.5 and Omnivox1.12.1. Onecorrection to my original announcement: Emacsvox nowsupports Emacs 30.2and newer, so Emacs 31 is no longer required.Installation should now be considerably easier:• Windows: There is a downloadable Windows x64 setupwizard containingEmacs, Emacsvox and Omnivox. It installs for the currentuser, offers aspeech test, and creates a Start menu shortcut. Noadministratorprivileges, compiler or WSL installation are required. Thisinstaller is anunsigned preview, currently bundling Omnivox 1.12.0;testing with screenreaders and on fresh machines would be particularlywelcome. The guidedWSL2 installation remains available.• macOS: Omnivox now has a Homebrew tap, supportingboth Apple silicon andIntel Macs. Install it with brew installbartbunting/omnivox/omnivox. Thetap is already updated to 1.12.1. Emacs and Emacsvox areinstalledseparately.• Debian and Ubuntu packaging: Both projects now publishdownloadable .debpackages. Emacsvox requires a packaged Emacs 30.2 ornewer. Omnivox’s amd64package is tested on Ubuntu 24.04 and 26.04. These arerelease downloads,rather than packages in the distributions’ officialrepositories.Omnivox’s speech-engine choices have also expanded:• eSpeak NG on Windows, macOS and GNU/Linux.• Native Windows WinRT voices and macOSAVSpeechSynthesizer voices.• Optional Piper neural voices, Flite, and RuTTS Russianvoices.• RHVoice, with a separately installed compatible runtimeand voice data.• Eloquence and Software DECtalk on Windows, usingcompatible runtimessupplied by the user.• Experimental TGSpeechBox support on Windows x64.Availability varies by platform and architecture. MBROLAsupport andadditional Linux integrations are also being developed, butare not part ofthe standard release installation. Proprietary speechruntimes are notdistributed with either project.Voice installation and configuration have received quite a lotofattention. In the WSL-to-Windows setup, Emacsvox can nowinstall matchingoptional engine components and download additional Piper,Flite and RHVoicevoices from within Emacs. Downloads are verified, andinstalling a voice isseparate from enabling and applying it.The voice browser lets you search, listen to samples, comparevoices andtry eSpeak variants. The common voice editor bringstogether voiceadjustments and fallback choices, including engine-specificEloquence andDECtalk controls where supported. These managed downloadfacilitiescurrently use the bundled WSL-to-Windows launcher; otherlauncharrangements still need their own engine and voiceconfiguration. Existingusers with custom voice palettes should read the upgradenotes, as olderpalettes require conversion.There have also been improvements to speechresponsiveness, interruptionand recovery. Omnivox 1.12.1 fixes a case where speechstopped partwaythrough a line containing a link.On the Emacsvox side, changes include improvements toAgent Shell responsenavigation and speech, Notmuch performance, terminalcompletion andminibuffer feedback. Image and PDF OCR now usesPaddleOCR, withreading-order and table support. Aural Presentation also hasmoreaccessible controls for investigating a particular piece offeedback andchanging its voice or sound.Another preview feature allows Emacs to run on a remoteLinux machinewhile Omnivox synthesizes and plays speech on yourworkstation, connectedthrough SSH.The Emacsvox manual describes installation, voice setup,everyday use andtroubleshooting. Both projects remain experimental, andreports fromdifferent machines and configurations are very welcome.Until the dedicatedlist is ready, please feel free to contact me directly or use theprojects’GitHub issue trackers.My thanks again to Raman for Emacspeak and the foundationit provides, toRobert for his modernization and cross-platform work, and toeveryone whohas tried these projects or offered feedback.Kind regards,Bart<bart AT bunting.net.au> writes:Hello all,There has been some interest in Emacsvox and Omnivox,so I thought itmightbe useful to describe where the projects currently standand make themavailable to anyone who would like to experiment withthem.Emacsvox is an experimental Emacs 31 audio desktopderived fromEmacspeak:https://github.com/bartbunting/emacsvoxRobert Melton began Emacsvox as a modernization ofEmacspeak for currentEmacs and Emacs Lisp. My repository started from Robert'swork but hassincediverged substantially. I do not want to imply that Roberthas endorsedallthe directions I have taken.Emacsvox is not a drop-in replacement for an existingEmacspeakconfiguration. It requires Emacs 31 or newer, uses its ownemacsvox-*namespace, and has made some incompatible changeswhile replacingobsoleteAPIs and modernizing the Lisp.Much of my work has concentrated on current Emacspackages and workflows,including Org, Notmuch, Magit, EAT, Agent Shell, Vertico,Corfu andothers.The largest architectural experiment is Aural Presentation.Its purposeisto separate the meaning of an event or object from the wayit ispresented.A package can identify something as a heading, unreadmessage, toolresult,folded section or warning without permanently decidingwhich voice,sound,tone, pause or spatial position must represent it. Users canthen adjustthat presentation globally or for a particular package,mode, session orbuffer.Omnivox is the accompanying cross-platform speechserver:https://github.com/bartbunting/omnivoxOmnivox also began with Robert's work. I initiallydeveloped it furtherbecause I wanted responsive speech while running Emacsinside WSL2, withWindows performing synthesis and audio playback.On Windows, Omnivox supports the native WinRT voicesand eSpeak. It canalsouse a locally installed Freedom Scientific Eloquenceruntime and anoptionalSoftware DECtalk helper. On macOS it supportsAVSpeechSynthesizer andeSpeak, while GNU/Linux uses eSpeak, with Piper availableas anexperimentaloption.Omnivox retains the traditional Emacspeak line protocoland includes anadapter for upstream Emacspeak. The additional Emacsvoxprotocol isnegotiated separately. It adds facilities such as logicalvoicediscovery,structured speech and sound timelines, selectivecancellation, playbackmarkers and callbacks.These facilities make some useful behaviours possible, butthey alsointroduce considerably more complexity than thedeliberately smalloriginalEmacspeak protocol. I regard this as an experiment in adifferentdirection,not an assertion that the original design was wrong.Both projects are still at an early stage. There will certainlybe bugs,rough edges and assumptions inherited from my ownsetup. Nevertheless,theyare not merely demonstrations: I use Emacsvox andOmnivox every day as mynormal Emacs and speech environment.I should also be transparent about how the work has beenproduced. I haveused Agent Shell and Codex extensively during thedevelopment of bothprojects. This has greatly accelerated the work and mayalso haveintroducedsome of the rough edges associated with what is nowcalled "vibe coding."I do not regard generated code as evidence of correctness.Both projectsarebacked by extensive automated test suites and build,documentation andrelease checks. Even so, tests only verify the assumptionsencoded inthem.They cannot replace human review or real use across awider range ofmachines and configurations. That is another reason Idescribe theseprojects as experiments and welcome independent testingand criticism.My principal configuration is Emacs running inside WSL2with Omnivoxrunningnatively on Windows, so that remains the best-exercisedroute.I have now revised and published the Emacsvox manual tothe point whereother people should be able to attempt an installation:https://bartbunting.github.io/emacsvox/The manual describes the platform routes, prerequisites,installation,first-speech checks and recovery steps. It includes astraightforwardWSL2route using a pre-built Omnivox archive and a boundednative-Windowstrial.Native Windows Emacsvox remains explicitly marked as apreview becausethecomplete combination still needs fresh-machine testing.I have also published Omnivox 1.4.1 binary archives forWindows x64 andARM64, macOS Intel and Apple silicon, and GNU/Linuxx86-64:https://github.com/bartbunting/omnivox/releases/tag/v1.4.1The archives include the required adjacent runtime data,licenceinformationand published SHA-256 checksums. The Windows andmacOS archives are notcode-signed, which is documented so that nobody isencouraged to weakenlocal security policy merely to try them.I am putting this forward because there has been interest,not because Iwant to compete with Emacspeak, fragment its communityor step onanyone'stoes. I hope it will be received in that spirit.Testing reports, bug reports and technical discussion wouldbe verywelcome,especially from configurations different from mine.Contributions arealsowelcome from anyone who would like to become involved.That might meancode,documentation, testing another platform, adding a speechengine,improvingan integration, investigating a bug or simply reportingwhere theinstructions were unclear. There is no expectation that acontributionneedsto be large.I would also be interested in comparing approaches withother currentEmacspeak-related work. There may be useful ideas andfixes that can beshared even where the projects make differentarchitectural choices.Finally, none of this would exist without T. V. Raman'sextraordinaryworkin creating and sustaining Emacspeak and establishing theaudio-desktopideas on which it depends. Robert Melton's Emacsmodernization andoriginalcross-platform work gave me the practical foundation fromwhich tobegin. Mysincere thanks to both of them.Kind regards,BartEmacspeak discussion list -- emacspeak AT emacspeak.netTo unsubscribe send email to:emacspeak-request AT emacspeak.net with a subject of:unsubscribe----- --- --- ---Find my music onYoutube: http://www.youtube.com/c/victortsaran<http://www.youtube.com/vtsaran>Spotify:https://open.spotify.com/artist/605ZF2JPei9KqgbXBqYA16Band Camp: http://victortsaran.bandcamp.comEmacspeak discussion list -- emacspeak AT emacspeak.netTo unsubscribe send email to:emacspeak-request AT emacspeak.net with a subject of: unsubscribe----- --- --- ---Find my music onYoutube: http://www.youtube.com/c/victortsaranSpotify: https://open.spotify.com/artist/605ZF2JPei9KqgbXBqYA16Band Camp: http://victortsaran.bandcamp.comEmacspeak discussion list -- emacspeak AT emacspeak.netTo unsubscribe send email to:emacspeak-request AT emacspeak.net with a subject of: unsubscribe
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Bart Bunting, 09/22/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Victor Tsaran, 09/23/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Bart Bunting, 09/23/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Victor Tsaran, 09/23/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Parham Doustdar, 09/23/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Victor Tsaran, 09/24/2026
- Message not available
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Bart Bunting, 09/24/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Saad Attieh, 09/24/2026
- Message not available
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Victor Tsaran, 09/24/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Parham Doustdar, 09/23/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Victor Tsaran, 09/23/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Bart Bunting, 09/23/2026
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Victor Tsaran, 09/23/2026
- <Possible follow-up(s)>
- Re: [Emacspeak] Emacsvox and Omnivox: an early experiment now available to try, Saad Attieh, 09/24/2026
Archive powered by MHonArc 2.6.19+.