pstrain 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pstrain-0.1.0/.github/dependabot.yml +21 -0
- pstrain-0.1.0/.github/workflows/build.yml +76 -0
- pstrain-0.1.0/.github/workflows/docs.yml +34 -0
- pstrain-0.1.0/.github/workflows/release.yml +72 -0
- pstrain-0.1.0/.github/workflows/tests.yml +204 -0
- pstrain-0.1.0/.github/workflows/windows-scoping.yml +107 -0
- pstrain-0.1.0/.gitignore +89 -0
- pstrain-0.1.0/.pre-commit-config.yaml +63 -0
- pstrain-0.1.0/CHANGELOG.md +14 -0
- pstrain-0.1.0/CMakeLists.txt +330 -0
- pstrain-0.1.0/LICENSE +36 -0
- pstrain-0.1.0/Makefile +138 -0
- pstrain-0.1.0/PKG-INFO +167 -0
- pstrain-0.1.0/README.md +117 -0
- pstrain-0.1.0/THIRD_PARTY_NOTICES.md +135 -0
- pstrain-0.1.0/benchmarks/arctic/README.md +103 -0
- pstrain-0.1.0/benchmarks/arctic/archives.json +40 -0
- pstrain-0.1.0/benchmarks/arctic/data/README.md +22 -0
- pstrain-0.1.0/benchmarks/arctic/data/big.transcription +3395 -0
- pstrain-0.1.0/benchmarks/arctic/data/cmu_arctic_slt.dict +3236 -0
- pstrain-0.1.0/benchmarks/arctic/data/full-slt.transcription +1132 -0
- pstrain-0.1.0/benchmarks/arctic/data/pin-train.fileids +1043 -0
- pstrain-0.1.0/benchmarks/arctic/data/pin-train.transcription +1043 -0
- pstrain-0.1.0/benchmarks/arctic/data/slt55.transcription +55 -0
- pstrain-0.1.0/benchmarks/arctic/data/training-unigram.lm +2746 -0
- pstrain-0.1.0/benchmarks/corpora/README.md +47 -0
- pstrain-0.1.0/benchmarks/corpora/archives.json +31 -0
- pstrain-0.1.0/benchmarks/timit/README.md +78 -0
- pstrain-0.1.0/benchmarks/timit/dither-ci-1g/results.json +38 -0
- pstrain-0.1.0/benchmarks/timit/dither-ci-1g/run.log +48 -0
- pstrain-0.1.0/bwcontract-report-2026-08-14.md +128 -0
- pstrain-0.1.0/cmndecl-modes-2026-08-15.json +44 -0
- pstrain-0.1.0/complete-model-required-fields.json +30 -0
- pstrain-0.1.0/csrc/CMakeLists.txt +410 -0
- pstrain-0.1.0/csrc/LICENSE.sphinx +30 -0
- pstrain-0.1.0/csrc/NOTICE.md +6 -0
- pstrain-0.1.0/csrc/config.h.in +48 -0
- pstrain-0.1.0/csrc/include/pstrain/pstrain_fe.h +43 -0
- pstrain-0.1.0/csrc/include/pstrain/rng.h +23 -0
- pstrain-0.1.0/csrc/include/pstrain_decode.h +52 -0
- pstrain-0.1.0/csrc/include/s3/acmod_set.h +261 -0
- pstrain-0.1.0/csrc/include/s3/best_q.h +98 -0
- pstrain-0.1.0/csrc/include/s3/ck_seg.h +72 -0
- pstrain-0.1.0/csrc/include/s3/common.h +76 -0
- pstrain-0.1.0/csrc/include/s3/corpus.h +225 -0
- pstrain-0.1.0/csrc/include/s3/cvt2triphone.h +77 -0
- pstrain-0.1.0/csrc/include/s3/div.h +97 -0
- pstrain-0.1.0/csrc/include/s3/dtree.h +406 -0
- pstrain-0.1.0/csrc/include/s3/gauden.h +417 -0
- pstrain-0.1.0/csrc/include/s3/heap.h +111 -0
- pstrain-0.1.0/csrc/include/s3/itree.h +121 -0
- pstrain-0.1.0/csrc/include/s3/kdtree.h +86 -0
- pstrain-0.1.0/csrc/include/s3/kmeans.h +151 -0
- pstrain-0.1.0/csrc/include/s3/lexicon.h +121 -0
- pstrain-0.1.0/csrc/include/s3/metric.h +61 -0
- pstrain-0.1.0/csrc/include/s3/mk_phone_list.h +87 -0
- pstrain-0.1.0/csrc/include/s3/mk_phone_seq.h +69 -0
- pstrain-0.1.0/csrc/include/s3/mk_sseq.h +69 -0
- pstrain-0.1.0/csrc/include/s3/mk_trans_seq.h +72 -0
- pstrain-0.1.0/csrc/include/s3/mk_ts2ci.h +63 -0
- pstrain-0.1.0/csrc/include/s3/mllr.h +75 -0
- pstrain-0.1.0/csrc/include/s3/mllr_class_io.h +82 -0
- pstrain-0.1.0/csrc/include/s3/mllr_io.h +83 -0
- pstrain-0.1.0/csrc/include/s3/model_def.h +98 -0
- pstrain-0.1.0/csrc/include/s3/model_def_io.h +81 -0
- pstrain-0.1.0/csrc/include/s3/model_inventory.h +161 -0
- pstrain-0.1.0/csrc/include/s3/phone_graph.h +144 -0
- pstrain-0.1.0/csrc/include/s3/prunetree_order.h +21 -0
- pstrain-0.1.0/csrc/include/s3/pset_io.h +67 -0
- pstrain-0.1.0/csrc/include/s3/quest.h +192 -0
- pstrain-0.1.0/csrc/include/s3/remap.h +96 -0
- pstrain-0.1.0/csrc/include/s3/s3.h +94 -0
- pstrain-0.1.0/csrc/include/s3/s3acc_io.h +102 -0
- pstrain-0.1.0/csrc/include/s3/s3cb2mllr_io.h +72 -0
- pstrain-0.1.0/csrc/include/s3/s3gau_io.h +163 -0
- pstrain-0.1.0/csrc/include/s3/s3io.h +129 -0
- pstrain-0.1.0/csrc/include/s3/s3lamb_io.h +85 -0
- pstrain-0.1.0/csrc/include/s3/s3map_io.h +79 -0
- pstrain-0.1.0/csrc/include/s3/s3mixw_io.h +89 -0
- pstrain-0.1.0/csrc/include/s3/s3phseg_io.h +103 -0
- pstrain-0.1.0/csrc/include/s3/s3tmat_io.h +76 -0
- pstrain-0.1.0/csrc/include/s3/s3ts2cb_io.h +73 -0
- pstrain-0.1.0/csrc/include/s3/segdmp.h +125 -0
- pstrain-0.1.0/csrc/include/s3/state.h +104 -0
- pstrain-0.1.0/csrc/include/s3/state_seq.h +79 -0
- pstrain-0.1.0/csrc/include/s3/state_seq_graph.h +53 -0
- pstrain-0.1.0/csrc/include/s3/swap.h +74 -0
- pstrain-0.1.0/csrc/include/s3/topo_read.h +67 -0
- pstrain-0.1.0/csrc/include/s3/ts2cb.h +73 -0
- pstrain-0.1.0/csrc/include/s3/vector.h +89 -0
- pstrain-0.1.0/csrc/include/s3/was_added.h +76 -0
- pstrain-0.1.0/csrc/include/sphinxbase/agc.h +202 -0
- pstrain-0.1.0/csrc/include/sphinxbase/bio.h +316 -0
- pstrain-0.1.0/csrc/include/sphinxbase/bitarr.h +142 -0
- pstrain-0.1.0/csrc/include/sphinxbase/bitvec.h +155 -0
- pstrain-0.1.0/csrc/include/sphinxbase/byteorder.h +98 -0
- pstrain-0.1.0/csrc/include/sphinxbase/case.h +135 -0
- pstrain-0.1.0/csrc/include/sphinxbase/ckd_alloc.h +310 -0
- pstrain-0.1.0/csrc/include/sphinxbase/clapack_lite.h +36 -0
- pstrain-0.1.0/csrc/include/sphinxbase/cmd_ln.h +609 -0
- pstrain-0.1.0/csrc/include/sphinxbase/cmn.h +191 -0
- pstrain-0.1.0/csrc/include/sphinxbase/err.h +199 -0
- pstrain-0.1.0/csrc/include/sphinxbase/f2c.h +218 -0
- pstrain-0.1.0/csrc/include/sphinxbase/fe.h +625 -0
- pstrain-0.1.0/csrc/include/sphinxbase/feat.h +469 -0
- pstrain-0.1.0/csrc/include/sphinxbase/filename.h +112 -0
- pstrain-0.1.0/csrc/include/sphinxbase/fixpoint.h +145 -0
- pstrain-0.1.0/csrc/include/sphinxbase/fsg_model.h +376 -0
- pstrain-0.1.0/csrc/include/sphinxbase/genrand.h +177 -0
- pstrain-0.1.0/csrc/include/sphinxbase/glist.h +242 -0
- pstrain-0.1.0/csrc/include/sphinxbase/hash_table.h +443 -0
- pstrain-0.1.0/csrc/include/sphinxbase/heap.h +153 -0
- pstrain-0.1.0/csrc/include/sphinxbase/jsgf.h +209 -0
- pstrain-0.1.0/csrc/include/sphinxbase/listelem_alloc.h +125 -0
- pstrain-0.1.0/csrc/include/sphinxbase/logmath.h +249 -0
- pstrain-0.1.0/csrc/include/sphinxbase/matrix.h +214 -0
- pstrain-0.1.0/csrc/include/sphinxbase/mmio.h +85 -0
- pstrain-0.1.0/csrc/include/sphinxbase/ngram_model.h +703 -0
- pstrain-0.1.0/csrc/include/sphinxbase/pio.h +302 -0
- pstrain-0.1.0/csrc/include/sphinxbase/prim_type.h +178 -0
- pstrain-0.1.0/csrc/include/sphinxbase/priority_queue.h +45 -0
- pstrain-0.1.0/csrc/include/sphinxbase/profile.h +231 -0
- pstrain-0.1.0/csrc/include/sphinxbase/sphinxbase_export.h +15 -0
- pstrain-0.1.0/csrc/include/sphinxbase/strfuncs.h +158 -0
- pstrain-0.1.0/csrc/include/sphinxbase/yin.h +116 -0
- pstrain-0.1.0/csrc/include/sys_compat/file.h +85 -0
- pstrain-0.1.0/csrc/include/sys_compat/misc.h +87 -0
- pstrain-0.1.0/csrc/include/sys_compat/time.h +45 -0
- pstrain-0.1.0/csrc/libs/libclust/div.c +297 -0
- pstrain-0.1.0/csrc/libs/libclust/kdtree.c +523 -0
- pstrain-0.1.0/csrc/libs/libclust/kmeans.c +641 -0
- pstrain-0.1.0/csrc/libs/libclust/metric.c +53 -0
- pstrain-0.1.0/csrc/libs/libcommon/acmod_set.c +926 -0
- pstrain-0.1.0/csrc/libs/libcommon/best_q.c +630 -0
- pstrain-0.1.0/csrc/libs/libcommon/ck_seg.c +132 -0
- pstrain-0.1.0/csrc/libs/libcommon/cvt2triphone.c +398 -0
- pstrain-0.1.0/csrc/libs/libcommon/dtree.c +1746 -0
- pstrain-0.1.0/csrc/libs/libcommon/heap.c +320 -0
- pstrain-0.1.0/csrc/libs/libcommon/itree.c +310 -0
- pstrain-0.1.0/csrc/libs/libcommon/lexicon.c +364 -0
- pstrain-0.1.0/csrc/libs/libcommon/mk_phone_list.c +295 -0
- pstrain-0.1.0/csrc/libs/libcommon/mk_phone_seq.c +88 -0
- pstrain-0.1.0/csrc/libs/libcommon/mk_sseq.c +95 -0
- pstrain-0.1.0/csrc/libs/libcommon/mk_trans_seq.c +104 -0
- pstrain-0.1.0/csrc/libs/libcommon/mk_ts2ci.c +85 -0
- pstrain-0.1.0/csrc/libs/libcommon/phone_graph.c +347 -0
- pstrain-0.1.0/csrc/libs/libcommon/phone_graph_triphone.c +488 -0
- pstrain-0.1.0/csrc/libs/libcommon/prunetree_order.c +86 -0
- pstrain-0.1.0/csrc/libs/libcommon/quest.c +652 -0
- pstrain-0.1.0/csrc/libs/libcommon/remap.c +189 -0
- pstrain-0.1.0/csrc/libs/libcommon/state_seq.c +667 -0
- pstrain-0.1.0/csrc/libs/libcommon/state_seq_graph.c +344 -0
- pstrain-0.1.0/csrc/libs/libcommon/state_seq_internal.h +40 -0
- pstrain-0.1.0/csrc/libs/libcommon/ts2cb.c +74 -0
- pstrain-0.1.0/csrc/libs/libcommon/vector.c +178 -0
- pstrain-0.1.0/csrc/libs/libcommon/was_added.c +176 -0
- pstrain-0.1.0/csrc/libs/libio/corpus.c +1560 -0
- pstrain-0.1.0/csrc/libs/libio/model_def_io.c +668 -0
- pstrain-0.1.0/csrc/libs/libio/pset_io.c +135 -0
- pstrain-0.1.0/csrc/libs/libio/s3acc_io.c +540 -0
- pstrain-0.1.0/csrc/libs/libio/s3cb2mllr_io.c +123 -0
- pstrain-0.1.0/csrc/libs/libio/s3gau_full_io.c +520 -0
- pstrain-0.1.0/csrc/libs/libio/s3gau_io.c +600 -0
- pstrain-0.1.0/csrc/libs/libio/s3io.c +776 -0
- pstrain-0.1.0/csrc/libs/libio/s3lamb_io.c +253 -0
- pstrain-0.1.0/csrc/libs/libio/s3map_io.c +173 -0
- pstrain-0.1.0/csrc/libs/libio/s3mixw_io.c +236 -0
- pstrain-0.1.0/csrc/libs/libio/s3phseg_io.c +278 -0
- pstrain-0.1.0/csrc/libs/libio/s3tmat_io.c +179 -0
- pstrain-0.1.0/csrc/libs/libio/s3ts2cb_io.c +106 -0
- pstrain-0.1.0/csrc/libs/libio/segdmp.c +766 -0
- pstrain-0.1.0/csrc/libs/libio/swap.c +126 -0
- pstrain-0.1.0/csrc/libs/libio/topo_read.c +198 -0
- pstrain-0.1.0/csrc/libs/libmllr/mllr.c +263 -0
- pstrain-0.1.0/csrc/libs/libmllr/mllr_io.c +195 -0
- pstrain-0.1.0/csrc/libs/libmodinv/gauden.c +2186 -0
- pstrain-0.1.0/csrc/libs/libmodinv/mod_inv.c +539 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_agg_seg.c +234 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_agg_seg.h +65 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_align.c +614 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_align.h +147 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_bw.c +1236 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_bw.h +249 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_cffi.c +55 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_decode.c +113 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_delint.c +200 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_delint.h +33 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_dtree.c +1255 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_dtree.h +195 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_fe.c +155 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_flat.c +623 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_flat.h +97 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_inc_comp.c +292 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_inc_comp.h +48 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_kdtree.c +147 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_kdtree.h +32 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_kmeans.c +250 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_kmeans.h +71 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_map_adapt.c +396 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_map_adapt.h +57 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_mdef_gen.c +512 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_mdef_gen.h +96 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_param_cnt.c +144 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_param_cnt.h +48 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_rng.c +38 -0
- pstrain-0.1.0/csrc/libs/libpstrain/pstrain_session.c +32 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_design.txt +44 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_interface.c +764 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_internal.h +204 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_noise.c +492 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_noise.h +66 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_prespch_buf.c +206 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_prespch_buf.h +76 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_sigproc.c +1206 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_type.h +59 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp.c +252 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp.h +90 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp_affine.c +177 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp_affine.h +76 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp_inverse_linear.c +174 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp_inverse_linear.h +77 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp_piecewise_linear.c +219 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fe_warp_piecewise_linear.h +77 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/fixlog.c +229 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/make_log_sub_table.py +35 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/make_log_table.py +24 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/fe/yin.c +322 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/feat/agc.c +227 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/feat/cmn.c +188 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/feat/cmn_live.c +173 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/feat/feat.c +1497 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/feat/lda.c +158 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/README.python +41 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/bio.c +640 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/bitarr.c +139 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/bitvec.c +101 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/blas_lite.c +2146 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/case.c +141 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/ckd_alloc.c +423 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/clapack_scrub.py +275 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/cmd_ln.c +1085 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/dtoa.c +2985 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/err.c +282 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/errno.c +51 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/f2c_lite.c +551 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/filename.c +116 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/fortran.py +133 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/genrand.c +198 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/glist.c +271 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/hash_table.c +706 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/heap.c +292 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/listelem_alloc.c +294 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/logmath.c +503 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/make_lite.py +265 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/matrix.c +279 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/mmio.c +257 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/pio.c +652 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/priority_queue.c +144 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/profile.c +341 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/slamch.c +1029 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/slapack_lite.c +1460 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/strfuncs.c +194 -0
- pstrain-0.1.0/csrc/libs/libsphinxbase/util/wrapped_routines +4 -0
- pstrain-0.1.0/csrc/programs/agg_seg/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/agg_seg/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/agg_seg/add_seg.h +55 -0
- pstrain-0.1.0/csrc/programs/agg_seg/agg_all_seg.c +189 -0
- pstrain-0.1.0/csrc/programs/agg_seg/agg_all_seg.h +61 -0
- pstrain-0.1.0/csrc/programs/agg_seg/agg_phn_seg.c +198 -0
- pstrain-0.1.0/csrc/programs/agg_seg/agg_phn_seg.h +61 -0
- pstrain-0.1.0/csrc/programs/agg_seg/agg_st_seg.c +276 -0
- pstrain-0.1.0/csrc/programs/agg_seg/agg_st_seg.h +62 -0
- pstrain-0.1.0/csrc/programs/agg_seg/cnt_phn_seg.c +190 -0
- pstrain-0.1.0/csrc/programs/agg_seg/cnt_phn_seg.h +60 -0
- pstrain-0.1.0/csrc/programs/agg_seg/cnt_st_seg.c +128 -0
- pstrain-0.1.0/csrc/programs/agg_seg/cnt_st_seg.h +58 -0
- pstrain-0.1.0/csrc/programs/agg_seg/main.c +509 -0
- pstrain-0.1.0/csrc/programs/agg_seg/mk_seg.c +82 -0
- pstrain-0.1.0/csrc/programs/agg_seg/mk_seg.h +61 -0
- pstrain-0.1.0/csrc/programs/agg_seg/parse_cmd_ln.c +216 -0
- pstrain-0.1.0/csrc/programs/agg_seg/parse_cmd_ln.h +53 -0
- pstrain-0.1.0/csrc/programs/bldtree/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/bldtree/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/bldtree/main.c +773 -0
- pstrain-0.1.0/csrc/programs/bldtree/parse_cmd_ln.c +213 -0
- pstrain-0.1.0/csrc/programs/bldtree/parse_cmd_ln.h +58 -0
- pstrain-0.1.0/csrc/programs/bw/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/bw/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/bw/accum.c +1093 -0
- pstrain-0.1.0/csrc/programs/bw/accum.h +148 -0
- pstrain-0.1.0/csrc/programs/bw/backward.c +1309 -0
- pstrain-0.1.0/csrc/programs/bw/backward.h +123 -0
- pstrain-0.1.0/csrc/programs/bw/baum_welch.c +327 -0
- pstrain-0.1.0/csrc/programs/bw/baum_welch.h +101 -0
- pstrain-0.1.0/csrc/programs/bw/forward.c +737 -0
- pstrain-0.1.0/csrc/programs/bw/forward.h +80 -0
- pstrain-0.1.0/csrc/programs/bw/main.c +1855 -0
- pstrain-0.1.0/csrc/programs/bw/next_utt_states.c +323 -0
- pstrain-0.1.0/csrc/programs/bw/next_utt_states.h +98 -0
- pstrain-0.1.0/csrc/programs/bw/train_cmd_ln.c +592 -0
- pstrain-0.1.0/csrc/programs/bw/train_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/bw/viterbi.c +1109 -0
- pstrain-0.1.0/csrc/programs/bw/viterbi.h +121 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/CMakeLists.txt +26 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/cepdist.c +57 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/correction.c +125 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/header.h +70 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/initialize.c +122 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/main.c +200 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/max_q.c +147 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/mmse_x.c +100 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/norm_utt.c +126 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/readdistribution.c +92 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/resfft.c +93 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/rsfft.c +181 -0
- pstrain-0.1.0/csrc/programs/cdcn_norm/two_D_ize.c +52 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/CMakeLists.txt +22 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/em_full_vars.c +364 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/gauss.c +53 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/header.h +75 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/main.c +246 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/parse_cmd_ln.c +175 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/read_backup_distributions.c +84 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/store_distribution.c +86 -0
- pstrain-0.1.0/csrc/programs/cdcn_train/vq.c +297 -0
- pstrain-0.1.0/csrc/programs/cp_parm/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/cp_parm/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/cp_parm/cmd_ln_defn.h +150 -0
- pstrain-0.1.0/csrc/programs/cp_parm/main.c +471 -0
- pstrain-0.1.0/csrc/programs/cp_parm/parse_cmd_ln.c +82 -0
- pstrain-0.1.0/csrc/programs/cp_parm/parse_cmd_ln.h +55 -0
- pstrain-0.1.0/csrc/programs/delint/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/delint/CMakeLists.txt +18 -0
- pstrain-0.1.0/csrc/programs/delint/interp_fn.c +241 -0
- pstrain-0.1.0/csrc/programs/delint/interp_fn.h +91 -0
- pstrain-0.1.0/csrc/programs/delint/main.c +618 -0
- pstrain-0.1.0/csrc/programs/delint/parse_cmd_ln.c +160 -0
- pstrain-0.1.0/csrc/programs/delint/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/.gitignore +2 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/CMakeLists.txt +19 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/Phonetisaurus.cpp +308 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/Phonetisaurus.hpp +78 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/main.cpp +78 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/phonetisaurus-g2p.cpp +144 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/phonetisaurus-g2p.hpp +11 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/utf8/checked.h +325 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/utf8/core.h +356 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/utf8/unchecked.h +227 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/utf8.h +34 -0
- pstrain-0.1.0/csrc/programs/g2p_eval/util.hpp +100 -0
- pstrain-0.1.0/csrc/programs/g2p_train/.gitignore +2 -0
- pstrain-0.1.0/csrc/programs/g2p_train/CMakeLists.txt +20 -0
- pstrain-0.1.0/csrc/programs/g2p_train/FstPathFinder.cpp +146 -0
- pstrain-0.1.0/csrc/programs/g2p_train/FstPathFinder.hpp +87 -0
- pstrain-0.1.0/csrc/programs/g2p_train/M2MFstAligner.cpp +680 -0
- pstrain-0.1.0/csrc/programs/g2p_train/M2MFstAligner.hpp +128 -0
- pstrain-0.1.0/csrc/programs/g2p_train/g2p_train.cpp +522 -0
- pstrain-0.1.0/csrc/programs/g2p_train/g2p_train.hpp +53 -0
- pstrain-0.1.0/csrc/programs/g2p_train/main.cpp +156 -0
- pstrain-0.1.0/csrc/programs/inc_comp/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/inc_comp/CMakeLists.txt +19 -0
- pstrain-0.1.0/csrc/programs/inc_comp/accum_wt_param.c +182 -0
- pstrain-0.1.0/csrc/programs/inc_comp/accum_wt_param.h +62 -0
- pstrain-0.1.0/csrc/programs/inc_comp/inc_densities.c +200 -0
- pstrain-0.1.0/csrc/programs/inc_comp/inc_densities.h +73 -0
- pstrain-0.1.0/csrc/programs/inc_comp/main.c +231 -0
- pstrain-0.1.0/csrc/programs/inc_comp/parse_cmd_ln.c +167 -0
- pstrain-0.1.0/csrc/programs/inc_comp/parse_cmd_ln.h +53 -0
- pstrain-0.1.0/csrc/programs/init_gau/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/init_gau/CMakeLists.txt +19 -0
- pstrain-0.1.0/csrc/programs/init_gau/accum.c +206 -0
- pstrain-0.1.0/csrc/programs/init_gau/accum.h +75 -0
- pstrain-0.1.0/csrc/programs/init_gau/init_gau.c +362 -0
- pstrain-0.1.0/csrc/programs/init_gau/init_gau.h +51 -0
- pstrain-0.1.0/csrc/programs/init_gau/main.c +242 -0
- pstrain-0.1.0/csrc/programs/init_gau/parse_cmd_ln.c +195 -0
- pstrain-0.1.0/csrc/programs/init_gau/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/init_mixw/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/init_mixw/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/init_mixw/main.c +643 -0
- pstrain-0.1.0/csrc/programs/init_mixw/parse_cmd_ln.c +166 -0
- pstrain-0.1.0/csrc/programs/init_mixw/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/kdtree/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/kdtree/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/kdtree/main.c +125 -0
- pstrain-0.1.0/csrc/programs/kdtree/parse_cmd_ln.c +144 -0
- pstrain-0.1.0/csrc/programs/kdtree/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/kmeans_init/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/kmeans_init/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/kmeans_init/main.c +1704 -0
- pstrain-0.1.0/csrc/programs/kmeans_init/parse_cmd_ln.c +304 -0
- pstrain-0.1.0/csrc/programs/kmeans_init/parse_cmd_ln.h +53 -0
- pstrain-0.1.0/csrc/programs/make_quests/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/make_quests/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/make_quests/main.c +1171 -0
- pstrain-0.1.0/csrc/programs/make_quests/make_tree.c +201 -0
- pstrain-0.1.0/csrc/programs/make_quests/new_quest.c +353 -0
- pstrain-0.1.0/csrc/programs/make_quests/parse_cmd_ln.c +173 -0
- pstrain-0.1.0/csrc/programs/make_quests/parse_cmd_ln.h +55 -0
- pstrain-0.1.0/csrc/programs/map_adapt/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/map_adapt/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/map_adapt/cmd_ln.c +59 -0
- pstrain-0.1.0/csrc/programs/map_adapt/cmd_ln_defn.h +139 -0
- pstrain-0.1.0/csrc/programs/map_adapt/main.c +652 -0
- pstrain-0.1.0/csrc/programs/map_adapt/parse_cmd_ln.h +27 -0
- pstrain-0.1.0/csrc/programs/mixw_interp/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mixw_interp/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/mixw_interp/cmd_ln_defn.h +99 -0
- pstrain-0.1.0/csrc/programs/mixw_interp/main.c +178 -0
- pstrain-0.1.0/csrc/programs/mixw_interp/parse_cmd_ln.c +93 -0
- pstrain-0.1.0/csrc/programs/mixw_interp/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/mk_flat/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mk_flat/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/mk_flat/main.c +163 -0
- pstrain-0.1.0/csrc/programs/mk_flat/parse_cmd_ln.c +144 -0
- pstrain-0.1.0/csrc/programs/mk_flat/parse_cmd_ln.h +55 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/hash.c +257 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/hash.h +109 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/heap.c +139 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/heap.h +66 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/main.c +172 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/mk_mdef_gen.c +978 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/mk_untied.h +89 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/parse_cmd_ln.c +196 -0
- pstrain-0.1.0/csrc/programs/mk_mdef_gen/parse_cmd_ln.h +55 -0
- pstrain-0.1.0/csrc/programs/mk_mllr_class/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mk_mllr_class/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/mk_mllr_class/main.c +104 -0
- pstrain-0.1.0/csrc/programs/mk_mllr_class/parse_cmd_ln.c +125 -0
- pstrain-0.1.0/csrc/programs/mk_mllr_class/parse_cmd_ln.h +56 -0
- pstrain-0.1.0/csrc/programs/mk_s2sendump/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mk_s2sendump/CMakeLists.txt +18 -0
- pstrain-0.1.0/csrc/programs/mk_s2sendump/mk_s2sendump.c +293 -0
- pstrain-0.1.0/csrc/programs/mk_s2sendump/parse_cmd_ln.c +126 -0
- pstrain-0.1.0/csrc/programs/mk_s2sendump/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/mk_s2sendump/senone.c +361 -0
- pstrain-0.1.0/csrc/programs/mk_s2sendump/senone.h +100 -0
- pstrain-0.1.0/csrc/programs/mk_ts2cb/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mk_ts2cb/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/mk_ts2cb/main.c +112 -0
- pstrain-0.1.0/csrc/programs/mk_ts2cb/parse_cmd_ln.c +132 -0
- pstrain-0.1.0/csrc/programs/mk_ts2cb/parse_cmd_ln.h +55 -0
- pstrain-0.1.0/csrc/programs/mllr_solve/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mllr_solve/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/mllr_solve/cmd_ln_defn.h +117 -0
- pstrain-0.1.0/csrc/programs/mllr_solve/main.c +514 -0
- pstrain-0.1.0/csrc/programs/mllr_solve/parse_cmd_ln.c +63 -0
- pstrain-0.1.0/csrc/programs/mllr_solve/parse_cmd_ln.h +26 -0
- pstrain-0.1.0/csrc/programs/mllr_transform/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/mllr_transform/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/mllr_transform/cmd_ln_defn.h +117 -0
- pstrain-0.1.0/csrc/programs/mllr_transform/main.c +390 -0
- pstrain-0.1.0/csrc/programs/mllr_transform/parse_cmd_ln.c +61 -0
- pstrain-0.1.0/csrc/programs/mllr_transform/parse_cmd_ln.h +27 -0
- pstrain-0.1.0/csrc/programs/norm/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/norm/CMakeLists.txt +16 -0
- pstrain-0.1.0/csrc/programs/norm/main.c +833 -0
- pstrain-0.1.0/csrc/programs/norm/parse_cmd_ln.c +177 -0
- pstrain-0.1.0/csrc/programs/norm/parse_cmd_ln.h +52 -0
- pstrain-0.1.0/csrc/programs/param_cnt/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/param_cnt/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/param_cnt/cb_cnt.c +109 -0
- pstrain-0.1.0/csrc/programs/param_cnt/cb_cnt.h +63 -0
- pstrain-0.1.0/csrc/programs/param_cnt/cnt_fn.h +65 -0
- pstrain-0.1.0/csrc/programs/param_cnt/enum_corpus.c +174 -0
- pstrain-0.1.0/csrc/programs/param_cnt/enum_corpus.h +61 -0
- pstrain-0.1.0/csrc/programs/param_cnt/main.c +256 -0
- pstrain-0.1.0/csrc/programs/param_cnt/param_cnt.c +140 -0
- pstrain-0.1.0/csrc/programs/param_cnt/param_cnt.h +60 -0
- pstrain-0.1.0/csrc/programs/param_cnt/parse_cmd_ln.c +193 -0
- pstrain-0.1.0/csrc/programs/param_cnt/parse_cmd_ln.h +54 -0
- pstrain-0.1.0/csrc/programs/param_cnt/phone_cnt.c +82 -0
- pstrain-0.1.0/csrc/programs/param_cnt/phone_cnt.h +66 -0
- pstrain-0.1.0/csrc/programs/param_cnt/ts_cnt.c +106 -0
- pstrain-0.1.0/csrc/programs/param_cnt/ts_cnt.h +65 -0
- pstrain-0.1.0/csrc/programs/printp/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/printp/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/printp/main.c +567 -0
- pstrain-0.1.0/csrc/programs/printp/parse_cmd_ln.c +224 -0
- pstrain-0.1.0/csrc/programs/printp/parse_cmd_ln.h +53 -0
- pstrain-0.1.0/csrc/programs/prunetree/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/prunetree/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/prunetree/main.c +471 -0
- pstrain-0.1.0/csrc/programs/prunetree/parse_cmd_ln.c +146 -0
- pstrain-0.1.0/csrc/programs/prunetree/parse_cmd_ln.h +55 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/CMakeLists.txt +16 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/adaptor.c +172 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/adaptor.h +156 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/approx_cont_mgau.c +616 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/approx_cont_mgau.h +269 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ascr.c +230 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ascr.h +188 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/cb2mllr_io.c +228 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/cb2mllr_io.h +122 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/cmdln_macro.h +725 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/cmu6_lts_rules.c +13307 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/cmu6_lts_rules.h +13206 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/cont_mgau.c +1260 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/cont_mgau.h +415 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/corpus.c +812 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/corpus.h +318 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ctxt_table.h +452 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/dict.c +656 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/dict.h +273 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/dict2pid.c +1183 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/dict2pid.h +303 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/fast_algo_struct.c +509 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/fast_algo_struct.h +392 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/fillpen.c +186 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/fillpen.h +163 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/gs.c +313 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/gs.h +167 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/hmm.c +895 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/hmm.h +327 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/interp.c +196 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/interp.h +155 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/kbcore.c +735 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/kbcore.h +236 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/kdtree.c +294 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/kdtree.h +86 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/logs3.c +132 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/logs3.h +144 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/lts.c +253 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/lts.h +137 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/main_align.c +1178 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/main_align.h +68 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/mdef.c +964 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/mdef.h +375 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/misc.h +126 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/mllr.c +256 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/mllr.h +143 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_gauden.c +715 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_gauden.h +260 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_mgau.c +329 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_mgau.h +189 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_mllr.c +231 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_mllr.h +139 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_senone.c +574 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/ms_senone.h +209 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/s2_semi_mgau.c +1145 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/s2_semi_mgau.h +124 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/s3_align.c +1401 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/s3_align.h +199 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/s3a_namespace.h +32 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/s3types.h +242 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/sphinx3_export.h +13 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/subvq.c +681 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/subvq.h +261 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/tmat.c +271 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/tmat.h +176 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/vector.c +649 -0
- pstrain-0.1.0/csrc/programs/sphinx3_align/vector.h +453 -0
- pstrain-0.1.0/csrc/programs/sphinx_cepview/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/sphinx_cepview/CMakeLists.txt +16 -0
- pstrain-0.1.0/csrc/programs/sphinx_cepview/main_cepview.c +286 -0
- pstrain-0.1.0/csrc/programs/sphinx_fe/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/sphinx_fe/CMakeLists.txt +16 -0
- pstrain-0.1.0/csrc/programs/sphinx_fe/cmd_ln_defn.h +228 -0
- pstrain-0.1.0/csrc/programs/sphinx_fe/sphinx_fe.c +1082 -0
- pstrain-0.1.0/csrc/programs/sphinx_fe/sphinx_wave2feat.h +66 -0
- pstrain-0.1.0/csrc/programs/tiestate/.gitignore +1 -0
- pstrain-0.1.0/csrc/programs/tiestate/CMakeLists.txt +17 -0
- pstrain-0.1.0/csrc/programs/tiestate/main.c +274 -0
- pstrain-0.1.0/csrc/programs/tiestate/parse_cmd_ln.c +130 -0
- pstrain-0.1.0/csrc/programs/tiestate/parse_cmd_ln.h +55 -0
- pstrain-0.1.0/csrc/pstrain.exports.def +109 -0
- pstrain-0.1.0/csrc/pstrain.exports.elf +112 -0
- pstrain-0.1.0/csrc/pstrain.exports.macos +107 -0
- pstrain-0.1.0/csrc/tests/CMakeLists.txt +150 -0
- pstrain-0.1.0/csrc/tests/stubs/pocketsphinx.h +34 -0
- pstrain-0.1.0/csrc/tests/test_bw_state_seq_build.c +150 -0
- pstrain-0.1.0/csrc/tests/test_decode_start_utt.c +186 -0
- pstrain-0.1.0/csrc/tests/test_gauden_scaling.c +60 -0
- pstrain-0.1.0/csrc/tests/test_io_roundtrip.c +191 -0
- pstrain-0.1.0/csrc/tests/test_kmeans_init_continuation.c +151 -0
- pstrain-0.1.0/csrc/tests/test_prunetree_order.c +50 -0
- pstrain-0.1.0/csrc/tests/test_rng.c +199 -0
- pstrain-0.1.0/csrc/tests/test_state_seq_ownership.c +55 -0
- pstrain-0.1.0/csrc/tests/test_variance_floor_consumers.c +111 -0
- pstrain-0.1.0/docs/Makefile +13 -0
- pstrain-0.1.0/docs/api/cli.rst +9 -0
- pstrain-0.1.0/docs/api/config-reference.rst +347 -0
- pstrain-0.1.0/docs/api/data.rst +9 -0
- pstrain-0.1.0/docs/api/index.rst +16 -0
- pstrain-0.1.0/docs/api/lib.rst +91 -0
- pstrain-0.1.0/docs/benchmarks/arctic-pin/oracle-sidecar.json +34745 -0
- pstrain-0.1.0/docs/benchmarks/arctic-pin/paired-analysis.json +51 -0
- pstrain-0.1.0/docs/benchmarks/arctic-pin/record.json +35258 -0
- pstrain-0.1.0/docs/benchmarks/arctic-pin.md +184 -0
- pstrain-0.1.0/docs/cffi-progress.md +305 -0
- pstrain-0.1.0/docs/code-review-2026-01-15.md +342 -0
- pstrain-0.1.0/docs/conf.py +67 -0
- pstrain-0.1.0/docs/design/README.md +59 -0
- pstrain-0.1.0/docs/design/bw-normalization-policy.md +46 -0
- pstrain-0.1.0/docs/design/bw-sharding-contract.md +77 -0
- pstrain-0.1.0/docs/design/ci-model-requirements.md +192 -0
- pstrain-0.1.0/docs/design/ci-training-cli-plan.md +464 -0
- pstrain-0.1.0/docs/design/config-unification.md +268 -0
- pstrain-0.1.0/docs/design/f10-multipron-alignment-stage.md +73 -0
- pstrain-0.1.0/docs/design/failed-alignment-policy.md +22 -0
- pstrain-0.1.0/docs/design/mlflow-evaluation.md +285 -0
- pstrain-0.1.0/docs/design/multi-pron-training.md +369 -0
- pstrain-0.1.0/docs/design/native-boundary.md +131 -0
- pstrain-0.1.0/docs/design/numeric-harness.md +168 -0
- pstrain-0.1.0/docs/design/one-command-training.md +212 -0
- pstrain-0.1.0/docs/design/optional-final-silence.md +90 -0
- pstrain-0.1.0/docs/design/parity-and-deviations.md +92 -0
- pstrain-0.1.0/docs/design/per-step-profiling.md +28 -0
- pstrain-0.1.0/docs/design/pipeline-runner.md +197 -0
- pstrain-0.1.0/docs/design/project-setup.md +496 -0
- pstrain-0.1.0/docs/design/source-determinable-rerolls.md +30 -0
- pstrain-0.1.0/docs/design/task-orchestration.md +1412 -0
- pstrain-0.1.0/docs/design/terminology.md +23 -0
- pstrain-0.1.0/docs/design/testing-with-cmu-arctic.md +249 -0
- pstrain-0.1.0/docs/design/training-pipeline.md +605 -0
- pstrain-0.1.0/docs/design/tree-comparison.md +34 -0
- pstrain-0.1.0/docs/detached-runs.md +52 -0
- pstrain-0.1.0/docs/development.md +63 -0
- pstrain-0.1.0/docs/evidence/m4b-slt-runs.md +52 -0
- pstrain-0.1.0/docs/evidence/m4b-slt-skips.tsv +16 -0
- pstrain-0.1.0/docs/evidence/optional-final-silence-red.txt +23 -0
- pstrain-0.1.0/docs/examples.md +99 -0
- pstrain-0.1.0/docs/getting-started.md +111 -0
- pstrain-0.1.0/docs/glossary.md +154 -0
- pstrain-0.1.0/docs/index.rst +41 -0
- pstrain-0.1.0/docs/input-formats.md +69 -0
- pstrain-0.1.0/docs/support.md +18 -0
- pstrain-0.1.0/envfix-report-2026-08-16.md +23 -0
- pstrain-0.1.0/etc/configs.yaml +88 -0
- pstrain-0.1.0/frameaudit-frames-2026-08-15.json +55 -0
- pstrain-0.1.0/gate-inventory-2026-08-14.json +29 -0
- pstrain-0.1.0/mainfix-report-2026-08-16.md +92 -0
- pstrain-0.1.0/noiseroutefix-report-2026-08-14.md +111 -0
- pstrain-0.1.0/pstrain/__init__.py +11 -0
- pstrain-0.1.0/pstrain/api/__init__.py +90 -0
- pstrain-0.1.0/pstrain/api/steps.py +190 -0
- pstrain-0.1.0/pstrain/benchmarks/__init__.py +1 -0
- pstrain-0.1.0/pstrain/benchmarks/arctic.py +1753 -0
- pstrain-0.1.0/pstrain/benchmarks/boundaries.py +174 -0
- pstrain-0.1.0/pstrain/benchmarks/corpora.py +127 -0
- pstrain-0.1.0/pstrain/benchmarks/timit.py +223 -0
- pstrain-0.1.0/pstrain/cli/__init__.py +27 -0
- pstrain-0.1.0/pstrain/cli/align.py +223 -0
- pstrain-0.1.0/pstrain/cli/base.py +1003 -0
- pstrain-0.1.0/pstrain/cli/build.py +185 -0
- pstrain-0.1.0/pstrain/cli/clean.py +153 -0
- pstrain-0.1.0/pstrain/cli/cli.py +82 -0
- pstrain-0.1.0/pstrain/cli/compare.py +186 -0
- pstrain-0.1.0/pstrain/cli/config.py +217 -0
- pstrain-0.1.0/pstrain/cli/features.py +82 -0
- pstrain-0.1.0/pstrain/cli/flat.py +159 -0
- pstrain-0.1.0/pstrain/cli/info.py +238 -0
- pstrain-0.1.0/pstrain/cli/setup.py +235 -0
- pstrain-0.1.0/pstrain/cli/split.py +101 -0
- pstrain-0.1.0/pstrain/cli/step.py +112 -0
- pstrain-0.1.0/pstrain/cli/test.py +231 -0
- pstrain-0.1.0/pstrain/cli/timings.py +34 -0
- pstrain-0.1.0/pstrain/cli/train.py +653 -0
- pstrain-0.1.0/pstrain/cli/validate.py +82 -0
- pstrain-0.1.0/pstrain/data/.gitkeep +0 -0
- pstrain-0.1.0/pstrain/data/__init__.py +33 -0
- pstrain-0.1.0/pstrain/data/filler.dict +3 -0
- pstrain-0.1.0/pstrain/data/sample/kevin-alice-16k.txt +1 -0
- pstrain-0.1.0/pstrain/data/sample/kevin-alice-16k.wav +0 -0
- pstrain-0.1.0/pstrain/lib/__init__.py +154 -0
- pstrain-0.1.0/pstrain/lib/_cffi/__init__.py +50 -0
- pstrain-0.1.0/pstrain/lib/_cffi/cdef.py +770 -0
- pstrain-0.1.0/pstrain/lib/_cffi/core.py +103 -0
- pstrain-0.1.0/pstrain/lib/_cffi/io.py +369 -0
- pstrain-0.1.0/pstrain/lib/_cffi/logmath.py +105 -0
- pstrain-0.1.0/pstrain/lib/_pstrainc.py +73 -0
- pstrain-0.1.0/pstrain/lib/agg_seg.py +122 -0
- pstrain-0.1.0/pstrain/lib/alignment/__init__.py +48 -0
- pstrain-0.1.0/pstrain/lib/alignment/batch.py +209 -0
- pstrain-0.1.0/pstrain/lib/alignment/core.py +152 -0
- pstrain-0.1.0/pstrain/lib/alignment/export.py +211 -0
- pstrain-0.1.0/pstrain/lib/alignment/native.py +421 -0
- pstrain-0.1.0/pstrain/lib/bw.py +536 -0
- pstrain-0.1.0/pstrain/lib/cepview.py +191 -0
- pstrain-0.1.0/pstrain/lib/commands.py +793 -0
- pstrain-0.1.0/pstrain/lib/compare.py +1167 -0
- pstrain-0.1.0/pstrain/lib/config/__init__.py +56 -0
- pstrain-0.1.0/pstrain/lib/config/models.py +376 -0
- pstrain-0.1.0/pstrain/lib/config/resolver.py +633 -0
- pstrain-0.1.0/pstrain/lib/config/schema.py +203 -0
- pstrain-0.1.0/pstrain/lib/config/user.py +173 -0
- pstrain-0.1.0/pstrain/lib/contract_docs.py +247 -0
- pstrain-0.1.0/pstrain/lib/corpus/__init__.py +40 -0
- pstrain-0.1.0/pstrain/lib/corpus/files.py +212 -0
- pstrain-0.1.0/pstrain/lib/corpus/normalize.py +119 -0
- pstrain-0.1.0/pstrain/lib/corpus/split.py +323 -0
- pstrain-0.1.0/pstrain/lib/delint.py +96 -0
- pstrain-0.1.0/pstrain/lib/dictionary/__init__.py +46 -0
- pstrain-0.1.0/pstrain/lib/dictionary/cmudict.py +294 -0
- pstrain-0.1.0/pstrain/lib/dictionary/dictionary.py +357 -0
- pstrain-0.1.0/pstrain/lib/dictionary/filler.py +102 -0
- pstrain-0.1.0/pstrain/lib/dtree.py +359 -0
- pstrain-0.1.0/pstrain/lib/features.py +404 -0
- pstrain-0.1.0/pstrain/lib/filetypes.py +356 -0
- pstrain-0.1.0/pstrain/lib/flat.py +361 -0
- pstrain-0.1.0/pstrain/lib/kdtree.py +76 -0
- pstrain-0.1.0/pstrain/lib/lm.py +141 -0
- pstrain-0.1.0/pstrain/lib/map_adapt.py +126 -0
- pstrain-0.1.0/pstrain/lib/mdef.py +182 -0
- pstrain-0.1.0/pstrain/lib/model.py +566 -0
- pstrain-0.1.0/pstrain/lib/model_type.py +89 -0
- pstrain-0.1.0/pstrain/lib/native_worker.py +613 -0
- pstrain-0.1.0/pstrain/lib/one_command.py +382 -0
- pstrain-0.1.0/pstrain/lib/param_cnt.py +101 -0
- pstrain-0.1.0/pstrain/lib/paths.py +339 -0
- pstrain-0.1.0/pstrain/lib/phoneset.py +373 -0
- pstrain-0.1.0/pstrain/lib/pipeline/__init__.py +37 -0
- pstrain-0.1.0/pstrain/lib/pipeline/context.py +657 -0
- pstrain-0.1.0/pstrain/lib/pipeline/feat_params.py +112 -0
- pstrain-0.1.0/pstrain/lib/pipeline/runner.py +842 -0
- pstrain-0.1.0/pstrain/lib/pipeline/tasks.py +1008 -0
- pstrain-0.1.0/pstrain/lib/pipeline/timings.py +192 -0
- pstrain-0.1.0/pstrain/lib/printp.py +243 -0
- pstrain-0.1.0/pstrain/lib/runtime.py +14 -0
- pstrain-0.1.0/pstrain/lib/setup.py +223 -0
- pstrain-0.1.0/pstrain/lib/similarity.py +451 -0
- pstrain-0.1.0/pstrain/lib/split.py +221 -0
- pstrain-0.1.0/pstrain/lib/steps/__init__.py +64 -0
- pstrain-0.1.0/pstrain/lib/steps/base.py +366 -0
- pstrain-0.1.0/pstrain/lib/steps/cd_hmm_untied.py +87 -0
- pstrain-0.1.0/pstrain/lib/steps/cd_pipeline.py +630 -0
- pstrain-0.1.0/pstrain/lib/steps/ci_hmm.py +99 -0
- pstrain-0.1.0/pstrain/lib/steps/features.py +101 -0
- pstrain-0.1.0/pstrain/lib/steps/lm.py +47 -0
- pstrain-0.1.0/pstrain/lib/steps/package.py +199 -0
- pstrain-0.1.0/pstrain/lib/steps/setup.py +271 -0
- pstrain-0.1.0/pstrain/lib/steps/split.py +127 -0
- pstrain-0.1.0/pstrain/lib/steps/train.py +1070 -0
- pstrain-0.1.0/pstrain/lib/testing/__init__.py +37 -0
- pstrain-0.1.0/pstrain/lib/testing/decoder.py +263 -0
- pstrain-0.1.0/pstrain/lib/testing/report.py +215 -0
- pstrain-0.1.0/pstrain/lib/testing/test.py +336 -0
- pstrain-0.1.0/pstrain/lib/testing/wer.py +277 -0
- pstrain-0.1.0/pstrain/lib/transcription.py +76 -0
- pstrain-0.1.0/pstrain/lib/ts2cb.py +205 -0
- pstrain-0.1.0/pstrain/lib/validate.py +327 -0
- pstrain-0.1.0/pstrain/py.typed +0 -0
- pstrain-0.1.0/pyproject.toml +189 -0
- pstrain-0.1.0/scripts/bench_arctic.py +7 -0
- pstrain-0.1.0/scripts/bench_timit.py +7 -0
- pstrain-0.1.0/scripts/check_ambient_import.py +88 -0
- pstrain-0.1.0/scripts/check_arctic_pin.py +99 -0
- pstrain-0.1.0/scripts/check_containment_routing.py +331 -0
- pstrain-0.1.0/scripts/check_fp_contract.py +289 -0
- pstrain-0.1.0/scripts/compare_multipron_alignments.py +221 -0
- pstrain-0.1.0/scripts/dispatch_windows_probe.sh +53 -0
- pstrain-0.1.0/scripts/extract_signatures.py +123 -0
- pstrain-0.1.0/scripts/fetch_corpus.py +7 -0
- pstrain-0.1.0/scripts/fix_program_cmake.py +36 -0
- pstrain-0.1.0/scripts/generate_cffi_exports.py +64 -0
- pstrain-0.1.0/scripts/procctl.py +339 -0
- pstrain-0.1.0/scripts/regenerate_arctic_paired_analysis.py +105 -0
- pstrain-0.1.0/scripts/regenerate_numeric_golden.py +27 -0
- pstrain-0.1.0/scripts/repair_linux_wheel.py +42 -0
- pstrain-0.1.0/scripts/run_verified_tests.py +51 -0
- pstrain-0.1.0/scripts/setup_arctic.py +269 -0
- pstrain-0.1.0/scripts/setup_timit.py +231 -0
- pstrain-0.1.0/scripts/test_installed_distribution.py +28 -0
- pstrain-0.1.0/scripts/tree_compare.py +336 -0
- pstrain-0.1.0/source-determinable-rerolls-2026-08-14.json +56 -0
- pstrain-0.1.0/tests/__init__.py +0 -0
- pstrain-0.1.0/tests/clib.py +52 -0
- pstrain-0.1.0/tests/conftest.py +142 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/README.md +68 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/dictionary.dict +103 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/filler.dict +3 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/phoneset.txt +36 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/transcription.txt +10 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0001.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0002.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0003.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0004.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0005.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0006.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0007.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0008.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0009.wav +0 -0
- pstrain-0.1.0/tests/fixtures/mini_arctic/wav/arctic_a0010.wav +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/README.md +17 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/arctic_a0257.mfc +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/arctic_a0336.mfc +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/arctic_b0424.mfc +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/dictionary.dict +40 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/filler.dict +3 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/model/feat.params +23 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/model/mdef +50 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/model/means +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/model/mixture_weights +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/model/transition_matrices +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/model/variances +0 -0
- pstrain-0.1.0/tests/fixtures/multipron_final_state/transcription.txt +3 -0
- pstrain-0.1.0/tests/golden/mini_arctic_ci_1g_decode.json +57 -0
- pstrain-0.1.0/tests/golden/numeric_bw.json +65 -0
- pstrain-0.1.0/tests/job_control_fixture.py +55 -0
- pstrain-0.1.0/tests/numeric_harness.py +171 -0
- pstrain-0.1.0/tests/test_agg_seg.py +239 -0
- pstrain-0.1.0/tests/test_align.py +529 -0
- pstrain-0.1.0/tests/test_ambient_import_gate.py +124 -0
- pstrain-0.1.0/tests/test_benchmark_arctic.py +964 -0
- pstrain-0.1.0/tests/test_benchmark_corpora.py +80 -0
- pstrain-0.1.0/tests/test_benchmark_timit.py +56 -0
- pstrain-0.1.0/tests/test_boundary_metrics.py +44 -0
- pstrain-0.1.0/tests/test_bw_sharding.py +380 -0
- pstrain-0.1.0/tests/test_cepview.py +119 -0
- pstrain-0.1.0/tests/test_cffi_abi.py +27 -0
- pstrain-0.1.0/tests/test_commands.py +401 -0
- pstrain-0.1.0/tests/test_compare_models.py +70 -0
- pstrain-0.1.0/tests/test_complete_model_contract.py +280 -0
- pstrain-0.1.0/tests/test_config.py +329 -0
- pstrain-0.1.0/tests/test_containment_routing.py +187 -0
- pstrain-0.1.0/tests/test_contract_docs.py +55 -0
- pstrain-0.1.0/tests/test_data.py +26 -0
- pstrain-0.1.0/tests/test_decode_parallel.py +240 -0
- pstrain-0.1.0/tests/test_decoder_config.py +134 -0
- pstrain-0.1.0/tests/test_dtree.py +565 -0
- pstrain-0.1.0/tests/test_e2e_training.py +514 -0
- pstrain-0.1.0/tests/test_external_split.py +86 -0
- pstrain-0.1.0/tests/test_feat_params.py +173 -0
- pstrain-0.1.0/tests/test_features.py +309 -0
- pstrain-0.1.0/tests/test_flat.py +219 -0
- pstrain-0.1.0/tests/test_fp_contract_gate.py +381 -0
- pstrain-0.1.0/tests/test_lib_structure.py +117 -0
- pstrain-0.1.0/tests/test_mdef.py +359 -0
- pstrain-0.1.0/tests/test_native_worker.py +273 -0
- pstrain-0.1.0/tests/test_numeric_harness.py +1434 -0
- pstrain-0.1.0/tests/test_one_command.py +504 -0
- pstrain-0.1.0/tests/test_param_cnt.py +238 -0
- pstrain-0.1.0/tests/test_parity.py +558 -0
- pstrain-0.1.0/tests/test_paths.py +109 -0
- pstrain-0.1.0/tests/test_pipeline_runner.py +1394 -0
- pstrain-0.1.0/tests/test_pipeline_tasks.py +1296 -0
- pstrain-0.1.0/tests/test_printp.py +110 -0
- pstrain-0.1.0/tests/test_procctl.py +289 -0
- pstrain-0.1.0/tests/test_pstrainc.py +605 -0
- pstrain-0.1.0/tests/test_sample_data.py +77 -0
- pstrain-0.1.0/tests/test_setup.py +331 -0
- pstrain-0.1.0/tests/test_split.py +411 -0
- pstrain-0.1.0/tests/test_standalone_entry_failures.py +181 -0
- pstrain-0.1.0/tests/test_symbol_visibility.py +53 -0
- pstrain-0.1.0/tests/test_timings_cli.py +33 -0
- pstrain-0.1.0/tests/test_train_convergence.py +33 -0
- pstrain-0.1.0/tests/test_train_retry.py +233 -0
- pstrain-0.1.0/tests/test_transcription.py +29 -0
- pstrain-0.1.0/tests/test_tree_compare.py +107 -0
- pstrain-0.1.0/tests/test_ts2cb.py +156 -0
- pstrain-0.1.0/tests/test_validate.py +40 -0
- pstrain-0.1.0/tests/test_version.py +11 -0
- pstrain-0.1.0/timitcs-report-2026-08-16.md +80 -0
- pstrain-0.1.0/w8-report-2026-08-16.md +17 -0
- pstrain-0.1.0/winCL-report-2026-08-16.md +22 -0
- pstrain-0.1.0/winD-report-2026-08-16.md +8 -0
- pstrain-0.1.0/winE-report-2026-08-16.md +27 -0
- pstrain-0.1.0/winF-report-2026-08-16.md +20 -0
- pstrain-0.1.0/winP-report-2026-08-16.md +36 -0
- pstrain-0.1.0/winPy-report-2026-08-16.md +41 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
updates:
|
|
3
|
+
# Keep GitHub Actions up to date
|
|
4
|
+
- package-ecosystem: "github-actions"
|
|
5
|
+
directory: "/"
|
|
6
|
+
schedule:
|
|
7
|
+
interval: "weekly"
|
|
8
|
+
groups:
|
|
9
|
+
actions:
|
|
10
|
+
patterns:
|
|
11
|
+
- "*"
|
|
12
|
+
|
|
13
|
+
# Keep Python dependencies up to date
|
|
14
|
+
- package-ecosystem: "pip"
|
|
15
|
+
directory: "/"
|
|
16
|
+
schedule:
|
|
17
|
+
interval: "monthly"
|
|
18
|
+
groups:
|
|
19
|
+
python-deps:
|
|
20
|
+
patterns:
|
|
21
|
+
- "*"
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
name: Build
|
|
2
|
+
|
|
3
|
+
# Builds the sdist and platform wheels for packaging-relevant changes and on demand.
|
|
4
|
+
# A weekly scheduled build detects packaging drift when those files do not change.
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
push:
|
|
8
|
+
branches: [master, main]
|
|
9
|
+
paths:
|
|
10
|
+
- csrc/**
|
|
11
|
+
- CMakeLists.txt
|
|
12
|
+
- pyproject.toml
|
|
13
|
+
- .github/workflows/build.yml
|
|
14
|
+
pull_request:
|
|
15
|
+
branches: [master, main]
|
|
16
|
+
paths:
|
|
17
|
+
- csrc/**
|
|
18
|
+
- CMakeLists.txt
|
|
19
|
+
- pyproject.toml
|
|
20
|
+
- .github/workflows/build.yml
|
|
21
|
+
workflow_dispatch:
|
|
22
|
+
schedule:
|
|
23
|
+
- cron: "17 4 * * 1"
|
|
24
|
+
|
|
25
|
+
# Cancel superseded branch/PR runs; never auto-cancel default-branch runs so mainline gets a complete verdict.
|
|
26
|
+
concurrency:
|
|
27
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
28
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master' }}
|
|
29
|
+
|
|
30
|
+
jobs:
|
|
31
|
+
# Build source distribution
|
|
32
|
+
build-sdist:
|
|
33
|
+
name: Build source distribution
|
|
34
|
+
runs-on: ubuntu-latest
|
|
35
|
+
steps:
|
|
36
|
+
- uses: actions/checkout@v7
|
|
37
|
+
|
|
38
|
+
- name: Build SDist
|
|
39
|
+
run: pipx run build --sdist
|
|
40
|
+
|
|
41
|
+
- uses: actions/upload-artifact@v7
|
|
42
|
+
with:
|
|
43
|
+
name: sdist
|
|
44
|
+
path: dist/*.tar.gz
|
|
45
|
+
|
|
46
|
+
- name: Test installed source distribution from a neutral directory
|
|
47
|
+
run: |
|
|
48
|
+
python -m venv "$RUNNER_TEMP/sdist-test"
|
|
49
|
+
"$RUNNER_TEMP/sdist-test/bin/pip" install dist/*.tar.gz
|
|
50
|
+
cd "$RUNNER_TEMP"
|
|
51
|
+
"$RUNNER_TEMP/sdist-test/bin/python" "$GITHUB_WORKSPACE/scripts/test_installed_distribution.py"
|
|
52
|
+
|
|
53
|
+
# Build wheels on multiple platforms.
|
|
54
|
+
# Windows is intentionally omitted: the vendored CMU Sphinx C does not yet
|
|
55
|
+
# build under MSVC (POSIX-only drand48 and several unresolved sphinx3_align
|
|
56
|
+
# symbols). Restore windows-latest here once that portability work is done.
|
|
57
|
+
build-wheels:
|
|
58
|
+
name: Build wheels on ${{ matrix.os }}
|
|
59
|
+
runs-on: ${{ matrix.os }}
|
|
60
|
+
strategy:
|
|
61
|
+
fail-fast: false
|
|
62
|
+
matrix:
|
|
63
|
+
os: [ubuntu-latest, macos-latest]
|
|
64
|
+
steps:
|
|
65
|
+
- uses: actions/checkout@v7
|
|
66
|
+
|
|
67
|
+
- name: Build wheels
|
|
68
|
+
uses: pypa/cibuildwheel@v4.2
|
|
69
|
+
|
|
70
|
+
- name: Verify emitted floating-point contraction policy in wheels
|
|
71
|
+
run: python scripts/check_fp_contract.py --wheels wheelhouse
|
|
72
|
+
|
|
73
|
+
- uses: actions/upload-artifact@v7
|
|
74
|
+
with:
|
|
75
|
+
name: wheels-${{ matrix.os }}
|
|
76
|
+
path: ./wheelhouse/*.whl
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
name: Docs
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [master, main]
|
|
6
|
+
paths:
|
|
7
|
+
- "docs/**"
|
|
8
|
+
- "pstrain/lib/config/**"
|
|
9
|
+
- "pyproject.toml"
|
|
10
|
+
- ".github/workflows/docs.yml"
|
|
11
|
+
pull_request:
|
|
12
|
+
branches: [master, main]
|
|
13
|
+
paths:
|
|
14
|
+
- "docs/**"
|
|
15
|
+
- "pstrain/lib/config/**"
|
|
16
|
+
- "pyproject.toml"
|
|
17
|
+
- ".github/workflows/docs.yml"
|
|
18
|
+
workflow_dispatch:
|
|
19
|
+
|
|
20
|
+
concurrency:
|
|
21
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
22
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master' }}
|
|
23
|
+
|
|
24
|
+
jobs:
|
|
25
|
+
build:
|
|
26
|
+
runs-on: ubuntu-latest
|
|
27
|
+
steps:
|
|
28
|
+
- uses: actions/checkout@v7
|
|
29
|
+
- uses: actions/setup-python@v7
|
|
30
|
+
with:
|
|
31
|
+
python-version: "3.12"
|
|
32
|
+
- run: pip install -e ".[docs]"
|
|
33
|
+
- name: Build documentation
|
|
34
|
+
run: sphinx-build -b html docs docs/_build/html
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
# Build wheels + sdist and publish pstrain to PyPI via Trusted Publishing (OIDC).
|
|
4
|
+
# Triggered when a GitHub Release is published; also runnable on demand to rehearse
|
|
5
|
+
# the build (the publish step only runs for release events).
|
|
6
|
+
|
|
7
|
+
on:
|
|
8
|
+
release:
|
|
9
|
+
types: [published]
|
|
10
|
+
workflow_dispatch:
|
|
11
|
+
|
|
12
|
+
concurrency:
|
|
13
|
+
group: release-${{ github.ref }}
|
|
14
|
+
cancel-in-progress: false
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
build-wheels:
|
|
18
|
+
name: Build wheels on ${{ matrix.os }}
|
|
19
|
+
runs-on: ${{ matrix.os }}
|
|
20
|
+
strategy:
|
|
21
|
+
fail-fast: false
|
|
22
|
+
matrix:
|
|
23
|
+
os: [ubuntu-latest, macos-latest]
|
|
24
|
+
steps:
|
|
25
|
+
- uses: actions/checkout@v7
|
|
26
|
+
- name: Build wheels
|
|
27
|
+
uses: pypa/cibuildwheel@v4.2
|
|
28
|
+
- name: Verify emitted floating-point contraction policy in wheels
|
|
29
|
+
run: python scripts/check_fp_contract.py --wheels wheelhouse
|
|
30
|
+
- uses: actions/upload-artifact@v7
|
|
31
|
+
with:
|
|
32
|
+
name: dist-wheels-${{ matrix.os }}
|
|
33
|
+
path: ./wheelhouse/*.whl
|
|
34
|
+
|
|
35
|
+
build-sdist:
|
|
36
|
+
name: Build source distribution
|
|
37
|
+
runs-on: ubuntu-latest
|
|
38
|
+
steps:
|
|
39
|
+
- uses: actions/checkout@v7
|
|
40
|
+
- name: Build SDist
|
|
41
|
+
run: pipx run build --sdist
|
|
42
|
+
- name: Test installed source distribution from a neutral directory
|
|
43
|
+
run: |
|
|
44
|
+
python -m venv "$RUNNER_TEMP/sdist-test"
|
|
45
|
+
"$RUNNER_TEMP/sdist-test/bin/pip" install dist/*.tar.gz
|
|
46
|
+
cd "$RUNNER_TEMP"
|
|
47
|
+
"$RUNNER_TEMP/sdist-test/bin/python" "$GITHUB_WORKSPACE/scripts/test_installed_distribution.py"
|
|
48
|
+
- uses: actions/upload-artifact@v7
|
|
49
|
+
with:
|
|
50
|
+
name: dist-sdist
|
|
51
|
+
path: dist/*.tar.gz
|
|
52
|
+
|
|
53
|
+
publish:
|
|
54
|
+
name: Publish to PyPI
|
|
55
|
+
needs: [build-wheels, build-sdist]
|
|
56
|
+
runs-on: ubuntu-latest
|
|
57
|
+
# Only publish for a real published Release, never for workflow_dispatch rehearsals.
|
|
58
|
+
if: github.event_name == 'release'
|
|
59
|
+
environment:
|
|
60
|
+
name: pypi
|
|
61
|
+
url: https://pypi.org/p/pstrain
|
|
62
|
+
permissions:
|
|
63
|
+
id-token: write # OIDC token for Trusted Publishing; no API token needed.
|
|
64
|
+
steps:
|
|
65
|
+
- name: Download all distribution artifacts
|
|
66
|
+
uses: actions/download-artifact@v7
|
|
67
|
+
with:
|
|
68
|
+
path: dist
|
|
69
|
+
pattern: dist-*
|
|
70
|
+
merge-multiple: true
|
|
71
|
+
- name: Publish to PyPI
|
|
72
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
# Always report required test contexts; expensive steps no-op for docs-only changes.
|
|
2
|
+
name: Tests
|
|
3
|
+
|
|
4
|
+
on:
|
|
5
|
+
push:
|
|
6
|
+
branches: [master, main]
|
|
7
|
+
pull_request:
|
|
8
|
+
branches: [master, main]
|
|
9
|
+
workflow_dispatch:
|
|
10
|
+
|
|
11
|
+
# Cancel superseded branch/PR runs; never auto-cancel default-branch runs so mainline gets a complete verdict.
|
|
12
|
+
concurrency:
|
|
13
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
14
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master' }}
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
changes:
|
|
18
|
+
name: Detect code changes
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
outputs:
|
|
21
|
+
code: ${{ steps.filter.outputs.code }}
|
|
22
|
+
steps:
|
|
23
|
+
- uses: actions/checkout@v7
|
|
24
|
+
|
|
25
|
+
- name: Classify changed paths
|
|
26
|
+
id: filter
|
|
27
|
+
uses: dorny/paths-filter@v3
|
|
28
|
+
with:
|
|
29
|
+
filters: |
|
|
30
|
+
code:
|
|
31
|
+
- '!**.md'
|
|
32
|
+
- '!docs/**'
|
|
33
|
+
|
|
34
|
+
# C library tests
|
|
35
|
+
c-tests:
|
|
36
|
+
name: C tests on ${{ matrix.os }}
|
|
37
|
+
needs: changes
|
|
38
|
+
runs-on: ${{ matrix.os }}
|
|
39
|
+
strategy:
|
|
40
|
+
fail-fast: false
|
|
41
|
+
matrix:
|
|
42
|
+
os: [ubuntu-latest, macos-latest]
|
|
43
|
+
steps:
|
|
44
|
+
- uses: actions/checkout@v7
|
|
45
|
+
|
|
46
|
+
- name: Configure
|
|
47
|
+
if: needs.changes.outputs.code == 'true'
|
|
48
|
+
run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug -DBUILD_CLI=ON
|
|
49
|
+
|
|
50
|
+
- name: Build
|
|
51
|
+
if: needs.changes.outputs.code == 'true'
|
|
52
|
+
run: cmake --build build
|
|
53
|
+
|
|
54
|
+
- name: Test
|
|
55
|
+
if: needs.changes.outputs.code == 'true'
|
|
56
|
+
# --no-tests=error guards against silently passing on an empty test
|
|
57
|
+
# set (the previous failure mode: no add_test() anywhere).
|
|
58
|
+
run: ctest --test-dir build --output-on-failure --no-tests=error
|
|
59
|
+
|
|
60
|
+
- name: Verify emitted floating-point contraction policy
|
|
61
|
+
if: needs.changes.outputs.code == 'true'
|
|
62
|
+
run: python scripts/check_fp_contract.py build
|
|
63
|
+
|
|
64
|
+
# Linux-only sanitizer coverage. AppleClang is excluded because ASan hangs
|
|
65
|
+
# before main on macOS in this project.
|
|
66
|
+
c-tests-sanitizers:
|
|
67
|
+
name: C tests with ASan and UBSan on Linux
|
|
68
|
+
needs: changes
|
|
69
|
+
runs-on: ubuntu-latest
|
|
70
|
+
steps:
|
|
71
|
+
- uses: actions/checkout@v7
|
|
72
|
+
|
|
73
|
+
- name: Configure
|
|
74
|
+
if: needs.changes.outputs.code == 'true'
|
|
75
|
+
run: >-
|
|
76
|
+
cmake -S . -B build
|
|
77
|
+
-DCMAKE_BUILD_TYPE=Debug
|
|
78
|
+
-DBUILD_CLI=ON
|
|
79
|
+
-DCMAKE_C_FLAGS="-fsanitize=address,undefined -fno-omit-frame-pointer"
|
|
80
|
+
|
|
81
|
+
- name: Build
|
|
82
|
+
if: needs.changes.outputs.code == 'true'
|
|
83
|
+
run: cmake --build build
|
|
84
|
+
|
|
85
|
+
- name: Test
|
|
86
|
+
if: needs.changes.outputs.code == 'true'
|
|
87
|
+
env:
|
|
88
|
+
ASAN_OPTIONS: halt_on_error=1
|
|
89
|
+
UBSAN_OPTIONS: halt_on_error=1:print_stacktrace=1
|
|
90
|
+
run: ctest --test-dir build --output-on-failure --no-tests=error
|
|
91
|
+
|
|
92
|
+
# Python tests across versions
|
|
93
|
+
python-tests:
|
|
94
|
+
name: Python ${{ matrix.python }} on ${{ matrix.os }}
|
|
95
|
+
needs: changes
|
|
96
|
+
runs-on: ${{ matrix.os }}
|
|
97
|
+
strategy:
|
|
98
|
+
fail-fast: false
|
|
99
|
+
matrix:
|
|
100
|
+
# PRs test boundary Python versions on Ubuntu plus one representative
|
|
101
|
+
# framework-Python leg on macOS; other events run the full matrix.
|
|
102
|
+
include: ${{ github.event_name == 'pull_request' && fromJSON('[{"python":"3.11","os":"ubuntu-latest"},{"python":"3.13","os":"ubuntu-latest"},{"python":"3.13","os":"macos-latest"}]') || fromJSON('[{"python":"3.11","os":"ubuntu-latest"},{"python":"3.11","os":"macos-latest"},{"python":"3.12","os":"ubuntu-latest"},{"python":"3.12","os":"macos-latest"},{"python":"3.13","os":"ubuntu-latest"},{"python":"3.13","os":"macos-latest"}]') }}
|
|
103
|
+
steps:
|
|
104
|
+
- uses: actions/checkout@v7
|
|
105
|
+
|
|
106
|
+
- name: Set up Python ${{ matrix.python }}
|
|
107
|
+
if: needs.changes.outputs.code == 'true'
|
|
108
|
+
uses: actions/setup-python@v7
|
|
109
|
+
with:
|
|
110
|
+
python-version: ${{ matrix.python }}
|
|
111
|
+
|
|
112
|
+
- name: Install dependencies
|
|
113
|
+
if: needs.changes.outputs.code == 'true'
|
|
114
|
+
run: |
|
|
115
|
+
python -m pip install --upgrade pip
|
|
116
|
+
pip install pytest pytest-cov
|
|
117
|
+
|
|
118
|
+
- name: Build C library
|
|
119
|
+
if: needs.changes.outputs.code == 'true'
|
|
120
|
+
run: |
|
|
121
|
+
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_CLI=ON
|
|
122
|
+
cmake --build build
|
|
123
|
+
|
|
124
|
+
- name: Verify emitted floating-point contraction policy
|
|
125
|
+
if: needs.changes.outputs.code == 'true'
|
|
126
|
+
run: python scripts/check_fp_contract.py build
|
|
127
|
+
|
|
128
|
+
- name: Install package (editable)
|
|
129
|
+
if: needs.changes.outputs.code == 'true'
|
|
130
|
+
run: pip install -e ".[dev,test]"
|
|
131
|
+
|
|
132
|
+
- name: Run tests
|
|
133
|
+
if: needs.changes.outputs.code == 'true'
|
|
134
|
+
# PSTRAIN_REQUIRE_CLIB=1 turns "C library not loadable" from a silent
|
|
135
|
+
# skip into a hard failure, so this job can't go green while the
|
|
136
|
+
# entire CFFI/parity tier is quietly skipped.
|
|
137
|
+
env:
|
|
138
|
+
PSTRAIN_REQUIRE_CLIB: "1"
|
|
139
|
+
run: pytest -v --cov=pstrain --cov-report=xml
|
|
140
|
+
|
|
141
|
+
- name: Verify canonical config consumers and generated reference
|
|
142
|
+
if: needs.changes.outputs.code == 'true' && matrix.python == '3.11' && matrix.os == 'ubuntu-latest'
|
|
143
|
+
# This is an installed-package job; the ambient gate is exercised by
|
|
144
|
+
# the in-tree verified flow and must reject this editable installation.
|
|
145
|
+
run: make AMBIENT_IMPORT_PREREQUISITE= config-check
|
|
146
|
+
|
|
147
|
+
- name: Upload coverage
|
|
148
|
+
uses: codecov/codecov-action@v7
|
|
149
|
+
if: needs.changes.outputs.code == 'true' && matrix.python == '3.12' && matrix.os == 'ubuntu-latest'
|
|
150
|
+
with:
|
|
151
|
+
files: ./coverage.xml
|
|
152
|
+
fail_ci_if_error: false
|
|
153
|
+
|
|
154
|
+
# Lint checks
|
|
155
|
+
lint:
|
|
156
|
+
name: Lint
|
|
157
|
+
needs: changes
|
|
158
|
+
runs-on: ubuntu-latest
|
|
159
|
+
steps:
|
|
160
|
+
- uses: actions/checkout@v7
|
|
161
|
+
|
|
162
|
+
- name: Set up Python
|
|
163
|
+
if: needs.changes.outputs.code == 'true'
|
|
164
|
+
uses: actions/setup-python@v7
|
|
165
|
+
with:
|
|
166
|
+
python-version: "3.12"
|
|
167
|
+
|
|
168
|
+
- name: Install dependencies
|
|
169
|
+
if: needs.changes.outputs.code == 'true'
|
|
170
|
+
run: |
|
|
171
|
+
python -m pip install --upgrade pip
|
|
172
|
+
pip install ruff mypy
|
|
173
|
+
|
|
174
|
+
- name: Run ruff
|
|
175
|
+
if: needs.changes.outputs.code == 'true'
|
|
176
|
+
run: ruff check pstrain/ tests/
|
|
177
|
+
|
|
178
|
+
- name: Run ruff format check
|
|
179
|
+
if: needs.changes.outputs.code == 'true'
|
|
180
|
+
run: ruff format --check pstrain/ tests/
|
|
181
|
+
|
|
182
|
+
# Type checking (strict mypy, blocking).
|
|
183
|
+
typecheck:
|
|
184
|
+
name: Type check
|
|
185
|
+
needs: changes
|
|
186
|
+
runs-on: ubuntu-latest
|
|
187
|
+
steps:
|
|
188
|
+
- uses: actions/checkout@v7
|
|
189
|
+
|
|
190
|
+
- name: Set up Python
|
|
191
|
+
if: needs.changes.outputs.code == 'true'
|
|
192
|
+
uses: actions/setup-python@v7
|
|
193
|
+
with:
|
|
194
|
+
python-version: "3.12"
|
|
195
|
+
|
|
196
|
+
- name: Install dependencies
|
|
197
|
+
if: needs.changes.outputs.code == 'true'
|
|
198
|
+
run: |
|
|
199
|
+
python -m pip install --upgrade pip
|
|
200
|
+
pip install -e ".[dev]"
|
|
201
|
+
|
|
202
|
+
- name: Run mypy
|
|
203
|
+
if: needs.changes.outputs.code == 'true'
|
|
204
|
+
run: mypy pstrain/ --ignore-missing-imports
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
name: Windows native build
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [master, main]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [master, main]
|
|
8
|
+
|
|
9
|
+
# Cancel superseded PR runs; never auto-cancel default-branch runs so mainline gets a complete verdict.
|
|
10
|
+
concurrency:
|
|
11
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
12
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master' }}
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
windows-native-build:
|
|
16
|
+
name: Windows native build (${{ matrix.compiler }})
|
|
17
|
+
runs-on: windows-latest
|
|
18
|
+
strategy:
|
|
19
|
+
fail-fast: false
|
|
20
|
+
matrix:
|
|
21
|
+
compiler: [msvc, clang-cl]
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- uses: actions/checkout@v7
|
|
25
|
+
|
|
26
|
+
- name: Enter the MSVC developer environment
|
|
27
|
+
uses: ilammy/msvc-dev-cmd@v1
|
|
28
|
+
|
|
29
|
+
- name: Configure (${{ matrix.compiler }})
|
|
30
|
+
shell: pwsh
|
|
31
|
+
run: |
|
|
32
|
+
$build = "build-${{ matrix.compiler }}"
|
|
33
|
+
$compilerArgs = @()
|
|
34
|
+
if ("${{ matrix.compiler }}" -eq "clang-cl") {
|
|
35
|
+
$compilerArgs += "-T"
|
|
36
|
+
$compilerArgs += "ClangCL"
|
|
37
|
+
}
|
|
38
|
+
cmake -S . -B $build `
|
|
39
|
+
-DBUILD_SHARED_LIBS=ON `
|
|
40
|
+
-DBUILD_CLI=ON `
|
|
41
|
+
@compilerArgs
|
|
42
|
+
|
|
43
|
+
- name: Build static core, shared core, and CLI programs (${{ matrix.compiler }})
|
|
44
|
+
shell: pwsh
|
|
45
|
+
run: cmake --build "build-${{ matrix.compiler }}" --config Release --parallel
|
|
46
|
+
|
|
47
|
+
windows-python-tests:
|
|
48
|
+
name: Windows Python 3.13 tests
|
|
49
|
+
runs-on: windows-latest
|
|
50
|
+
|
|
51
|
+
steps:
|
|
52
|
+
- uses: actions/checkout@v7
|
|
53
|
+
|
|
54
|
+
- name: Set up Python 3.13
|
|
55
|
+
uses: actions/setup-python@v7
|
|
56
|
+
with:
|
|
57
|
+
python-version: "3.13"
|
|
58
|
+
|
|
59
|
+
- name: Enter the MSVC developer environment
|
|
60
|
+
uses: ilammy/msvc-dev-cmd@v1
|
|
61
|
+
|
|
62
|
+
- name: Build native library and CLI programs
|
|
63
|
+
shell: pwsh
|
|
64
|
+
run: |
|
|
65
|
+
cmake -S . -B build -DBUILD_SHARED_LIBS=ON -DBUILD_CLI=ON
|
|
66
|
+
cmake --build build --config Release --parallel
|
|
67
|
+
|
|
68
|
+
- name: Install package and test dependencies
|
|
69
|
+
run: |
|
|
70
|
+
python -m pip install --upgrade pip
|
|
71
|
+
python -m pip install -e ".[dev]"
|
|
72
|
+
|
|
73
|
+
- name: Run Windows-compatible Python tests
|
|
74
|
+
env:
|
|
75
|
+
PSTRAIN_REQUIRE_CLIB: "1"
|
|
76
|
+
shell: pwsh
|
|
77
|
+
run: |
|
|
78
|
+
python -m pytest -v -rs `
|
|
79
|
+
tests/test_paths.py `
|
|
80
|
+
tests/test_commands.py::TestCommandBuilder::test_resolution_uses_exe_suffix_on_windows `
|
|
81
|
+
tests/test_cffi_abi.py `
|
|
82
|
+
tests/test_lib_structure.py `
|
|
83
|
+
tests/test_pstrainc.py::test_library_loads `
|
|
84
|
+
tests/test_pstrainc.py::test_logmath_init_free `
|
|
85
|
+
tests/test_pstrainc.py::test_logmath_log_exp `
|
|
86
|
+
tests/test_pstrainc.py::test_logmath_add `
|
|
87
|
+
tests/test_pstrainc.py::test_logmath_get_base `
|
|
88
|
+
tests/test_pstrainc.py::test_logmath_edge_cases `
|
|
89
|
+
tests/test_pstrainc.py::test_logmath_different_bases `
|
|
90
|
+
tests/test_pstrainc.py::test_enum_constants `
|
|
91
|
+
tests/test_pstrainc.py::test_error_macros_exist `
|
|
92
|
+
tests/test_pstrainc.py::test_logmath_identity `
|
|
93
|
+
tests/test_pstrainc.py::test_logmath_add_commutative `
|
|
94
|
+
tests/test_pstrainc.py::test_pstrain_fe_create_default `
|
|
95
|
+
tests/test_pstrainc.py::test_pstrain_fe_create_custom `
|
|
96
|
+
tests/test_pstrainc.py::test_pstrain_fe_create_8khz `
|
|
97
|
+
tests/test_features.py::TestFEParams `
|
|
98
|
+
tests/test_features.py::TestReadWriteSphinxMfc `
|
|
99
|
+
tests/test_features.py::TestReadWav `
|
|
100
|
+
tests/test_bw_sharding.py `
|
|
101
|
+
tests/test_dtree.py `
|
|
102
|
+
tests/test_e2e_training.py `
|
|
103
|
+
tests/test_feat_params.py `
|
|
104
|
+
tests/test_numeric_harness.py `
|
|
105
|
+
tests/test_pipeline_tasks.py `
|
|
106
|
+
tests/test_train_convergence.py `
|
|
107
|
+
tests/test_train_retry.py
|
pstrain-0.1.0/.gitignore
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# local untracked cache
|
|
2
|
+
untracked/
|
|
3
|
+
|
|
4
|
+
# Python
|
|
5
|
+
__pycache__/
|
|
6
|
+
*.py[cod]
|
|
7
|
+
*$py.class
|
|
8
|
+
.Python
|
|
9
|
+
build*/
|
|
10
|
+
develop-eggs/
|
|
11
|
+
dist/
|
|
12
|
+
downloads/
|
|
13
|
+
eggs/
|
|
14
|
+
.eggs/
|
|
15
|
+
# Build artifacts (root level only, not pstrain/lib/)
|
|
16
|
+
/lib/
|
|
17
|
+
/lib64/
|
|
18
|
+
parts/
|
|
19
|
+
sdist/
|
|
20
|
+
var/
|
|
21
|
+
wheels/
|
|
22
|
+
*.egg-info/
|
|
23
|
+
.installed.cfg
|
|
24
|
+
*.egg
|
|
25
|
+
|
|
26
|
+
# Virtual environments
|
|
27
|
+
venv/
|
|
28
|
+
.venv/
|
|
29
|
+
ENV/
|
|
30
|
+
|
|
31
|
+
# IDE
|
|
32
|
+
.idea/
|
|
33
|
+
.vscode/
|
|
34
|
+
*.swp
|
|
35
|
+
*.swo
|
|
36
|
+
*~
|
|
37
|
+
|
|
38
|
+
# Testing
|
|
39
|
+
.pytest_cache/
|
|
40
|
+
.coverage
|
|
41
|
+
htmlcov/
|
|
42
|
+
.tox/
|
|
43
|
+
.nox/
|
|
44
|
+
|
|
45
|
+
# mypy
|
|
46
|
+
.mypy_cache/
|
|
47
|
+
|
|
48
|
+
# ruff
|
|
49
|
+
.ruff_cache/
|
|
50
|
+
|
|
51
|
+
# OS
|
|
52
|
+
.DS_Store
|
|
53
|
+
Thumbs.db
|
|
54
|
+
|
|
55
|
+
# Documentation
|
|
56
|
+
docs/_build/
|
|
57
|
+
|
|
58
|
+
# Built C library artifacts
|
|
59
|
+
pstrain/lib/_cffi/*.dylib
|
|
60
|
+
pstrain/lib/_cffi/*.so
|
|
61
|
+
pstrain/lib/_cffi/*.dll
|
|
62
|
+
build.log
|
|
63
|
+
|
|
64
|
+
# Testing data (do not commit)
|
|
65
|
+
# CMU Arctic downloads and extracted data
|
|
66
|
+
cmu_arctic/
|
|
67
|
+
cmu_us_*_arctic/
|
|
68
|
+
*.tar.bz2
|
|
69
|
+
/Volumes/hacks/lenzo/pstrain/projects/
|
|
70
|
+
.snakemake/
|
|
71
|
+
|
|
72
|
+
# Generated training data and models
|
|
73
|
+
audio/
|
|
74
|
+
shared/
|
|
75
|
+
experiments/
|
|
76
|
+
dist/
|
|
77
|
+
*.mfc
|
|
78
|
+
*.wav
|
|
79
|
+
/data/
|
|
80
|
+
benchmarks/timit/data/
|
|
81
|
+
benchmarks/timit/pilot/
|
|
82
|
+
|
|
83
|
+
# ...but committed test fixtures are not generated artifacts. Keep them.
|
|
84
|
+
# (These broad patterns over-reach — see plan 3.5; this negation is the
|
|
85
|
+
# minimal fix so the mini_arctic e2e corpus is tracked.)
|
|
86
|
+
!tests/fixtures/**
|
|
87
|
+
!tests/fixtures/mini_arctic/wav/*.wav
|
|
88
|
+
!pstrain/data/sample/*.wav
|
|
89
|
+
.claude
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Pre-commit hooks for pstrain
|
|
2
|
+
# Install: pip install pre-commit && pre-commit install
|
|
3
|
+
|
|
4
|
+
default_language_version:
|
|
5
|
+
python: python3.12
|
|
6
|
+
|
|
7
|
+
repos:
|
|
8
|
+
# Basic file checks
|
|
9
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
10
|
+
rev: v6.0.0
|
|
11
|
+
hooks:
|
|
12
|
+
- id: trailing-whitespace
|
|
13
|
+
exclude: ^(build/|\.eggs/)
|
|
14
|
+
- id: end-of-file-fixer
|
|
15
|
+
exclude: ^(build/|\.eggs/)
|
|
16
|
+
- id: check-yaml
|
|
17
|
+
- id: check-toml
|
|
18
|
+
- id: check-json
|
|
19
|
+
- id: check-added-large-files
|
|
20
|
+
args: ['--maxkb=1000']
|
|
21
|
+
exclude: \.(wav|mp3|flac|ogg)$
|
|
22
|
+
- id: check-merge-conflict
|
|
23
|
+
- id: check-case-conflict
|
|
24
|
+
- id: mixed-line-ending
|
|
25
|
+
args: ['--fix=lf']
|
|
26
|
+
|
|
27
|
+
# Python code quality - Ruff (fast linter and formatter)
|
|
28
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
29
|
+
rev: v0.15.20
|
|
30
|
+
hooks:
|
|
31
|
+
# Run the linter
|
|
32
|
+
- id: ruff
|
|
33
|
+
args: [--fix]
|
|
34
|
+
files: ^(pstrain|tests)/
|
|
35
|
+
exclude: ^(build/|csrc/libs/libsphinxbase/(fe|util)/.*\.py$)
|
|
36
|
+
# Run the formatter
|
|
37
|
+
- id: ruff-format
|
|
38
|
+
files: ^(pstrain|tests)/
|
|
39
|
+
exclude: ^(build/|csrc/libs/libsphinxbase/(fe|util)/.*\.py$)
|
|
40
|
+
|
|
41
|
+
# Type checking with mypy
|
|
42
|
+
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
43
|
+
rev: v2.1.0
|
|
44
|
+
hooks:
|
|
45
|
+
- id: mypy
|
|
46
|
+
additional_dependencies: [pydantic==2.12.5, types-PyYAML==6.0.12.20250915, pytest==9.0.2]
|
|
47
|
+
exclude: ^(build/|\.eggs/|csrc/)
|
|
48
|
+
args: [pstrain, --ignore-missing-imports]
|
|
49
|
+
pass_filenames: false
|
|
50
|
+
|
|
51
|
+
# Exclude certain paths globally
|
|
52
|
+
exclude: |
|
|
53
|
+
(?x)^(
|
|
54
|
+
csrc/|
|
|
55
|
+
build/|
|
|
56
|
+
venv/|
|
|
57
|
+
\.eggs/|
|
|
58
|
+
\.git/|
|
|
59
|
+
\.mypy_cache/|
|
|
60
|
+
\.ruff_cache/|
|
|
61
|
+
__pycache__/|
|
|
62
|
+
\.pytest_cache/
|
|
63
|
+
)
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
Release-relevant changes are recorded here. The project is currently an alpha;
|
|
4
|
+
the version in `pyproject.toml` is authoritative.
|
|
5
|
+
|
|
6
|
+
## 0.1.0 - Unreleased
|
|
7
|
+
|
|
8
|
+
- Imported the original pstrain/SphinxTrain-derived codebase (2026-07-03).
|
|
9
|
+
- Adopted the BSD 2-Clause license for new pstrain code while preserving the
|
|
10
|
+
notices and license terms of the CMU-derived C sources (2026-07-08).
|
|
11
|
+
- Added and pinned the reproducible CMU Arctic benchmark baseline and its
|
|
12
|
+
immutable corpus metadata (2026-08-11).
|
|
13
|
+
- Contained fatal native CFFI operations behind a reusable worker boundary and
|
|
14
|
+
completed the audited CFFI operation surface (2026-08-10 through 2026-08-11).
|