Skip to content

Releases: appurist/say2file

v3.1.60127

27 Jan 23:41

Choose a tag to compare

A modernization release. Updated dependencies per security reports:

Runtime Modernization

  • Switched from Node.js/pkg to Bun for runtime and compilation
  • Removed dotenv-defaults dependency (Bun loads .env natively)
  • Removed pkg build tool (now uses bun build --compile)

Dependency Updates

  • Updated async-mutex from 0.4.1 → 0.5.0
  • Removed transitive dependencies from pkg (including vulnerable tar-fs)

Build & CI

  • Added GitHub Actions workflow for automated builds and draft releases
  • Build targets: Linux x64, Windows x64, macOS x64, macOS ARM64

Lockfile

  • Regenerated pnpm-lock.yaml (968 → 5 lines after removing pkg cruft)

v3.0.250701

01 Jul 19:21

Choose a tag to compare

This version replaces the official IBM Watson SDK with a fetch-based implementation to remove the Axios dependency, eliminate vulnerabilities and reduce bundle size. This commit also includes a fix for repairing WAV header streams, replicating the functionality from the original SDK.

As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.

Release 2.2.202140

14 Feb 18:59

Choose a tag to compare

Quality Gate Status

This is a minor patch update to upgrade some of the dependencies based on Dependabot PRs.

As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.

What's Changed

Full Changelog: v2.2.202130...v2.2.202140

Release 2.2.202130

14 Feb 05:13

Choose a tag to compare

This is a bugfix release to address Issue #10, and also updates all dependencies. Thanks to @mazz for the bug report!

Issue #10 resulted in a very high likelihood (every time?) that the "split" file (-s) option would use the same input text (line), the last one, for all speech generation. It would be an entirely new generation, but it would use the same input text rather than the earlier line or lines.

As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.

Release 2.1.111050

06 Nov 00:35

Choose a tag to compare

This is a minor version refresh to update all dependencies, and addresses some potential vulnerabilities in dependent libraries.

As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.

Release 2.1.110100

10 Oct 04:52

Choose a tag to compare

This release does some usability improvements, especially for ElevenLabs "free" tier users. In particular, it will auto-downgrade the MP3 rate from 192 to 128 in order to avoid a 403 error for free users. This utility will try to make it work without additional command line parameters if you are an ElevenLabs free tier user. Just add the LABS_KEY to your environment or .env file and it should work without additional parameters, e.g. say2file "Hello there.", although you probably want to specify a voice via --voice (-w) or list them with --list (-l).

This update also fixes the default voice for ElevenLabs, which previously was not one of the generated voices available to all users.

Pre-built binary executables are also provided below for Linux, MacOS and Windows.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.

Release 2.0.109280

29 Sep 05:18

Choose a tag to compare

Adds support for a second provider, ElevenLabs AT text-to-speech (see readme.md for more):

  • adds --provider (-p) with arguments eleven or 11 and this is the new default (eleven).
  • allows provider ibm or watson for the previous IBM Watson support.
  • ElevenLabs voices must be specified by their ID.
  • adds a --list (-l) to list available voices and their IDs (specify -p if you want IBM voices).
  • Fixed comments by # prefix in input files to be recognized even if --split (-s) was not used.
  • Fixed provider initialization to be done once, even if --split (-s) was used.
  • Updated the help (--help or -?) to hopefully cover all choices, including formats.
  • Operations with the ElevenLabs provider will show a summary of your current tier and remaining character limits. (See output example below.)

You can also specify any IBM Watson voice in the long form, e.g. es-LA_SofiaVoice, using the --voice or -w (who) command-line options.

Pre-built binary executables are also provided below for Linux, MacOS and Windows.
(For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.)

>./say2file -f sample.txt -s
Using voice: EcOnXAJ3e2odu7bmr9M9 (mp3_44100_192)
 --> audio-1.mp3
 --> audio-2.mp3
 --> audio-3.mp3
 --> audio-4.mp3
 --> audio-5.mp3
ElevenLabs "creator" tier: 104993 (98%) remain of 106213 characters.
ElevenLabs character limit resets: Sun Oct 29 2023 00:45:42 GMT-0300 (Atlantic Daylight Time)
>./say2file "Hello, this is a test."
Using voice: LQj2X4OpUuX9YFC5sCDw (mp3_44100_192)
 --> audio.mp3
ElevenLabs "creator" tier: 104971 (98%) remain of 106213 characters.
ElevenLabs character limit resets: Sun Oct 29 2023 00:45:42 GMT-0300 (Atlantic Daylight Time)

Release 1.0.10220

20 Feb 21:43

Choose a tag to compare

Adds support for:

  • comments in input files, and
  • direct support for the 3 German V3 voices.

You can still specify any IBM Watson voice in the long form, e.g. es-LA_SofiaVoice, using the --voice or -w (who) command-line options.

Pre-built binary executables are also provided below for Linux, MacOS and Windows.

Release 1.0.218

19 Feb 05:26

Choose a tag to compare

Initial release. See the README.md file for more.

Binary executables for Linux, MacOS, and Windows provided below.