Bot releases are hidden (Show)
This release mainly fixes building for Python 3.12, but also fixes a serious bug in the NGramModel
wrapper class along the way. Note that Python 3.6 and 3.7 are no longer supported.
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/v5.0.2...v5.0.3
Published by dhdaines about 1 year ago
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/v5.0.1...v5.0.2
Published by dhdaines over 1 year ago
-phone_align
in main program by @dhdaines in https://github.com/cmusphinx/pocketsphinx/pull/331
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/v5.0.0...v5.0.1
Published by dhdaines about 2 years ago
Finally, now that it is thoroughly obsolete, it is time to get PocketSphinx out of its eternal "prealpha" status. The version number is strangely large because "5prealpha" existed for such a long time that it became treated as a real release, and for some reason it did not have a conventional version number like, say, 1.0.0-alpha5.
The purpose of this release is to fix and document the public API, as well as to debug, stabilize, test, and fully document the current state of PocketSphinx. I do expect that there will be bug fixes and possibly some new APIs, but all 5.x releases are guaranteed to be backwards source and binary compatible.
Notably this release is not source-compatible in C with the previous versions. Your code will fail to compile. By contrast, in Python, old code should not fail at runtime, and if this isn't the case, please report it as an issue. Such is the way of the world with dynamic languages.
API documentation can be found at https://cmusphinx.github.io/doc/pocketsphinx/ and https://pocketsphinx.readthedocs.io/
Among other notable changes:
pocketsphinx_continuous
is gone, replaced by plain old pocketsphinx
, which is documented in the README file.<pocketsphinx/model.h>
.sphinx_fe
and sphinx_cepview
utilities have been moved to SphinxTrain.<sphinxbase/ad.h>
) has been removed.-remove_noise
option is now controlled by the acoustic model as it needs to match the training.-remove_silence
option has been removed as it is a Bad Idea and Considered Harmful for batch mode recognition. Please use the endpointer API as detailed in <pocketsphinx/endpointer.h>
and examples/live.c
or examples/live.py
.-cmninit
option is not controlled by the default acoustic model anymore. This may cause some problems for live recognition as the defaults may not match the feature extraction parameters.pip
or build
.pocketsphinx5
to pocketsphinx
by @dhdaines in https://github.com/cmusphinx/pocketsphinx/pull/293
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/last-pre-1.0...v5.0.0
Published by dhdaines about 2 years ago
Basically everything I wanted to do is in this release, and more. If all goes well there will just be a final release in a couple days, then I can get on with the rest of my life.
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/v5.0.0rc4...v5.0.0rc5
Published by dhdaines about 2 years ago
The purpose of this pre-release is to solidify and modernize the library API and ABI.
The configuration interface in particular is now quite different. It is not a "command-line parser" anymore and the configuration parameters have lost their leading dashes. So instead of this:
cmd_ln_set_str_r(ps_get_config(decoder), "-hmm", "/whatever/blah");
You now do this:
ps_config_set_str(ps_get_config(decoder), "hmm", "/whatever/blah");
As well, the parameter setting functions will coerce the value you give them to whatever the underlying parameter is instead of printing an error and failing (or worse, crashing the program, like they used to do in the bad old days). So it is okay to do this for instance:
ps_config_set_str(ps_get_config(decoder), "samprate", "16000");
As well, configurations can be saved and loaded as JSON (or a sort of pseudo-YAML as well). This is the recommended way to create configurations from scratch as well at the moment though I may bring back something like cmd_ln_init()
as it was quite convenient.
All of the SphinxBase "utility" headers have also been made internal and their symbols will no longer be exported on Windows. Conversely, the JSGF and N-Gram language model API has been included in <pocketsphinx.h>
.
The pocketsphinx
command-line program now accepts input files on the command-line which can be raw, WAV, or NIST Sphere format.
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/v5.0.0rc3...v5.0.0rc4
Published by dhdaines about 2 years ago
The main point of this pre-release is to reintegrate and reclaim the pocketsphinx-python module into the main source tree. The API is not precisely the same because some bits are no longer relevant, but it should support code written for that module. Some more rigorous testing will be done before the final release.
The secondary point is to begin improving the documentation, but it's not quite there yet.
pocketsphinx5
to pocketsphinx
by @dhdaines in https://github.com/cmusphinx/pocketsphinx/pull/293
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/v5.0.0rc2...v5.0.0rc3
Published by dhdaines about 2 years ago
pocketsphinx_continuous
but just called pocketsphinx
Full Changelog: https://github.com/cmusphinx/pocketsphinx/compare/v5.0.0rc1...v5.0.0rc2
Published by dhdaines about 2 years ago
PLEASE DO NOT BUILD DISTRIBUTION PACKAGES FROM THIS PRERELEASE. The API is nearly guaranteed to change before the true release. I do not want to end up with a shared library named libpocketsphinx.so.362.3.4
. THIS IS A PRERELEASE AND NOT A REAL RELEASE!!! (sorry for the shouting but I want to make it clear that although PocketSphinx was a "prealpha" for 10 years, this is not going to be the way things work anymore)
The purpose of the 5.0.0 release will be to debug, stabilize, test, and fully document the current state of PocketSphinx. As part of this, some APIs have been removed, others are deprecated, and a few have changed and may still change. Notably:
sphinx_fe
and sphinx_cepview
utilities have been moved to SphinxTrain.<sphinxbase/ad.h>
) has been removed.-remove_noise
option is now controlled by the acoustic model as it needs to match the training.-remove_silence
option has been removed as it is a Bad Idea and Considered Harmful for batch mode recognition. Please use the endpointer API as detailed in <pocketsphinx/endpointer.h>
and examples/live.c
or examples/live.py
.-cmninit
option is not controlled by the default acoustic model anymore. This may cause some problems for live recognition as the defaults may not match the feature extraction parameters.pip
or build
.Full Changelog: https://github.com/cmusphinx/pocketsphinx/commits/v5.0.0rc1