├── .github └── workflows │ ├── ci_meson.yml │ └── make.yml ├── COPYING ├── INSTALL.md ├── Makefile ├── README.md ├── audio ├── Makefile ├── audioP.h ├── esd.cc ├── gen_audio.cc ├── irixaudio.cc ├── linux_sound.cc ├── macosxaudio.cc ├── meson.build ├── mplayer.cc ├── nas.cc ├── os2audio.cc ├── pulseaudio.cc ├── sun16audio.cc └── win32audio.cc ├── base_class ├── EST_Complex.cc ├── EST_DMatrix.cc ├── EST_FMatrix.cc ├── EST_FeatureData.cc ├── EST_Featured.cc ├── EST_Features.cc ├── EST_IMatrix.cc ├── EST_Option.cc ├── EST_Pathname_unix.cc ├── EST_Pathname_win32.cc ├── EST_SMatrix.cc ├── EST_StringTrie.cc ├── EST_TBuffer.cc ├── EST_TDeque.cc ├── EST_THash.cc ├── EST_TKVL.cc ├── EST_TList.cc ├── EST_TMatrix.cc ├── EST_TNamedEnum.cc ├── EST_TSimpleMatrix.cc ├── EST_TSimpleVector.cc ├── EST_TSortable.cc ├── EST_TTimeIndex.cc ├── EST_TVector.cc ├── EST_Token.cc ├── EST_Tvectlist.cc ├── EST_UList.cc ├── EST_Val.cc ├── EST_features_aux.cc ├── EST_features_io.cc ├── EST_get_function_template.h ├── EST_ilist_aux.cc ├── EST_matrix_support.cc ├── EST_matrix_support.h ├── EST_slist_aux.cc ├── EST_svec_aux.cc ├── Makefile ├── THash_aux.cc ├── inst_tmpl │ ├── Makefile │ ├── deq_i_t.cc │ ├── deq_s_t.cc │ ├── hash_fi_t.cc │ ├── hash_ii_t.cc │ ├── hash_iv_t.cc │ ├── hash_sd_t.cc │ ├── hash_sf_t.cc │ ├── hash_sfmp_t.cc │ ├── hash_si_t.cc │ ├── hash_srp.cc │ ├── hash_ss_t.cc │ ├── hash_sv_t.cc │ ├── kvl_fi_t.cc │ ├── kvl_ii_t.cc │ ├── kvl_rs_t.cc │ ├── kvl_sd_t.cc │ ├── kvl_sf_t.cc │ ├── kvl_si_t.cc │ ├── kvl_ss_t.cc │ ├── kvl_sv_t.cc │ ├── kvl_vpi_t.cc │ ├── list_c_t.cc │ ├── list_d_t.cc │ ├── list_f_t.cc │ ├── list_i_t.cc │ ├── list_li_t.cc │ ├── list_s_t.cc │ ├── list_si_t.cc │ ├── list_val_t.cc │ ├── list_vi_t.cc │ ├── list_vs_t.cc │ ├── matrix_d_t.cc │ ├── matrix_f_t.cc │ ├── matrix_i_t.cc │ ├── matrix_s_t.cc │ ├── matrix_si_t.cc │ ├── matrix_val_t.cc │ ├── meson.build │ ├── tbuffer_t.cc │ ├── timeindex_tr.cc │ ├── vector_c_t.cc │ ├── vector_d_t.cc │ ├── vector_dmatrix_t.cc │ ├── vector_dvector_t.cc │ ├── vector_f_t.cc │ ├── vector_fmatrix_t.cc │ ├── vector_fvector_t.cc │ ├── vector_i_t.cc │ ├── vector_ls_t.cc │ ├── vector_s_t.cc │ ├── vector_si_t.cc │ └── vector_val_t.cc ├── meson.build ├── rateconv.cc ├── rateconv.h ├── string │ ├── EST_Chunk.cc │ ├── EST_Regex.cc │ ├── EST_String.cc │ ├── EST_strcasecmp.c │ ├── Makefile │ ├── meson.build │ ├── regerror.c │ ├── regexp.cc │ ├── regexp.h │ ├── regmagic.h │ ├── regsub.c │ └── string_version.h ├── vec_mat_aux.cc ├── vec_mat_aux_d.cc └── vec_mat_aux_i.cc ├── bin └── Makefile ├── config.guess ├── config.sub ├── config ├── Makefile ├── ReadMe ├── common_make_rules ├── compilers │ ├── Makefile │ ├── clang.mak │ ├── egcs.mak │ ├── gcc.mak │ ├── gcc27.mak │ ├── gcc27emx.mak │ ├── gcc28.mak │ ├── gcc295.mak │ ├── gcc296.mak │ ├── gcc30.mak │ ├── gcc31.mak │ ├── gcc32.mak │ ├── gcc_defaults.mak │ ├── intel80.mak │ ├── jdk.mak │ ├── jdk12.mak │ ├── jdk_defaults.mak │ ├── jikes.mak │ ├── jikes_defaults.mak │ ├── jolt.mak │ ├── none.mak │ ├── suncc.mak │ ├── suncc40.mak │ └── suncc_defaults.mak ├── config.in ├── configs │ ├── Makefile │ ├── cstr.mak │ ├── cstr_jdk1.2.mak │ ├── egcs_as_gcc.mak │ ├── ellipsis.mak │ ├── kellogg.mak │ ├── rjc.mak │ └── v_java.mak ├── example.Makefile ├── example.module.mak ├── make_system.mak ├── modules │ ├── Makefile │ ├── debugging.mak │ ├── descriptions │ ├── dmalloc.mak │ ├── editline.mak │ ├── efence.mak │ ├── esd_audio.mak │ ├── freebsd16_audio.mak │ ├── irix_audio.mak │ ├── linux16_audio.mak │ ├── macosx_audio.mak │ ├── mplayer_audio.mak │ ├── nas_audio.mak │ ├── psola_tm.mak │ ├── pulse_audio.mak │ ├── siod_python.mak │ ├── sun16_audio.mak │ ├── tcl.mak │ └── win32_audio.mak ├── project.mak ├── rules │ ├── Makefile │ ├── bin_process.mak │ ├── build_dir.mak │ ├── build_tree.sh │ ├── c.mak │ ├── common_make_rules.mak │ ├── compile_options.mak │ ├── config_errors.mak │ ├── cvs.mak │ ├── defaults.mak │ ├── doc.mak │ ├── install.mak │ ├── java.mak │ ├── library.mak │ ├── make_depend.awk │ ├── make_depend.mak │ ├── modules.mak │ ├── modules.sh │ ├── rcs.mak │ ├── rules.mak │ ├── script_process.awk │ ├── targets.mak │ ├── test_make_rules.mak │ ├── top_level.mak │ └── visual_c.mak ├── system.sh ├── systems │ ├── Linux.mak │ ├── Makefile │ ├── alpha_Linux.mak │ ├── alpha_OSF1V4.0.mak │ ├── arm64_Darwin.mak │ ├── default.mak │ ├── hp9000_HP-UX.mak │ ├── hp9000_HP-UXB.10.mak │ ├── ip_IRIX.mak │ ├── ip_IRIX5.3.mak │ ├── ip_IRIX6.3.mak │ ├── ip_IRIX6.4.mak │ ├── ip_IRIX646.4.mak │ ├── ix86_CYGWIN1.0.mak │ ├── ix86_CYGWIN1.1.mak │ ├── ix86_CYGWIN1.3.mak │ ├── ix86_CYGWIN1.4.mak │ ├── ix86_CYGWIN1.5.mak │ ├── ix86_CYGWIN1.7.mak │ ├── ix86_CYGWIN20.1.mak │ ├── ix86_CYGWIN32.mak │ ├── ix86_CYGWIN324.0.mak │ ├── ix86_Darwin.mak │ ├── ix86_FreeBSD.mak │ ├── ix86_FreeBSD2.1.mak │ ├── ix86_FreeBSD2.2.mak │ ├── ix86_FreeBSD3.0.mak │ ├── ix86_FreeBSD3.1.mak │ ├── ix86_FreeBSD3.2.mak │ ├── ix86_FreeBSD3.3.mak │ ├── ix86_FreeBSD4.0.mak │ ├── ix86_OS22.mak │ ├── ix86_SunOS5.5.mak │ ├── ix86_SunOS5.6.mak │ ├── ix86_SunOS5.7.mak │ ├── ix86_SunOS5.8.mak │ ├── ix86_SunOS5.mak │ ├── power_macintosh_Darwin.mak │ ├── rs6000_AIX4.1.mak │ ├── sparc_SunOS4.1.mak │ ├── sparc_SunOS4.mak │ ├── sparc_SunOS5.5.mak │ ├── sparc_SunOS5.6.mak │ ├── sparc_SunOS5.7.mak │ ├── sparc_SunOS5.8.mak │ ├── sparc_SunOS5.9.mak │ ├── sparc_SunOS5.mak │ ├── sparc_unknown.mak │ ├── unknown_Linux.mak │ ├── unknown_unknown.mak │ └── x86_64_Darwin.mak ├── test_make_rules ├── user_flags.mak.in ├── vc_common_make_rules └── vc_config_make_rules-dist ├── configure ├── configure.ac ├── doc ├── DoxyFile ├── DoxyFile.in ├── Makefile ├── bibliography.bib ├── cstr.gif ├── edcrest.gif ├── est.jpg ├── estbaseclass.dox ├── estexec.md ├── estgram.md ├── estintro.md ├── estlicence.md ├── estling.md ├── estmanuals.md ├── estserver.md ├── estsigpr.md ├── estspeechclass.md ├── esttilt.md ├── estutil.md ├── estwagon.md ├── estxml.md ├── images │ ├── Makefile │ ├── relations.eps │ ├── relations.svg │ ├── relations_2.eps │ ├── relations_2.svg │ ├── tilt-f0-representation.eps │ ├── tilt-f0-representation.svg │ ├── tilt-search-region.eps │ ├── tilt-search-region.svg │ ├── typical-pitch-accent.eps │ └── typical-pitch-accent.svg ├── index.md ├── man │ ├── Makefile │ ├── align_man.dox.body │ ├── bcat_man.dox.body │ ├── ch_lab_man.dox.body │ ├── ch_track_man.dox.body │ ├── ch_utt_man.dox.body │ ├── ch_wave_man.dox.body │ ├── convert-options.xslt │ ├── convert-synopsis.xslt │ ├── create_dox.sh │ ├── design_filter_man.dox.body │ ├── dp_man.dox.body │ ├── meson.build │ ├── na_play_man.dox.body │ ├── na_record_man.dox.body │ ├── ngram_build_man.dox.body │ ├── ngram_test_man.dox.body │ ├── ols_man.dox.body │ ├── ols_test_man.dox.body │ ├── pda_man.dox.body │ ├── pitchmark_man.dox.body │ ├── scfg_make_man.dox.body │ ├── scfg_parse_man.dox.body │ ├── scfg_test_man.dox.body │ ├── scfg_train_man.dox.body │ ├── sig2fv_man.dox.body │ ├── sigfilter_man.dox.body │ ├── siod_man.dox.body │ ├── spectgen_man.dox.body │ ├── tilt_analysis_man.dox.body │ ├── tilt_synthesis_man.dox.body │ ├── viterbi_man.dox.body │ ├── wagon_man.dox.body │ ├── wagon_test_man.dox.body │ ├── wfst_build_man.dox.body │ ├── wfst_run_man.dox.body │ ├── wfst_train_man.dox.body │ └── xml_parser_man.dox.body └── meson.build ├── grammar ├── Makefile ├── meson.build ├── ngram │ ├── EST_Ngrammar.cc │ ├── EST_PST.cc │ ├── EST_lattice.cc │ ├── EST_lattice_io.cc │ ├── Makefile │ ├── freqsmooth.cc │ ├── lattice_t.cc │ ├── meson.build │ ├── ngrammar_aux.cc │ ├── ngrammar_io.cc │ └── ngrammar_utils.cc ├── scfg │ ├── EST_SCFG.cc │ ├── EST_SCFG_Chart.cc │ ├── EST_SCFG_inout.cc │ ├── Makefile │ ├── meson.build │ └── scfg.mak └── wfst │ ├── EST_WFST.cc │ ├── Makefile │ ├── kkcompile.cc │ ├── ltscompile.cc │ ├── meson.build │ ├── rgcompile.cc │ ├── tlcompile.cc │ ├── wfst.mak │ ├── wfst_aux.cc │ ├── wfst_aux.h │ ├── wfst_ops.cc │ ├── wfst_regex.cc │ ├── wfst_train.cc │ └── wfst_transduce.cc ├── include ├── EST.h ├── EST_ChannelType.h ├── EST_Chunk.h ├── EST_Complex.h ├── EST_Contents.h ├── EST_DMatrix.h ├── EST_Event.h ├── EST_FMatrix.h ├── EST_FeatureData.h ├── EST_Featured.h ├── EST_Features.h ├── EST_FileType.h ├── EST_FringeServer.h ├── EST_HMM.h ├── EST_Handleable.h ├── EST_IMatrix.h ├── EST_Ngrammar.h ├── EST_Option.h ├── EST_PST.h ├── EST_Pathname.h ├── EST_Regex.h ├── EST_SCFG.h ├── EST_SCFG_Chart.h ├── EST_SMatrix.h ├── EST_Server.h ├── EST_ServiceTable.h ├── EST_SingleChannelWave.h ├── EST_String.h ├── EST_StringTrie.h ├── EST_TBox.h ├── EST_TBuffer.h ├── EST_TDeque.h ├── EST_THandle.h ├── EST_THash.h ├── EST_TIterator.h ├── EST_TKVL.h ├── EST_TList.h ├── EST_TMatrix.h ├── EST_TNamedEnum.h ├── EST_TSimpleMatrix.h ├── EST_TSimpleVector.h ├── EST_TSortable.h ├── EST_TTimeIndex.h ├── EST_TVector.h ├── EST_Token.h ├── EST_Track.h ├── EST_TrackMap.h ├── EST_UList.h ├── EST_Val.h ├── EST_Val_defs.h ├── EST_WFST.h ├── EST_Wagon.h ├── EST_Wave.h ├── EST_audio.h ├── EST_bool.h ├── EST_cluster.h ├── EST_cmd_line.h ├── EST_cmd_line_options.h ├── EST_common.h ├── EST_cutils.h ├── EST_dynamic_model.h ├── EST_error.h ├── EST_features_aux.h ├── EST_grammar.h ├── EST_inline_utils.h ├── EST_io_aux.h ├── EST_iostream.h ├── EST_kalman.h ├── EST_lattice.h ├── EST_lattice_io.h ├── EST_ling_class.h ├── EST_math.h ├── EST_model_types.h ├── EST_multistats.h ├── EST_rw_status.h ├── EST_sigpr.h ├── EST_simplestats.h ├── EST_socket.h ├── EST_sort.h ├── EST_speech_class.h ├── EST_stats.h ├── EST_strcasecmp.h ├── EST_string_aux.h ├── EST_system.h ├── EST_tilt.h ├── EST_track_aux.h ├── EST_types.h ├── EST_unix.h ├── EST_util_class.h ├── EST_viterbi.h ├── EST_walloc.h ├── EST_wave_aux.h ├── Makefile ├── instantiate │ ├── EST_TDequeI.h │ ├── EST_THashI.h │ ├── EST_TIteratorI.h │ ├── EST_TKVLI.h │ ├── EST_TListI.h │ ├── EST_TMatrixI.h │ ├── EST_TNamedEnumI.h │ ├── EST_TSimpleMatrixI.h │ ├── EST_TSimpleVectorI.h │ ├── EST_TSortableI.h │ ├── EST_TStringHashI.h │ ├── EST_TVectorI.h │ ├── Makefile │ └── meson.build ├── ling_class │ ├── EST_FeatureFunctionPackage.h │ ├── EST_Item.h │ ├── EST_Item_Content.h │ ├── EST_Relation.h │ ├── EST_Relation_list.h │ ├── EST_Relation_mls.h │ ├── EST_Relation_tree.h │ ├── EST_Utterance.h │ ├── EST_item_aux.h │ ├── EST_item_content_aux.h │ ├── EST_relation_aux.h │ ├── EST_relation_compare.h │ ├── EST_utterance_aux.h │ ├── EST_utterance_xml.h │ ├── Makefile │ └── meson.build ├── meson.build ├── rxp │ ├── Makefile │ ├── XML_Parser.h │ ├── charset.h │ ├── ctype16.h │ ├── dtd.h │ ├── input.h │ ├── meson.build │ ├── rxp.h │ ├── stdio16.h │ ├── string16.h │ ├── system.h │ ├── url.h │ └── xmlparser.h ├── sigpr │ ├── EST_Window.h │ ├── EST_fft.h │ ├── EST_filter.h │ ├── EST_filter_design.h │ ├── EST_misc_sigpr.h │ ├── EST_pitchmark.h │ ├── EST_sigpr_frame.h │ ├── EST_sigpr_utt.h │ ├── EST_spectrogram.h │ ├── Makefile │ └── meson.build ├── siod.h ├── siod_defs.h ├── siod_est.h ├── unix │ ├── EST_defines_unix.h │ ├── EST_socket_unix.h │ ├── Makefile │ └── meson.build └── win32 │ ├── EST_defines_win32.h │ ├── EST_iostream_win32.h │ ├── EST_socket_win32.h │ ├── EST_unix_win32.h │ ├── Makefile │ └── meson.build ├── install-sh ├── intonation ├── Makefile ├── meson.build └── tilt │ ├── Makefile │ ├── meson.build │ ├── tilt.h │ ├── tilt_analysis.cc │ ├── tilt_synthesis.cc │ └── tilt_utils.cc ├── java ├── Makefile ├── ReadMe ├── basic_version │ ├── Makefile │ ├── Makefile.version │ └── cstr │ │ ├── Makefile │ │ └── est │ │ ├── Features.java │ │ ├── Item.java │ │ ├── Item_Content.java │ │ ├── Makefile │ │ └── Wave.java ├── common │ ├── Makefile │ └── cstr │ │ ├── Makefile │ │ ├── awt │ │ ├── ColorSelection.java │ │ ├── ImageCanvas.java │ │ ├── Makefile │ │ ├── ScrollWindow.java │ │ └── XColor.java │ │ ├── est │ │ ├── Makefile │ │ ├── ServerConnection.java │ │ ├── SocketsFile.java │ │ └── awt │ │ │ ├── Item_Content_Window.java │ │ │ ├── Makefile │ │ │ └── WaveImageSource.java │ │ ├── testPrograms │ │ ├── Makefile │ │ ├── PlayWave.java │ │ └── WaveTest.java │ │ └── util │ │ ├── BadValueException.java │ │ ├── Enum.java │ │ ├── EnumValues.java │ │ ├── Featured.java │ │ ├── ImagePainter.java │ │ ├── Keyed.java │ │ ├── LongHash.java │ │ ├── Makefile │ │ ├── Named.java │ │ ├── PaintCache.java │ │ ├── PaintPainter.java │ │ ├── Painter.java │ │ ├── SparseArray.java │ │ ├── Trace.java │ │ └── TraceStream.java ├── cpp_version │ ├── Makefile │ ├── Makefile.version │ └── cstr │ │ ├── Makefile │ │ └── est │ │ ├── Features.cc │ │ ├── Features.java │ │ ├── Item.cc │ │ ├── Item.java │ │ ├── Item_Content.cc │ │ ├── Item_Content.java │ │ ├── Makefile │ │ ├── Relation.cc │ │ ├── Relation.java │ │ ├── Sigpr.cc │ │ ├── Sigpr.java │ │ ├── Track.cc │ │ ├── Track.java │ │ ├── TrackFileFormat.java │ │ ├── Utterance.cc │ │ ├── Utterance.java │ │ ├── UtteranceFileFormat.java │ │ ├── Wave.cc │ │ ├── Wave.java │ │ ├── skeleton.cc │ │ └── skeleton.java ├── java.mak ├── java_cpp.mak ├── java_media.mak └── media_version │ ├── Makefile │ ├── Makefile.version │ └── cstr │ ├── Makefile │ └── est │ ├── Features.java │ ├── Item.java │ ├── Item_Content.java │ ├── Makefile │ ├── Wave.java │ └── WaveDataSource.java ├── lib ├── Makefile ├── VCLocalRules ├── cstrutt.dtd ├── est_mainline-in ├── est_program_makefile-in ├── example_data │ ├── Makefile │ ├── alice │ ├── ch_track.htk │ ├── ch_wave.wav │ ├── channel_names.map │ ├── colours.map │ ├── colours_translation.map │ ├── eg.dtd │ ├── eg.xml │ ├── kdt_001.il │ ├── kdt_001.pm │ ├── kdt_001.tilt │ ├── kdt_001.wav │ ├── ked_wr1_012.utt │ ├── key.lab │ ├── options.file │ ├── vit.B.ngram │ ├── vit.observes │ ├── vit.vocab │ ├── wagon.data │ ├── wagon.desc │ └── wagon.tree ├── meson.build └── siod │ ├── Makefile │ ├── cstr.scm │ ├── fringe.scm │ ├── init.scm │ ├── meson.build │ ├── siod.scm │ ├── siod_client.scm │ ├── siod_server.scm │ └── web.scm ├── ling_class ├── EST_FeatureFunctionContext.cc ├── EST_FeatureFunctionContext.h ├── EST_FeatureFunctionPackage.cc ├── EST_Item.cc ├── EST_Item_Content.cc ├── EST_Relation.cc ├── EST_Relation_mls.cc ├── EST_Utterance.cc ├── EST_UtteranceFile.cc ├── EST_UtteranceFile.h ├── EST_item_aux.cc ├── EST_item_content_aux.cc ├── EST_relation_aux.cc ├── EST_relation_compare.cc ├── EST_relation_track.cc ├── EST_utterance_aux.cc ├── Makefile ├── apml.cc ├── apml.h ├── genxml.cc ├── genxml.h ├── item_aux.cc ├── item_feats.cc ├── ling_class_init.cc ├── ling_class_init.h ├── ling_t.cc ├── meson.build ├── relation_io.cc ├── relation_io.h ├── solexml.cc ├── solexml.h └── standard_feature_functions.cc ├── main ├── Makefile ├── align_main.cc ├── bcat_main.cc ├── ch_lab_main.cc ├── ch_track_main.cc ├── ch_utt_main.cc ├── ch_wave_main.cc ├── design_filter_main.cc ├── dp_main.cc ├── meson.build ├── na_play_main.cc ├── na_record_main.cc ├── ngram_build_main.cc ├── ngram_test_main.cc ├── ols_main.cc ├── ols_test_main.cc ├── pda_main.cc ├── pitchmark_main.cc ├── scfg_make_main.cc ├── scfg_parse_main.cc ├── scfg_test_main.cc ├── scfg_train_main.cc ├── sig2fv_main.cc ├── sigfilter_main.cc ├── siod_main.cc ├── spectgen_main.cc ├── tilt_analysis_main.cc ├── tilt_synthesis_main.cc ├── viterbi_main.cc ├── wagon_main.cc ├── wagon_test_main.cc ├── wfst_build_main.cc ├── wfst_run_main.cc ├── wfst_train_main.cc └── xml_parser_main.cc ├── meson.build ├── meson_options.txt ├── missing ├── mkinstalldirs ├── rxp ├── Makefile ├── XML_Parser.cc ├── charset.c ├── ctype16.c ├── dtd.c ├── input.c ├── meson.build ├── rxp.c ├── rxp.mak ├── stdio16.c ├── string16.c ├── system.c ├── url.c └── xmlparser.c ├── scripts ├── Makefile ├── est_examples.sh ├── est_gdb.sh ├── est_program.sh ├── make_wagon_desc.sh ├── meson.build ├── pm.prl ├── raw_to_xgraph.prl ├── resynth.sh ├── shared_script ├── shared_setup_prl └── shared_setup_sh ├── sigpr ├── EST_Window.cc ├── Makefile ├── delta.cc ├── fft.cc ├── filter.cc ├── meson.build ├── misc.cc ├── pda │ ├── Makefile │ ├── array_smoother.h │ ├── meson.build │ ├── pcb_smoother.cc │ ├── pda.cc │ ├── smooth_pda.cc │ ├── srpd.h │ └── srpd1.3.cc ├── pitchmark.cc ├── sigpr_frame.cc ├── sigpr_utt.cc └── spectrogram.cc ├── siod ├── Makefile ├── editline.c ├── editline.h ├── el_complete.c ├── el_sys_unix.c ├── el_sys_win32.c ├── el_unix.h ├── io.cc ├── io.h ├── meson.build ├── siod.cc ├── siod.mak ├── siod_est.cc ├── siodeditline.c ├── siodeditline.h ├── siodp.h ├── slib.cc ├── slib_core.cc ├── slib_doc.cc ├── slib_file.cc ├── slib_format.cc ├── slib_list.cc ├── slib_math.cc ├── slib_python.cc ├── slib_python.h ├── slib_repl.cc ├── slib_server.cc ├── slib_str.cc ├── slib_sys.cc ├── slib_xtr.cc └── trace.cc ├── speech_class ├── EST_Track.cc ├── EST_TrackFile.cc ├── EST_TrackFile.h ├── EST_TrackMap.cc ├── EST_Wave.cc ├── EST_WaveFile.cc ├── EST_WaveFile.h ├── EST_track_aux.cc ├── EST_wave_aux.cc ├── EST_wave_cuts.cc ├── EST_wave_io.cc ├── EST_wave_temp.cc ├── EST_wave_utils.cc ├── EST_wave_utils.h ├── Makefile ├── esps_io.cc ├── esps_utils.cc ├── esps_utils.h ├── htk.h ├── meson.build ├── ssff.cc ├── ssff.h ├── track_t.cc ├── waveP.h └── wave_t.cc ├── stats ├── EST_DProbDist.cc ├── EST_Discrete.cc ├── EST_cluster.cc ├── EST_multistats.cc ├── EST_ols.cc ├── EST_viterbi.cc ├── Makefile ├── confusion.cc ├── dynamic_program.cc ├── kalman_filter │ ├── EST_kalman.cc │ ├── Makefile │ ├── kalman_filter.mak │ └── meson.build ├── meson.build ├── ols.mak └── wagon │ ├── Makefile │ ├── dlist.cc │ ├── meson.build │ ├── wagon.cc │ ├── wagon.mak │ ├── wagon_aux.cc │ └── wagonint.cc ├── testsuite ├── Makefile ├── ch_track.sh ├── ch_wave.sh ├── complex_example.cc ├── complex_regression.cc ├── correct │ ├── Makefile │ ├── ch_track_script.out │ ├── ch_wave_script.out │ ├── complex_example.out │ ├── complex_regression.out │ ├── deq_example.out │ ├── deq_regression.out │ ├── error_example.out │ ├── error_regression.out │ ├── feature_example.out │ ├── feature_regression.out │ ├── handle_example.out │ ├── handle_regression.out │ ├── hash_example.out │ ├── hash_regression.out │ ├── kvl_example.out │ ├── kvl_regression.out │ ├── ling_example.out │ ├── ling_regression.out │ ├── list_example.out │ ├── list_regression.out │ ├── lpc_script.out │ ├── matrix_example.out │ ├── matrix_regression.out │ ├── named_enum_example.out │ ├── named_enum_regression.out │ ├── pathname_example.out │ ├── pathname_regression.out │ ├── sigpr_example.out │ ├── sigpr_regression.out │ ├── string_example.out │ ├── string_regression.out │ ├── tilt_script.out │ ├── token_example.out │ ├── token_regression.out │ ├── track_example.out │ ├── track_map_example.out │ ├── track_map_regression.out │ ├── track_regression.out │ ├── viterbi_script.out │ ├── wagon_script.out │ ├── xml_example.out │ └── xml_regression.out ├── deq_example.cc ├── deq_regression.cc ├── feature_example.cc ├── feature_regression.cc ├── handle_example.cc ├── handle_regression.cc ├── hash_example.cc ├── hash_regression.cc ├── kvl_example.cc ├── kvl_regression.cc ├── ling_example.cc ├── ling_regression.cc ├── list_example.cc ├── list_regression.cc ├── lpc.sh ├── meson.build ├── named_enum_example.cc ├── named_enum_regression.cc ├── pathname_example.cc ├── pathname_regression.cc ├── run_test.py ├── sigpr_example.cc ├── sigpr_regression.cc ├── string_example.cc ├── string_regression.cc ├── tilt.sh ├── token_example.cc ├── token_regression.cc ├── track_example.cc ├── track_regression.cc ├── viterbi.sh ├── wagon.sh ├── xml_example.cc └── xml_regression.cc ├── utils ├── EST_cutils.c ├── EST_error.c ├── EST_swapping.cc ├── Makefile ├── cmd_line.cc ├── cmd_line_aux.cc ├── est_file.cc ├── filetrans.cc ├── meson.build ├── system_specific_unix.c ├── system_specific_win32.c ├── util_io.cc └── walloc.c └── wrappers ├── Makefile ├── interface ├── EST_FVector.i ├── EST_Item.i ├── EST_Ngrammar.i ├── EST_Relation.i ├── EST_SignalProc.i ├── EST_TSimpleVector.i ├── EST_TVector.i ├── EST_Track.i ├── EST_Utterance.i ├── EST_Wave.i ├── EST_error.i ├── EST_pitchmark.i ├── EST_rw_status.i ├── Makefile └── python │ ├── EST_Features.i │ ├── EST_typemaps.i │ └── Makefile └── wrappers.mak /.github/workflows/make.yml: -------------------------------------------------------------------------------- 1 | name: make 2 | 3 | on: [push, pull_request] 4 | 5 | jobs: 6 | linux: 7 | runs-on: ubuntu-latest 8 | steps: 9 | - name: Checkout code 10 | uses: actions/checkout@v2 11 | - run: ./configure 12 | - run: make 13 | - run: make test 14 | 15 | macos: 16 | runs-on: macos-latest 17 | steps: 18 | - uses: actions/checkout@v2 19 | - run: brew install gcc 20 | - run: ./configure 21 | env: 22 | CC: gcc 23 | - run: make 24 | - run: make test 25 | 26 | -------------------------------------------------------------------------------- /audio/irixaudio.cc: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* Author : Theo Veenker (Utrecht University) */ 3 | /* Date : September 1997 */ 4 | /*-----------------------------------------------------------------------*/ 5 | /* Optional 16bit linear support for audio on IRIS 4D workstations */ 6 | /* */ 7 | /*=======================================================================*/ 8 | 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include "EST_unix.h" 14 | #include "EST_cutils.h" 15 | #include "EST_Wave.h" 16 | #include "EST_Option.h" 17 | #include "audioP.h" 18 | #include "EST_io_aux.h" 19 | 20 | using namespace std; 21 | 22 | #if defined (SUPPORT_IRIX) || defined (SUPPORT_IRIX53) 23 | #include 24 | #include 25 | 26 | int irix_supported = TRUE; 27 | 28 | int play_irix_wave(EST_Wave &inwave, EST_Option &al) 29 | { 30 | int sample_rate; 31 | short *waveform; 32 | int num_samples; 33 | ALconfig config; 34 | ALport port; 35 | int r; 36 | (void)al; 37 | 38 | waveform = inwave.values().memory(); 39 | num_samples = inwave.num_samples(); 40 | sample_rate = inwave.sample_rate(); 41 | 42 | config = ALnewconfig(); 43 | ALsetsampfmt(config, AL_SAMPFMT_TWOSCOMP); 44 | ALsetwidth(config, AL_SAMPLE_16); 45 | ALsetchannels(config, AL_MONO); 46 | 47 | long pvbuf[2]; 48 | pvbuf[0] = AL_OUTPUT_RATE; 49 | pvbuf[1] = sample_rate; 50 | ALsetparams(AL_DEFAULT_DEVICE, pvbuf, 2); 51 | 52 | /* 53 | ALgetparams(AL_DEFAULT_DEVICE, pvbuf, 2); 54 | if (pvbuf[1] != sample_rate) 55 | { 56 | cerr << "IRIX: sample rate " << sample_rate << 57 | " not supported; using " << pvbuf[1] << endl; 58 | } 59 | */ 60 | 61 | port = ALopenport("speech-tools", "w", config); 62 | if (!port) 63 | { 64 | cerr << "IRIX: can't open audio port" << endl; 65 | ALfreeconfig(config); 66 | return -1; 67 | } 68 | 69 | r = ALwritesamps(port, waveform, num_samples); 70 | if (r != 0) 71 | cerr << "IRIX: failed to write to buffer" << endl; 72 | 73 | // Wait until all samples are played. 74 | // IRIX 5.3 doesn't have usleep 75 | #ifdef SUPPORT_IRIX53 76 | while (ALgetfilled(port)) sginap(1); 77 | #elseif 78 | while (ALgetfilled(port)) usleep(10000); 79 | #endif 80 | 81 | ALcloseport(port); 82 | ALfreeconfig(config); 83 | 84 | return 1; 85 | } 86 | 87 | #else 88 | int irix_supported = FALSE; 89 | 90 | int play_irix_wave(EST_Wave &inwave, EST_Option &al) 91 | { 92 | (void)inwave; 93 | (void)al; 94 | cerr << "IRIX 16bit linear not supported" << endl; 95 | return -1; 96 | } 97 | 98 | #endif 99 | -------------------------------------------------------------------------------- /base_class/inst_tmpl/meson.build: -------------------------------------------------------------------------------- 1 | base_class_inst_tmpl_lib = static_library( 2 | 'base_class_inst_tmpl', 3 | sources: files( # estbase 4 | 'deq_i_t.cc', 5 | 'deq_s_t.cc', 6 | 'hash_fi_t.cc', 7 | 'hash_ii_t.cc', 8 | 'hash_iv_t.cc', 9 | 'hash_sd_t.cc', 10 | 'hash_sfmp_t.cc', 11 | 'hash_sf_t.cc', 12 | 'hash_si_t.cc', 13 | 'hash_srp.cc', 14 | 'hash_ss_t.cc', 15 | 'hash_sv_t.cc', 16 | 'kvl_fi_t.cc', 17 | 'kvl_ii_t.cc', 18 | 'kvl_rs_t.cc', 19 | 'kvl_sd_t.cc', 20 | 'kvl_sf_t.cc', 21 | 'kvl_si_t.cc', 22 | 'kvl_ss_t.cc', 23 | 'kvl_sv_t.cc', 24 | 'kvl_vpi_t.cc', 25 | 'list_c_t.cc', 26 | 'list_d_t.cc', 27 | 'list_f_t.cc', 28 | 'list_i_t.cc', 29 | 'list_li_t.cc', 30 | 'list_si_t.cc', 31 | 'list_s_t.cc', 32 | 'list_val_t.cc', 33 | 'list_vi_t.cc', 34 | 'list_vs_t.cc', 35 | 'matrix_d_t.cc', 36 | 'matrix_f_t.cc', 37 | 'matrix_i_t.cc', 38 | 'matrix_si_t.cc', 39 | 'matrix_s_t.cc', 40 | 'matrix_val_t.cc', 41 | 'tbuffer_t.cc', 42 | 'vector_c_t.cc', 43 | 'vector_dmatrix_t.cc', 44 | 'vector_d_t.cc', 45 | 'vector_dvector_t.cc', 46 | 'vector_fmatrix_t.cc', 47 | 'vector_f_t.cc', 48 | 'vector_fvector_t.cc', 49 | 'vector_i_t.cc', 50 | 'vector_ls_t.cc', 51 | 'vector_si_t.cc', 52 | 'vector_s_t.cc', 53 | 'vector_val_t.cc', 54 | # 'timeindex_tr.cc' 55 | ), 56 | cpp_args: ['-DINSTANTIATE_TEMPLATES'], 57 | include_directories : ['.', '..', '../../include/'] 58 | ) 59 | 60 | libestbase_conv_libs += base_class_inst_tmpl_lib 61 | 62 | -------------------------------------------------------------------------------- /base_class/meson.build: -------------------------------------------------------------------------------- 1 | 2 | # These are headers and template headers that should not be compiled 3 | # Most of them have .cc extensions, probably because when they were written 4 | # templates were so new that it was confusing to have implementations in header files. 5 | base_class_headers = files( 6 | 'EST_matrix_support.h', 7 | 'EST_TBuffer.cc', 8 | 'EST_TDeque.cc', 9 | 'EST_THash.cc', 10 | 'EST_TKVL.cc', 11 | 'EST_TList.cc', 12 | 'EST_TMatrix.cc', 13 | 'EST_TNamedEnum.cc', 14 | 'EST_TSimpleMatrix.cc', 15 | 'EST_TSimpleVector.cc', 16 | 'EST_TSortable.cc', 17 | 'EST_TTimeIndex.cc', 18 | 'EST_Tvectlist.cc', 19 | 'EST_TVector.cc' 20 | 21 | ) 22 | 23 | # Since speech tools include/ headers expect these headers to be on ../base_class 24 | # we set up the $includedir/speech_tools/ to have a base_class/ and an include/ directory 25 | install_headers( 26 | base_class_headers, 27 | subdir : meson.project_name() / 'base_class' 28 | ) 29 | 30 | 31 | # Files that need to instantiate templates: 32 | 33 | base_class_tsrcs = files( 34 | 'EST_Featured.cc', 35 | 'EST_Features.cc' 36 | ) 37 | 38 | base_class_t_lib = static_library( 39 | 'base_class_t_lib', 40 | sources: base_class_tsrcs, 41 | cpp_args : ['-DINSTANTIATE_TEMPLATES'], 42 | include_directories : ['.', '../include/'] 43 | ) 44 | 45 | libestbase_conv_libs += base_class_t_lib 46 | 47 | 48 | # Files that do not instantiate templates: 49 | base_class_cpp = files( 50 | 'EST_UList.cc', 51 | 'EST_Option.cc', 52 | 'EST_StringTrie.cc', 53 | 'EST_Token.cc', 54 | 'vec_mat_aux.cc', 55 | 'THash_aux.cc', 56 | 'EST_FMatrix.cc', 57 | 'EST_Complex.cc', 58 | 'EST_Val.cc', 59 | 'EST_matrix_support.cc', 60 | 'rateconv.cc', 61 | 'EST_IMatrix.cc', 62 | 'EST_SMatrix.cc', 63 | 'EST_DMatrix.cc', 64 | 'vec_mat_aux_d.cc', 65 | 'EST_FeatureData.cc', 66 | 'EST_slist_aux.cc', 67 | 'EST_svec_aux.cc', 68 | 'EST_ilist_aux.cc', 69 | 'EST_features_aux.cc', 70 | 'EST_features_io.cc', 71 | 'vec_mat_aux_i.cc' 72 | ) 73 | 74 | if host_machine.system() == 'windows' 75 | base_class_cpp += files('EST_Pathname_win32.cc') 76 | else 77 | base_class_cpp += files('EST_Pathname_unix.cc') 78 | endif 79 | 80 | 81 | base_class_lib = static_library( 82 | 'base_class_lib', 83 | sources: base_class_cpp, 84 | include_directories : ['.', '../include/'] 85 | ) 86 | 87 | libestbase_conv_libs += base_class_lib 88 | 89 | subdir('inst_tmpl') 90 | subdir('string') 91 | 92 | -------------------------------------------------------------------------------- /base_class/string/meson.build: -------------------------------------------------------------------------------- 1 | base_class_string_lib = static_library( 2 | 'base_class_string_lib', 3 | sources: files( 4 | 'regerror.c', 5 | 'regsub.c', 6 | 'EST_strcasecmp.c', 7 | 'EST_String.cc', 8 | 'EST_Regex.cc', 9 | 'EST_Chunk.cc', 10 | 'regexp.cc' 11 | ), 12 | include_directories : ['.', '..', '../../include/'] 13 | ) 14 | 15 | 16 | libestring_conv_libs += base_class_string_lib 17 | 18 | -------------------------------------------------------------------------------- /base_class/string/regerror.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include "regexp.h" 4 | 5 | void 6 | hs_regerror(s) 7 | const char *s; 8 | { 9 | #ifdef ERRAVAIL 10 | error("regexp: %s", s); 11 | #else 12 | fprintf(stderr, "regexp(3): %s\n", s); 13 | exit(1); 14 | return; /* let std. egrep handle errors */ 15 | #endif 16 | /* NOTREACHED */ 17 | } 18 | -------------------------------------------------------------------------------- /base_class/string/regmagic.h: -------------------------------------------------------------------------------- 1 | /* 2 | * The first byte of the regexp internal "program" is actually this magic 3 | * number; the start node begins in the second byte. 4 | */ 5 | #define MAGIC 0234 6 | -------------------------------------------------------------------------------- /base_class/string/regsub.c: -------------------------------------------------------------------------------- 1 | /* 2 | * regsub 3 | * 4 | * Copyright (c) 1986 by University of Toronto. 5 | * Written by Henry Spencer. Not derived from licensed software. 6 | * 7 | * Permission is granted to anyone to use this software for any 8 | * purpose on any computer system, and to redistribute it freely, 9 | * subject to the following restrictions: 10 | * 11 | * 1. The author is not responsible for the consequences of use of 12 | * this software, no matter how awful, even if they arise 13 | * from defects in it. 14 | * 15 | * 2. The origin of this software must not be misrepresented, either 16 | * by explicit claim or by omission. 17 | * 18 | * 3. Altered versions must be plainly marked as such, and must not 19 | * be misrepresented as being the original software. 20 | */ 21 | #include 22 | #include 23 | #include "regexp.h" 24 | #include "regmagic.h" 25 | 26 | #ifndef CHARBITS 27 | #define UCHARAT(p) ((int)*(unsigned char *)(p)) 28 | #else 29 | #define UCHARAT(p) ((int)*(p)&CHARBITS) 30 | #endif 31 | 32 | /* 33 | - regsub - perform substitutions after a regexp match 34 | */ 35 | void 36 | hs_regsub(prog, source, dest) 37 | const hs_regexp *prog; 38 | const char *source; 39 | char *dest; 40 | { 41 | char *src; 42 | char *dst; 43 | char c; 44 | int no; 45 | int len; 46 | 47 | if (prog == NULL || source == NULL || dest == NULL) { 48 | hs_regerror("NULL parm to regsub"); 49 | return; 50 | } 51 | if (UCHARAT(prog->program) != MAGIC) { 52 | hs_regerror("damaged regexp fed to regsub"); 53 | return; 54 | } 55 | 56 | src = (char *)source; 57 | dst = dest; 58 | while ((c = *src++) != '\0') { 59 | if (c == '&') 60 | no = 0; 61 | else if (c == '\\' && '0' <= *src && *src <= '9') 62 | no = *src++ - '0'; 63 | else 64 | no = -1; 65 | if (no < 0) { /* Ordinary character. */ 66 | if (c == '\\' && (*src == '\\' || *src == '&')) 67 | c = *src++; 68 | *dst++ = c; 69 | } else if (prog->startp[no] != NULL && prog->endp[no] != NULL) { 70 | len = prog->endp[no] - prog->startp[no]; 71 | (void) strncpy(dst, prog->startp[no], len); 72 | dst += len; 73 | if (len != 0 && *(dst-1) == '\0') { /* strncpy hit NUL. */ 74 | hs_regerror("damaged match string"); 75 | return; 76 | } 77 | } 78 | } 79 | *dst++ = '\0'; 80 | } 81 | -------------------------------------------------------------------------------- /base_class/string/string_version.h: -------------------------------------------------------------------------------- 1 | /************************************************************************/ 2 | /* */ 3 | /* Centre for Speech Technology Research */ 4 | /* University of Edinburgh, UK */ 5 | /* Copyright (c) 1996,1997 */ 6 | /* All Rights Reserved. */ 7 | /* */ 8 | /* Permission is hereby granted, free of charge, to use and distribute */ 9 | /* this software and its documentation without restriction, including */ 10 | /* without limitation the rights to use, copy, modify, merge, publish, */ 11 | /* distribute, sublicense, and/or sell copies of this work, and to */ 12 | /* permit persons to whom this work is furnished to do so, subject to */ 13 | /* the following conditions: */ 14 | /* 1. The code must retain the above copyright notice, this list of */ 15 | /* conditions and the following disclaimer. */ 16 | /* 2. Any modifications must be clearly marked as such. */ 17 | /* 3. Original authors' names are not deleted. */ 18 | /* 4. The authors' names are not used to endorse or promote products */ 19 | /* derived from this software without specific prior written */ 20 | /* permission. */ 21 | /* */ 22 | /* THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK */ 23 | /* DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING */ 24 | /* ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT */ 25 | /* SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE */ 26 | /* FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES */ 27 | /* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN */ 28 | /* AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, */ 29 | /* ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF */ 30 | /* THIS SOFTWARE. */ 31 | /* */ 32 | /************************************************************************/ 33 | /* Author: Richard Caley (rjc@cstr.ed.ac.uk) */ 34 | /* Date: Mon Mar 31 1997 */ 35 | /************************************************************************/ 36 | 37 | #ifndef __STRING_VERSION_H__ 38 | #define __STRING_VERSION_H__ 39 | 40 | #define STRING_VERSION "1.2" 41 | #define STRING_DATE "May 1998" 42 | 43 | #endif 44 | -------------------------------------------------------------------------------- /config/configs/cstr.mak: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | ifeq ($(OSTYPE),SunOS) 36 | include $(EST)/config/configs/cstr_suns.mak 37 | else 38 | include $(EST)/config/configs/cstr_linux.mak 39 | endif 40 | -------------------------------------------------------------------------------- /config/configs/kellogg.mak: -------------------------------------------------------------------------------- 1 | ########################################################################### 2 | ## ## 3 | ## Centre for Speech Technology Research ## 4 | ## University of Edinburgh, UK ## 5 | ## Copyright (c) 1996 ## 6 | ## All Rights Reserved. ## 7 | ## ## 8 | ## Permission is hereby granted, free of charge, to use and distribute ## 9 | ## this software and its documentation without restriction, including ## 10 | ## without limitation the rights to use, copy, modify, merge, publish, ## 11 | ## distribute, sublicense, and/or sell copies of this work, and to ## 12 | ## permit persons to whom this work is furnished to do so, subject to ## 13 | ## the following conditions: ## 14 | ## 1. The code must retain the above copyright notice, this list of ## 15 | ## conditions and the following disclaimer. ## 16 | ## 2. Any modifications must be clearly marked as such. ## 17 | ## 3. Original authors' names are not deleted. ## 18 | ## 4. The authors' names are not used to endorse or promote products ## 19 | ## derived from this software without specific prior written ## 20 | ## permission. ## 21 | ## ## 22 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 23 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 24 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 25 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 26 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 27 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 28 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 29 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 30 | ## THIS SOFTWARE. ## 31 | ## ## 32 | ########################################################################### 33 | 34 | JAVA_HOME=/usr/java1.1 35 | 36 | JAVAC=/bin/javac 37 | JAVAH=/bin/javah 38 | JAVA=/bin/java 39 | -------------------------------------------------------------------------------- /config/modules/macosx_audio.mak: -------------------------------------------------------------------------------- 1 | ########################################################################### 2 | ## ## 3 | ## Author: Brian Foley (bfoley@compsoc.nuigalway.ie) ## 4 | ## Date: Wed Feb 17 2004 ## 5 | ## -------------------------------------------------------------------- ## 6 | ## Definitions for MacOS X audio support. ## 7 | ## ## 8 | ########################################################################### 9 | 10 | INCLUDE_MACOSX_AUDIO=1 11 | 12 | MOD_DESC_MACOSX_AUDIO=CoreAudio audio module for MacOS X systems 13 | 14 | AUDIO_DEFINES += -DSUPPORT_MACOSX_AUDIO 15 | 16 | MODULE_LIBS += -framework CoreAudio -framework AudioUnit -framework AudioToolbox -framework Cocoa 17 | 18 | PROJECT_LIBRARY_SYSLIBS_estbase += -framework CoreAudio -framework AudioUnit -framework AudioToolbox -framework Cocoa 19 | 20 | -------------------------------------------------------------------------------- /config/modules/pulse_audio.mak: -------------------------------------------------------------------------------- 1 | ## Definitions for PulseAudio 2 | 3 | INCLUDE_PULSE_AUDIO=1 4 | 5 | MOD_DESC_PULSE_AUDIO=PulseAudio support 6 | 7 | AUDIO_DEFINES += -DSUPPORT_PULSEAUDIO 8 | AUDIO_INCLUDES += -I$(PULSE_INCLUDE) 9 | MODULE_LIBS += -lpulse-simple -lpulse 10 | PROJECT_LIBRARY_SYSLIBS_estbase += -lpulse-simple -lpulse 11 | 12 | -------------------------------------------------------------------------------- /config/modules/siod_python.mak: -------------------------------------------------------------------------------- 1 | ############################################################################ 2 | ### ## 3 | ### Carnegie Mellon University ## 4 | ### Copyright (c) 2013 ## 5 | ### All Rights Reserved. ## 6 | ### ## 7 | ### Permission is hereby granted, free of charge, to use and distribute ## 8 | ### this software and its documentation without restriction, including ## 9 | ### without limitation the rights to use, copy, modify, merge, publish, ## 10 | ### distribute, sublicense, and/or sell copies of this work, and to ## 11 | ### permit persons to whom this work is furnished to do so, subject to ## 12 | ### the following conditions: ## 13 | ### 1. The code must retain the above copyright notice, this list of ## 14 | ### conditions and the following disclaimer. ## 15 | ### 2. Any modifications must be clearly marked as such. ## 16 | ### 3. Original authors' names are not deleted. ## 17 | ### 4. The authors' names are not used to endorse or promote products ## 18 | ### derived from this software without specific prior written ## 19 | ### permission. ## 20 | ### ## 21 | ### CARNEGIE MELLON UNIVERSITY AND THE CONTRIBUTORS TO THIS WORK ## 22 | ### DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 23 | ### ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO ## 24 | ### EVENT SHALL CARNEGIE MELLON UNIVERSITY NOR THE CONTRIBUTORS BE ## 25 | ### LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY ## 26 | ### DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, ## 27 | ### WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ## 28 | ### ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ## 29 | ### PERFORMANCE OF THIS SOFTWARE. ## 30 | ### ## 31 | ############################################################################ 32 | ### Python calls from siod ## 33 | ############################################################################ 34 | 35 | INCLUDE_SIOD_PYTHON=1 36 | MOD_DESC_SIOD_PYTHON=Python in SIOD 37 | -------------------------------------------------------------------------------- /config/rules/make_depend.awk: -------------------------------------------------------------------------------- 1 | BEGIN {s=0} 2 | 3 | s==0 && $1=="#" && $2==name {s=1;next} 4 | 5 | s==1 && NF==0 {s=2; next} 6 | 7 | s==2 && NF==0 {s=3; next} 8 | 9 | (s==0 || s==3) && NF==1 && $1=="NEW" { 10 | printf("\n# %s %s\n\n", name, date); 11 | s=4; 12 | next; 13 | } 14 | 15 | s==0 || s==3 || s==4 {print} 16 | 17 | -------------------------------------------------------------------------------- /config/rules/script_process.awk: -------------------------------------------------------------------------------- 1 | /^#__SHARED_SETUP__/ { 2 | if (shared != "" ) { 3 | system("cat " sharedsetup); 4 | } else { 5 | print "# NOT SHARED"; 6 | } 7 | next; 8 | } 9 | 10 | /__TOP__/ { 11 | sub(/__TOP__/, topdir); 12 | } 13 | 14 | /__PROGRAM__/ { 15 | sub(/__PROGRAM__/, scriptname); 16 | } 17 | 18 | 19 | /__PROJECT__/ { 20 | sub(/__PROJECT__/, project); 21 | } 22 | 23 | /__VERSION__/ { 24 | sub(/__VERSION__/, version); 25 | } 26 | 27 | /__SYSTEM__/ { 28 | sub(/__SYSTEM__/, systemtype); 29 | } 30 | 31 | /__EST__/ { 32 | sub(/__EST__/, est); 33 | } 34 | 35 | /__MAIN__/ { 36 | sub(/__MAIN__/, main); 37 | } 38 | 39 | /__LIB__/ { 40 | sub(/__LIB__/, lib); 41 | } 42 | 43 | /__PERL__/ { 44 | sub(/__PERL__/, perl); 45 | } 46 | 47 | /__CLASSPATH__/ { 48 | sub(/__CLASSPATH__/, classpath); 49 | } 50 | 51 | /__JAVA__/ { 52 | sub(/__JAVA__/, java); 53 | } 54 | 55 | /__JAVAC__/ { 56 | sub(/__JAVAC__/, javac); 57 | } 58 | 59 | /__JAVA_VERSION__/ { 60 | sub(/__JAVA_VERSION__/, java_version); 61 | } 62 | 63 | /__JAVA_HOME__/ { 64 | sub(/__JAVA_HOME__/, javahome); 65 | } 66 | 67 | /__LDPATH__/ { 68 | sub(/__LDPATH__/, ldpath); 69 | } 70 | 71 | /__LDVAR__/ { 72 | sub(/__LDVAR__/, ldvar); 73 | } 74 | 75 | /__LIBS__/ { 76 | sub(/__LIBS__/, libs); 77 | } 78 | 79 | /__INCLUDES__/ { 80 | sub(/__INCLUDES__/, includes); 81 | } 82 | 83 | /__DEFINES__/ { 84 | sub(/__DEFINES__/, defines); 85 | } 86 | 87 | /__LINK_COMMAND__/ { 88 | sub(/__LINK_COMMAND__/, linkcommand); 89 | } 90 | 91 | /__CXX_COMMAND__/ { 92 | sub(/__CXX_COMMAND__/, cxxcommand); 93 | } 94 | 95 | /__CC_COMMAND__/ { 96 | sub(/__CC_COMMAND__/, cccommand); 97 | } 98 | 99 | 100 | {print} 101 | -------------------------------------------------------------------------------- /config/test_make_rules: -------------------------------------------------------------------------------- 1 | ########################################################-*-mode:Makefile-*- 2 | ## ## 3 | ## Centre for Speech Technology Research ## 4 | ## University of Edinburgh, UK ## 5 | ## Copyright (c) 1996,1997 ## 6 | ## All Rights Reserved. ## 7 | ## ## 8 | ## Permission is hereby granted, free of charge, to use and distribute ## 9 | ## this software and its documentation without restriction, including ## 10 | ## without limitation the rights to use, copy, modify, merge, publish, ## 11 | ## distribute, sublicense, and/or sell copies of this work, and to ## 12 | ## permit persons to whom this work is furnished to do so, subject to ## 13 | ## the following conditions: ## 14 | ## 1. The code must retain the above copyright notice, this list of ## 15 | ## conditions and the following disclaimer. ## 16 | ## 2. Any modifications must be clearly marked as such. ## 17 | ## 3. Original authors' names are not deleted. ## 18 | ## 4. The authors' names are not used to endorse or promote products ## 19 | ## derived from this software without specific prior written ## 20 | ## permission. ## 21 | ## ## 22 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 23 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 24 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 25 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 26 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 27 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 28 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 29 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 30 | ## THIS SOFTWARE. ## 31 | ## ## 32 | ########################################################################### 33 | # Makefile rules for testing things # 34 | ########################################################################### 35 | 36 | # indirect to shared rule sets directory 37 | 38 | include $(TOP)/config/rules/test_make_rules.mak 39 | -------------------------------------------------------------------------------- /config/vc_common_make_rules: -------------------------------------------------------------------------------- 1 | ###################################################################### 2 | # # 3 | # Make rules for MicroCruft Visual C++ # 4 | # # 5 | ###################################################################### 6 | 7 | !include $(TOP)\config\vc_config_make_rules 8 | 9 | .SUFFIXES: .cc .obj 10 | CPP=cl /nologo /DSYSTEM_IS_WIN32=1 /DINSTANTIATE_TEMPLATES=1 $(MODULEFLAGS) $(AUDIOFLAGS) 11 | CC=cl /nologo /DSYSTEM_IS_WIN32=1 $(MODULEFLAGS) 12 | 13 | default_target: all $(DIRS) 14 | @echo done $(DIRNAME) 15 | 16 | all: $(ALL) 17 | 18 | $(DIRS) x1 : FORCE 19 | @echo building in $(DIRNAME)\$@ 20 | @cd $@ 21 | @nmake /nologo /fVCMakefile 22 | @cd .. 23 | 24 | FORCE: 25 | 26 | .vcbuildlibs: .vcbuildlib 27 | 28 | .vcbuildlib: $(OBJS) 29 | @echo add to $(INLIB) $(OBJS) 30 | @if EXIST $(INLIB) lib/nologo $(INLIB) $(OBJS) 31 | @if NOT EXIST $(INLIB) lib/nologo /out:$(INLIB) $(OBJS) 32 | echo built > .vcbuildlib 33 | 34 | .vc_add_to_lib: $(TOADD) 35 | @if EXIST $(ADDLIB) lib/nologo $(ADDLIB) $(TOADD) 36 | @if NOT EXIST $(ADDLIB) lib/nologo /out:$(ADDLIB) $(TOADD) 37 | @echo built > .vc_add_to_lib 38 | 39 | .libraries: 40 | @echo Libraries not touched for VC++ 41 | 42 | relink: 43 | @echo Links not made for Visual C++ 44 | 45 | .config_error:: 46 | @echo Config not checked for VC 47 | 48 | .sub_directories: $(BUILD_DIRS) 49 | 50 | .remove_links: 51 | @echo Links not made for Visual C++ 52 | .process_scripts: 53 | @echo Scripts not created for VC 54 | .link_main: 55 | @echo Links not made for Visual C++ 56 | 57 | .cc.obj: 58 | $(CPP) $(CFLAGS) /c /Tp$*.cc /Fo$*.obj 59 | .c.obj: 60 | $(CC) $(CFLAGS) /c $*.c /Fo$*.obj 61 | 62 | # this dummy rule stops the comment in make.depend getting 63 | # interpreted as a command... YEUCH 64 | hack_dummy_target: 65 | -------------------------------------------------------------------------------- /config/vc_config_make_rules-dist: -------------------------------------------------------------------------------- 1 | 2 | ###################################################################### 3 | # # 4 | # Configuration variable make settings for MicroCruft Visual C++ # 5 | # # 6 | ###################################################################### 7 | 8 | MODULEFLAGS=/DSUPPORT_EDITLINE=1 9 | AUDIOFLAGS=/DSUPPORT_MPLAYER=1 /DSUPPORT_WIN32AUDIO=1 10 | 11 | DEBUGFLAGS= /Zi 12 | LINKDEBUGFLAGS = /debug 13 | 14 | OPTFLAGS= /EHsc /wd4675 15 | 16 | INCLUDEFLAGS= /I$(TOP)/include $(LOCAL_INCLUDES) 17 | 18 | LINKFLAGS=$(LINKDEBUGFLAGS) 19 | 20 | LIB_DIR=lib 21 | 22 | ESTLIBS = $(TOP)\lib\libestools.lib $(TOP)\lib\libestbase.lib $(TOP)\lib\libeststring.lib 23 | 24 | WINLIBS = wsock32.lib winmm.lib 25 | 26 | !ifndef VCLIBS 27 | VCLIBS = $(ESTLIBS) 28 | !endif 29 | -------------------------------------------------------------------------------- /doc/bibliography.bib: -------------------------------------------------------------------------------- 1 | @article{churchgale1991, 2 | title={6. using statistics in lexical analysis}, 3 | author={Church, Kenneth and Gale, William and Hanks, Patrick and Kindle, Donald}, 4 | journal={Lexical acquisition: exploiting on-line resources to build a lexicon}, 5 | pages={115}, 6 | year={1991} 7 | } 8 | 9 | @inproceedings{pereira1992inside, 10 | title={Inside-outside reestimation from partially bracketed corpora}, 11 | author={Pereira, Fernando and Schabes, Yves}, 12 | booktitle={Proceedings of the 30th annual meeting on Association for Computational Linguistics}, 13 | pages={128--135}, 14 | year={1992}, 15 | organization={Association for Computational Linguistics} 16 | } 17 | 18 | 19 | @article{kaplan94, 20 | title={Regular models of phonological rule systems}, 21 | author={Kaplan, Ronald M and Kay, Martin}, 22 | journal={Computational linguistics}, 23 | volume={20}, 24 | number={3}, 25 | pages={331--378}, 26 | year={1994}, 27 | publisher={MIT Press} 28 | } 29 | 30 | @book{ritchie1992, 31 | title={Computational morphology: practical mechanisms for the English lexicon}, 32 | author={Ritchie, Graeme D}, 33 | year={1992}, 34 | publisher={The MIT Press} 35 | } 36 | 37 | @article{mohri1996, 38 | title={On some applications of finite-state automata theory to natural language processing}, 39 | author={Mohri, Mehryar}, 40 | journal={Natural Language Engineering}, 41 | volume={2}, 42 | number={1}, 43 | pages={61--80}, 44 | year={1996}, 45 | publisher={Cambridge Univ Press} 46 | } 47 | 48 | @inproceedings{sproat1996compilation, 49 | title={Compilation of weighted finite-state transducers from decision trees}, 50 | author={Sproat, Richard and Riley, Michael}, 51 | booktitle={Proceedings of the 34th annual meeting on Association for Computational Linguistics}, 52 | pages={215--222}, 53 | year={1996}, 54 | organization={Association for Computational Linguistics} 55 | } 56 | 57 | @article{breiman1984classification, 58 | title={Classification and regression trees (CART) Wadsworth International Group}, 59 | author={Breiman, L and Friedman, JH and Olshen, RA and Stone, CJ}, 60 | journal={Belmont, CA, USA}, 61 | year={1984} 62 | } 63 | -------------------------------------------------------------------------------- /doc/cstr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/doc/cstr.gif -------------------------------------------------------------------------------- /doc/edcrest.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/doc/edcrest.gif -------------------------------------------------------------------------------- /doc/est.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/doc/est.jpg -------------------------------------------------------------------------------- /doc/estbaseclass.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page estbaseclass Basic Classes 3 | \tableofcontents 4 | 5 | \subpage estbaseclassclasses 6 | 7 | \subpage estbaseclassexamples 8 | */ 9 | 10 | /** 11 | \page estbaseclassclasses Classes 12 | \tableofcontents 13 | 14 | \section estbaseclassclassescontainerclasses Container Classes 15 | 16 | @ref containerclasses 17 | 18 | \section estbaseclassclassesstringclasses String Classes 19 | 20 | @ref stringclasses 21 | 22 | \section estbaseclassclassessupportclasses Support Classes 23 | 24 | @ref supportclasses 25 | */ 26 | 27 | /** 28 | \page estbaseclassexamples Examples 29 | \tableofcontents 30 | - @subpage EST_TList-example 31 | - @subpage EST_KVL-example 32 | 33 | */ 34 | -------------------------------------------------------------------------------- /doc/estexec.md: -------------------------------------------------------------------------------- 1 | Executable Programs {#estexec} 2 | =================== 3 | 4 | ## Manuals 5 | 6 | See @subpage estmanuals for more information 7 | 8 | # Building your own executable programs {#estexecbuilding} 9 | 10 | A simple mechanism is provided for doing all the configuration needed 11 | to build a executable program which uses the speech tools library. 12 | 13 | First, make a directory which will hold your program. To make a program called "do_stuff", type 14 | 15 | est_program do_stuff 16 | 17 | if you haven't got the EST bin directory in your path you will have 18 | to add the path explicitly, e.g. 19 | 20 | speech_tools/bin/est_program do_stuff 21 | 22 | 23 | This will create a Makefile and a .cc file called 24 | *do_stuff_main.cc*, which will look something like 25 | this: 26 | 27 | ~~~~~~~~~~~~~~~{.cc} 28 | #include "EST.h" 29 | #include "EST_types.h" 30 | #include "EST_error.h" 31 | 32 | int main(int argc, char *argv[]) 33 | { 34 | EST_StrList files; // the list of input files will go here 35 | EST_Option cmd_line; // the parsed list of command line arguments 36 | // will go here. 37 | 38 | // This bit parses the command line args and puts them into 39 | // files and cmd_line 40 | parse_command_line 41 | (argc, argv, 42 | EST_String("[OPTIONS] [files...]\n")+ 43 | "Summary; DO SOMETHING\n"+ 44 | "-o [ofile] Output file\n", 45 | files, cmd_line); 46 | 47 | EST_String out_file; // the name of the output file 48 | 49 | // If a output file has been specified using -o, put it in out_file 50 | if (cmd_line.present("-o")) 51 | out_file = cmd_line.val("-o"); 52 | else 53 | EST_error("No output file specified"); 54 | 55 | // declare EST_StrList iterator 56 | EST_StrList::Entries fs; 57 | 58 | // iterate through files and do something. 59 | for(fs.begin(files); fs; ++fs) 60 | { 61 | EST_String file = *fs; 62 | 63 | // Process file 64 | } 65 | 66 | return 0; 67 | } 68 | ~~~~~~~~~~~~~~~ 69 | 70 | You can now add any C++ code to this, and compile by typing *make*. 71 | 72 | If you want to create a second program in the same directory, type the 73 | same again: 74 | 75 | speech_tools/bin/est_program do_more_stuff 76 | 77 | This time, *do_more_stuff_main.cc* will be created and the 78 | appropriate build commands added to the extisting Makefile. If you 79 | wish to add an extra .cc file to particular program, simply edit the 80 | Makefile and add it on the line: 81 | 82 | do_stuff_CXXSRC= do_stuff.cc extra.cc 83 | 84 | 85 | 86 | -------------------------------------------------------------------------------- /doc/estmanuals.md: -------------------------------------------------------------------------------- 1 | Manuals {#estmanuals} 2 | ========================= 3 | 4 | # General Information {#estmanualsgeneral} 5 | 6 | Edinburgh Speech Tools provides a set of executables, which 7 | offer access to speech tools functionality in the form of a stand 8 | alone program. As far as possible, the programs follow a common 9 | format in terms of assumptions, defaults and processing paradigms. 10 | 11 | The following are generally true of most speech tools programs. 12 | 13 | - Arguments to functions can be specified in any order on the command line. Most programs can take multiple input files, which by default have no preceding argument. 14 | - Output by default is to standard out. The -o flag can be used to specify an output file. 15 | - Often programs can read many formats of input file. 16 | Wherever possible, this is done automatically. If this can't be done, the 17 | -itype flag can be used to specify the input file format. 18 | - The output file format is specified by -otype. 19 | 20 | Specific documentation for each executable is given on separate pages: 21 | 22 | - @subpage ch_wave_manual 23 | - @subpage ch_track_manual 24 | - @subpage ch_lab_manual 25 | - @subpage ch_utt_manual 26 | 27 | - @subpage tilt_analysis_manual 28 | - @subpage tilt_synthesis_manual 29 | 30 | - @subpage sig2fv_manual 31 | - @subpage spectgen_manual 32 | - @subpage sigfilter_manual 33 | - @subpage design_filter_manual 34 | - @subpage pda_manual 35 | - @subpage pitchmark_manual 36 | 37 | - @subpage dp_manual 38 | - @subpage ngram_build_manual 39 | - @subpage ngram_test_manual 40 | - @subpage viterbi_manual 41 | 42 | - @subpage na_play_manual 43 | - @subpage na_record_manual 44 | 45 | - @subpage wagon_manual 46 | - @subpage wagon_test_manual 47 | - @subpage ols_manual 48 | - @subpage ols_test_manual 49 | 50 | - @subpage wfst_build_manual 51 | - @subpage wfst_train_manual 52 | - @subpage wfst_run_manual 53 | 54 | - @subpage scfg_make_manual 55 | - @subpage scfg_train_manual 56 | - @subpage scfg_parse_manual 57 | - @subpage scfg_test_manual 58 | 59 | - @subpage siod_manual 60 | - @subpage bcat_manual 61 | - @subpage xml_parser_manual 62 | 63 | - @subpage align_manual 64 | 65 | -------------------------------------------------------------------------------- /doc/estutil.md: -------------------------------------------------------------------------------- 1 | Utility Functions {#estutil} 2 | ==================== 3 | 4 | [TOC] 5 | 6 | # Utility Classes and Functions {#estutilclassfunc} 7 | 8 | ## Classes 9 | 10 | - EST_Token 11 | 12 | ## Functions 13 | 14 | - \ref utilityfunctionsforstrings 15 | - \ref utilityfunctionsforio 16 | 17 | -------------------------------------------------------------------------------- /doc/index.md: -------------------------------------------------------------------------------- 1 | Edinburgh Speech Tools Library {#mainpage} 2 | ================================ 3 | 4 | # Index 5 | 6 | 1. @subpage estintro 7 | 2. @subpage estlicence 8 | 3. @subpage estexec 9 | 4. @subpage estbaseclass 10 | 5. @subpage estspeechclass 11 | 6. @subpage estling 12 | 7. @subpage estutil 13 | 8. @subpage estsigpr 14 | 9. @subpage estserver 15 | 10. @subpage estgram 16 | 11. @subpage estwagon 17 | 12. @subpage esttilt 18 | 13. @subpage estxml 19 | 20 | 21 | @author Paul Taylor 22 | @author Richard Caley 23 | @author Alan W Black 24 | @author Simon King 25 | 26 | 27 | @copyright 1994-1999 Centre for Speech Technology, University of Edinburgh 28 | 29 | -------------------------------------------------------------------------------- /doc/man/align_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page align_manual align 4 | @brief *Align stream with reference stream* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | Simple alignment scoring program to give number of insertions, 12 | deletions, errors between a string of symbols and a reference string 13 | of symbols. 14 | 15 | @section options Options 16 | 17 | @OPTIONS@ 18 | 19 | */ 20 | -------------------------------------------------------------------------------- /doc/man/bcat_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page bcat_manual bcat 4 | @brief *Binary safe version of cat* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | bcat is a trivial file concatenation program. It exists to allow testing 12 | of various file splitting operations under the cygwin environment on Windows 13 | where the distinction between binary and text data is important. 14 | 15 | @section options Options 16 | 17 | @OPTIONS@ 18 | 19 | */ 20 | -------------------------------------------------------------------------------- /doc/man/ch_lab_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page ch_lab_manual ch_lab 4 | @brief *Label file manipulation* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | ch_lab is used to manipulate the format of label files and 12 | serves as a wrap-around for the \ref EST_Relation class. 13 | 14 | @section options Options 15 | 16 | @OPTIONS@ 17 | 18 | */ 19 | -------------------------------------------------------------------------------- /doc/man/ch_track_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page ch_track_manual ch_track 4 | @brief *Track file manipulation* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | ch_track is used to manipulate the format of a track 12 | file. Operations include: 13 | 14 | - file format conversion 15 | - smoothing 16 | - changing the frame spacing of a track (resampling) 17 | - producing differentiated and delta tracks 18 | - Using a threshold to convert a track file to a label file 19 | 20 | - making multiple input files into a single multi-channel output file 21 | - extracting a single channel from a multi-channel track 22 | - extracting a time-delimited portion of the waveform 23 | 24 | @section options Options 25 | 26 | @OPTIONS@ 27 | 28 | */ 29 | -------------------------------------------------------------------------------- /doc/man/ch_utt_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page ch_utt_manual ch_utt 4 | @brief *change/convert utterance files* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | @section options Options 12 | 13 | @OPTIONS@ 14 | 15 | */ 16 | -------------------------------------------------------------------------------- /doc/man/convert-options.xslt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | - <strong> 7 | 8 | </strong>: 9 | 10 | * 11 | * 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /doc/man/convert-synopsis.xslt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | [ 20 | 21 | * 22 | 23 | * 24 | 25 | ] 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /doc/man/create_dox.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # The .body source files contain documentation for executables. 4 | # This files have the synopsis and the options section empty. 5 | # The synopsis and the options documentation are generated automatically 6 | # using the EST native sgml generated documentation options. 7 | # The xsl transformations convert the sgml output from the EST executables 8 | # into markdown format, parseable by doxygen. 9 | # 10 | # Simple usage: 11 | # ./create_dox.sh \ 12 | # "../../bin/ch_wave" \ 13 | # ./ch_wave_man.dox.body 14 | # 15 | # A ch_wave_manual.dox will be generated in current directory 16 | # (has to be run from speech_tools/doc/man/ directory) 17 | # 18 | # Custom xsltproc binary: 19 | # 20 | # ./create_dox.sh \ 21 | # /path/to/ch_wave \ 22 | # /path/to/ch_wave_man.dox.body \ 23 | # . \ 24 | # . \ 25 | # /usr/bin/xsltproc \ 26 | # /usr/bin/awk 27 | # 28 | # Out of tree usage: 29 | # /tmp/speech_tools/doc/man/create_dox.sh \ 30 | # /path/to/ch_wave \ 31 | # /path/to/ch_wave_man.dox.body \ 32 | # /tmp/speech_tools/doc/man/ \ 33 | # /tmp/builddir/ \ 34 | # /usr/bin/xsltproc \ 35 | # /usr/bin/awk 36 | full_program="$1" 37 | doc_body="$2" 38 | doc_man_dir="${3:-$PWD}" 39 | out_dir="${4:-$PWD}" 40 | XSLTPROC="${5:-xsltproc}" 41 | AWK="${6:-awk}" 42 | 43 | program=`basename $full_program` 44 | doc_out="${out_dir}/${program}_man.dox" 45 | 46 | # Generate 47 | $full_program -sgml_synopsis | "${XSLTPROC}" "${doc_man_dir}/convert-synopsis.xslt" - > "${program}_synopsis.txt" || exit 1 48 | $full_program -sgml_options | "${XSLTPROC}" "${doc_man_dir}/convert-options.xslt" - > "${program}_options.txt" || exit 1 49 | 50 | ${AWK} 'BEGIN { 51 | while ((getline line < ARGV[1]) > 0) {file1 = file1 nl line; nl = "\n"}; 52 | close (ARGV[1]); nl = ""; 53 | while ((getline line < ARGV[2]) > 0) {file2 = file2 nl line; nl = "\n"}; 54 | close (ARGV[2]); 55 | ARGV[1] = ""; ARGV[2] = "" } 56 | { gsub("@SYNOPSIS@", file1); 57 | gsub("@OPTIONS@", file2); 58 | print }' "${program}_synopsis.txt" "${program}_options.txt" "${doc_body}" > "${doc_out}" || exit 1 59 | 60 | rm "${program}_synopsis.txt" "${program}_options.txt" || exit 1 61 | -------------------------------------------------------------------------------- /doc/man/design_filter_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page design_filter_manual design_filter 4 | @tableofcontents 5 | 6 | @section synopsis Synopsis 7 | 8 | @SYNOPSIS@ 9 | 10 | designfilter computes the coefficients of a FIR 11 | filter with a given frequency response. The user supplies the 12 | frequency response as a vector of evenly spaced gains ranging from 0 13 | to half the sampling frequency. The length of this vector must be a 14 | power of 2. The filter coefficients can be used by the \ref sigfilter_manual 15 | program. 16 | 17 | @section options Options 18 | 19 | @OPTIONS@ 20 | 21 | */ 22 | -------------------------------------------------------------------------------- /doc/man/dp_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page dp_manual dp 4 | @brief *Perform dynamic programming on label sequences* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | dp provides simple dynamic programming to find the lowest cost 12 | alignment of two symbol sequences. Possible uses include: 13 | 14 | - Label alignment (e.g. speech recogniser output scoring) 15 | 16 | 17 | The costs of inserting/deleting/substituting symbols can be given 18 | either with command line options, or as a file containing a full 19 | matrix of costs. In the former case, all insertions will have the same 20 | cost. In the latter case, each row of the file contains the cost of 21 | replacing a symbol in sequence 1 with each possible symbol in the 22 | vocabulary to align with sequence 2, including a special "place 23 | holder" symbol used for insertions/deletions. See the examples 24 | below. The place holder can be redefined. 25 | 26 | The output is an EST_utterance with three EST_Relation: the first two are 27 | the input sequences, and the third shows the alignment found by 28 | dynamic programming. 29 | 30 | @section options Options 31 | 32 | @OPTIONS@ 33 | 34 | @section examples Examples 35 | 36 | Align two symbol sequences: 37 | 38 | $ dp -vocab vocab.file "a b c" "a b d c" -i 1 -d 2 -s 3 39 | 40 | where vocab.file contains "a b c d" 41 | 42 | Or, using a full cost matrix: 43 | 44 | $ dp -vocab vocab2.file -cost_matrix foo "a b c" "a b d c" 45 | 46 | where vocab2.file contains "a b c d <null>" and the file foo contains: 47 | 48 | 0 3 3 3 2 49 | 3 0 3 3 2 50 | 3 3 0 3 2 51 | 3 3 3 0 2 52 | 1 1 1 1 0 53 | 54 | 55 | Each row of foo shows the cost of replacing an input symbol 56 | with each symbol in the vocabulary to match an output symbol. Each row 57 | corresponds to an item in the vocabulary (in the order they appear in 58 | the vocabulary file). In the example, replacing 'a' with 'a' costs 0, 59 | replacing 'a' with any of 'b' 'c' or 'd' costs 3 (a substitution), and 60 | replacing 'a' with the place holder symbol 'null' costs 2 (a 61 | deletion). The cost of replacing 'null' with anything other than 62 | 'null' costs 1 (an insertion). The costs of 1,2 and 3 used here are 63 | only for illustration. The cost matrix meed not have the form above - 64 | for example, replacing 'a' with 'a' need not cost 0. The entries in 65 | foo are read as floats. 66 | 67 | 68 | 69 | */ 70 | 71 | 72 | -------------------------------------------------------------------------------- /doc/man/meson.build: -------------------------------------------------------------------------------- 1 | # All the speech tools binaries use the parse_command_line() function, that expects 2 | # a definition of the command line options and a synopsis of the usage. 3 | # The Speech Tools library is able to parse those descriptions and provide them in a 4 | # standard sgml format, when called with -sgml_synopsis or -sgml_options 5 | # (e.g. ch_wave -sgml_options) 6 | # 7 | # Here we use an xslt template to convert the sgml output from those binaries into 8 | # documentation usable by doxygen. 9 | # 10 | 11 | foreach doc_required_opt : ['scfg', 'wfst', 'ols', 'wagon', 'rxp', 'siod'] 12 | if not get_option(doc_required_opt) 13 | warning('The documentation can not be fully built without enabling' + doc_required_opt) 14 | endif 15 | endforeach 16 | 17 | xsltproc = find_program('xsltproc', native: true, required: false) 18 | awk = find_program('awk', native: true, required: false) 19 | sh = find_program('sh', native: true, required: false) 20 | 21 | xslt_dep_files = files('convert-synopsis.xslt', 'convert-options.xslt', 'create_dox.sh') 22 | 23 | 24 | # /tmp/speech_tools/doc/man/create_dox.sh \ 25 | # /path/to/ch_wave \ 26 | # /path/to/ch_wave_man.dox.body \ 27 | # /tmp/speech_tools/doc/man/ \ 28 | # /tmp/builddir/ \ 29 | # /usr/bin/xsltproc \ 30 | # /usr/bin/awk 31 | 32 | if xsltproc.found() and awk.found() and sh.found() and not meson.is_cross_build() 33 | 34 | foreach exe_name, exe_meson_object : EXECUTABLES 35 | doc_man_progs += custom_target( 36 | exe_name + '.dox', 37 | depend_files: [xslt_dep_files, files(exe_name + '_man.dox.body')], 38 | depends: exe_meson_object, 39 | command: [ 40 | meson.current_source_dir() + '/create_dox.sh', 41 | exe_meson_object.full_path(), 42 | join_paths(meson.current_source_dir(), exe_name + '_man.dox.body'), 43 | meson.current_source_dir(), 44 | meson.current_build_dir(), 45 | xsltproc.full_path(), 46 | awk.full_path() 47 | ], 48 | output: [exe_name + '.dox'] 49 | ) 50 | endforeach 51 | 52 | endif # xsltproc.found() and awk.found() and sh.found() 53 | 54 | -------------------------------------------------------------------------------- /doc/man/na_play_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page na_play_manual na_play 4 | @brief *Audio Playback* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | na_play is a general playback program for playing sound files on a variety 12 | of platforms and sound cards. 13 | 14 | Currently, the following audio devices are supported: 15 | 16 | 17 | - sunaudio: 8k ulaw direct to `/dev/audio` found on most Sun machines. This 18 | is also found under Linux and FreeBSD, and possibly others. This 19 | is the default if `netaudio` is not supported. 20 | - netaudio: NCD's network transparent audio system (NAS). This allows 21 | use of audio devices across a network. NAS has support for, Suns, 22 | Linux, FreeBSD, HPs and probably other machines by now. 23 | - sun16audio: This is only available on newer Sun workstations and has been 24 | enabled at compile time. This provides 16bit linear PCM at various sample rates. 25 | - linux16audio: This is only available on Linux workstations and has been enabled 26 | at compile time. This provides 16bit linear PCM at various sample rates. 27 | - freebsd16audio: This is only available on workstations running FreeBSD and has 28 | been enabled at compile time. This provides 16bit linear PCM at various sample rates. 29 | - mplayeraudio: This is only available under Windows NT 4.0 and Windows 95 and 30 | has been enabled at compile time. This provides 31 | 16bit linear PCM at various sample rates. 32 | - win32audio : This is only available under Windows NT 4.0 and 33 | Windows 95 and has been enabled at compile time. This provides 34 | 16bit linear PCM at various sample rates, playing the audio directly 35 | rather than saving to a file as with mplayeraudio. 36 | - irixaudio: Audio support for SGI's IRIX 6.2. 37 | - Audio_Command: Allows the specification of an arbitrary UNIX command to play 38 | the waveform. This won't normally be used with `na_play` as 39 | you could just use the command directly but is necessary with some 40 | systems using the speech tools. 41 | 42 | 43 | The default audio is netaudio if it is supported. If not the platform 44 | specific auido mode is the default (e.g. sun16audio, linux16audio, 45 | freebsd16audio or mplayeraudio). If none of these is supported, 46 | sunaudio is the default. 47 | 48 | @section options Options 49 | 50 | @OPTIONS@ 51 | 52 | */ 53 | -------------------------------------------------------------------------------- /doc/man/na_record_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page na_record_manual na_record 4 | @brief *Audio file recording* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | na_record records waveforms from an audio device. It only supports 12 | recording for N seconds (default is 10). Specifying the frequency 13 | defines the recording frequency (if supported by the hardware). This 14 | currently doesn't support NAS audio in. 15 | 16 | @section options Options 17 | 18 | @OPTIONS@ 19 | 20 | */ 21 | -------------------------------------------------------------------------------- /doc/man/ngram_build_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page ngram_build_manual ngram_build 4 | @brief *Train n-gram language model* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | ngram_build offers basic ngram language model estimation. 12 | 13 | **Input data format**: 14 | 15 | Two input formats are supported. In sentence_per_line format, 16 | the program will deal with start and end of sentence (if required) by 17 | using special vocabulary items specified by `-prev_tag`, `-prev_prev_tag` 18 | and `-last_tag`. For example, the input sentence: 19 | 20 | the cat sat on the mat 21 | 22 | would be treated as 23 | 24 | ... prev_prev_tag prev_prev_tag prev_tag the cat sat on the mat last_tag 25 | 26 | where `prev_prev_tag` is the argument to `-prev_prev_tag`, and so on. A 27 | default set of tag names is also available. This input format is only 28 | useful for sliding-window type applications (e.g. language modelling 29 | for speech recognition). 30 | 31 | The second input format is `ngram_per_line` which is useful for either 32 | non-sliding-window applications, or where the user requires an 33 | alternative treatment of start/end of sentence to that provided 34 | above. Now the input file simply contains a complete ngram per 35 | line. For the same example as above (to build a trigram model) this 36 | would be: 37 | 38 | prev_prev_tag prev_tag the 39 | prev_tag the cat 40 | the cat sat 41 | cat sat on 42 | sat on the 43 | on the mat 44 | the mat last_tag 45 | 46 | 47 | **Representation**: 48 | 49 | The internal representation of the model becomes important for 50 | higher values of N where, if V is the vocabulary size, \f$V^N\f$ becomes 51 | very large. In such cases, we cannot explicitly hold probabilities for 52 | all possible ngrams, and a sparse representation must be used 53 | (i.e. only non-zero probabilities are stored). 54 | 55 | **Getting more robust probability estimates**: 56 | 57 | The common techniques for getting better estimates of the low/zero 58 | frequency ngrams are provided: namely smoothing and backing-off 59 | 60 | **Testing an ngram model**: 61 | 62 | Use the \ref ngram_test_manual program. 63 | 64 | @section options Options 65 | 66 | @OPTIONS@ 67 | 68 | */ 69 | -------------------------------------------------------------------------------- /doc/man/ngram_test_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page ngram_test_manual ngram_test 4 | @brief *Test n-gram language model* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | ngram_test is for testing ngram models generated from 12 | \ref ngram_build_manual. 13 | 14 | **How do we test an ngram model?**: 15 | 16 | `ngram_test` will compute the entropy (or perplexity, see below) 17 | of some test data, given an ngram model. The entropy gives a measure 18 | of how likely the ngram model is to have generated the test 19 | data. Entropy is defined (for a sliding-window type ngram) as: 20 | 21 | \f[H = -\frac{1}{Q} \sum_{i=1}^{Q} log P(w_i | w_{i-1}, w_{i-2},... w_{i-N+1}) \f] 22 | 23 | where \f$Q\f$ is the number of words of test data and \f$N\f$ is the order 24 | of the ngram model. Perplexity is a more intuitive mease, defined as: 25 | 26 | \f[B = 2^H \f] 27 | 28 | The perplexity of an ngram model with vocabulary size V will be 29 | between 1 and V. Low perplexity indicates a more predictable language, 30 | and in speech recognition, a models with low perplexity on test data 31 | (i.e. data NOT used to estimate the model in the first place) 32 | typically give better accuracy recognition than models with higher 33 | perplexity (this is not guaranteed, however). 34 | 35 | `ngram_test` works with non-sliding-window type models when the input 36 | format is `ngram_per_line`. 37 | 38 | 39 | **Input data format**: 40 | The data input format options are the same as \ref ngram_build_manual, as 41 | is the treatment of sentence start/end using special tags. 42 | 43 | Note: To get meaningful entropy/perplexity figures, it is recommended that 44 | you use the same data input format in both 45 | \ref ngram_build_manual and \ref ngram_test_manual, and the treatment of 46 | sentence start/end should be the same. 47 | 48 | @see ngram_build_manual */ 49 | 50 | @section options Options 51 | 52 | @OPTIONS@ 53 | 54 | @section hints Hints 55 | 56 | @subsection perplex-infinity I got a perplexity of Infinity -- what went wrong? 57 | 58 | A perplexity of Infinity means that at least one of the ngrams in your 59 | test data had a probability of zero. Possible reasons for this include: 60 | 61 | 62 | - The training data had no examples of this ngram, and 63 | you did not specify a floor for zero frequency ngrams in 64 | \ref ngram_build_manual. 65 | - You used differing input formats for \ref ngram_build_manual 66 | and \ref ngram_test_manual. 67 | - You used differing sentence start/end treatments in 68 | \ref ngram_build_manual and \ref ngram_test_manual. 69 | 70 | */ 71 | -------------------------------------------------------------------------------- /doc/man/ols_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page ols_manual ols 4 | @brief *Train linear regression model* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | @section options Options 12 | 13 | @OPTIONS@ 14 | 15 | */ 16 | -------------------------------------------------------------------------------- /doc/man/ols_test_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page ols_test_manual ols_test 4 | @brief *Test linear regression model* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | @section options Options 12 | 13 | @OPTIONS@ 14 | 15 | */ 16 | 17 | -------------------------------------------------------------------------------- /doc/man/pda_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page pda_manual pda 4 | @brief *Pitch Detection Algorithm* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | pda is a pitch detection algorithm that produces a fundamental frequency 12 | contour from a speech waveform file. At present only the 13 | super resolution pitch determination algorithm is implemented. 14 | See (Medan, Yair, and Chazan, 1991) and (Bagshaw et al., 1993) for a detailed 15 | description of the algorithm. 16 | 17 | The default values given below were found to optimise the performance 18 | of the pitch determination algorithm for speech data sampled at 20kHz 19 | using a 16-bit waveform and low pass filter with a 600Hz cut-off 20 | frequency and more than -85dB rejection above 700Hz. The best 21 | performances occur if the [-p] flag is passed. 22 | 23 | @section options Options 24 | 25 | @OPTIONS@ 26 | 27 | @section pda-examples Examples 28 | 29 | Pitch detection on typical male voice, using low pass filtering: 30 | 31 | $ pda kdt_010.wav -o kdt_010.f0 -fmin 80 -fmax 200 -L 32 | 33 | */ 34 | 35 | -------------------------------------------------------------------------------- /doc/man/scfg_make_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page scfg_make_manual scfg_make 4 | @brief *Make the rules for a stochastic context free grammar* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | Builds a stochastic context free grammar from a vocabulary of non-terminal 12 | and terminal symbols. An exhaustive set of all possible binary rules 13 | are generated with random (or equal) probabilities (or negative log 14 | probabilities). This program is designed for making grammars that 15 | can be trained using scfg_train. 16 | 17 | @section options Options 18 | 19 | @OPTIONS@ 20 | 21 | */ 22 | 23 | 24 | -------------------------------------------------------------------------------- /doc/man/scfg_parse_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page scfg_parse_manual scfg_parse 4 | @brief *Parse text using a pre-trained stochastic context free grammar* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | This parses given text with a given stochastic context free grammar. 12 | Note this program is not designed as an arbitrary parser for 13 | unrestricted English. It simply parses the input non-terminals 14 | with the given grammar. If you want to English (or other language) 15 | parses consider using the festival script `scfg_parse` 16 | which does proper tokenization and part of speech tagging, before 17 | passing it to a SCFG. 18 | 19 | @section options Options 20 | 21 | @OPTIONS@ 22 | 23 | */ 24 | 25 | -------------------------------------------------------------------------------- /doc/man/scfg_test_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page scfg_test_manual scfg_test 4 | @brief *Test the output of a parser* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | This program applies a stochastic context free grammar to a given 12 | corpus and reports the parsing accuracy and cross bracketing 13 | accuracy of the grammar with respect to the grammar. 14 | 15 | @section options Options 16 | 17 | @OPTIONS@ 18 | 19 | */ 20 | -------------------------------------------------------------------------------- /doc/man/scfg_train_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page scfg_train_manual scfg_train 4 | @brief *Train the parameters of a stochastic context free grammar* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | `scfg_train` takes a stochastic context free grammar (SCFG) and trains 12 | the probabilities with respect to a given bracket corpus using the 13 | inside-outside algorithm. This is basically an implementation 14 | of Pereira and Schabes 1992. 15 | 16 | Note using this program properly may require months of CPU time. 17 | 18 | @section options Options 19 | 20 | @OPTIONS@ 21 | 22 | */ 23 | -------------------------------------------------------------------------------- /doc/man/sig2fv_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page sig2fv_manual sig2fv 4 | @brief *Generate signal processing coefficients from waveforms* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | `sig2fv` is used to create signal processing feature vector analysis on speech 12 | waveforms. 13 | The following types of analysis are provided: 14 | 15 | - Linear prediction (LPC) 16 | - Cepstrum coding from lpc coefficients 17 | - Mel scale cepstrum coding via fbank 18 | - Mel scale log filterbank analysis 19 | - Line spectral frequencies 20 | - Linear prediction reflection coefficients 21 | - Root mean square energy 22 | - Power 23 | - fundamental frequency (pitch) 24 | - calculation of delta and acceleration coefficients of all of the above 25 | 26 | The -coefs option is used to specify a list of the names of what sort 27 | of basic processing is required, and -delta and -acc are used for 28 | delta and acceleration coefficients respectively. 29 | 30 | 31 | @section options Options 32 | 33 | @OPTIONS@ 34 | 35 | @section sig2fv-examples Examples 36 | 37 | Fixed frame basic linear prediction: 38 | 39 | To produce a set of linear prediction coefficients at every 10ms, using 40 | pre-emphasis and saving in EST format: 41 | 42 | $ sig2fv kdt_010.wav -o kdt_010.lpc -coefs "lpc" -otype est -shift 0.01 -preemph 0.5 43 | 44 | **Pitch Synchronous linear prediction**: 45 | The following used the set of pitchmarks in kdt_010.pm as the centres 46 | of the analysis windows. 47 | 48 | $ sig2fv kdt_010.wav -pm kdt_010.pm -o kdt_010.lpc -coefs "lpc" -otype est -shift 0.01 -preemph 0.5 49 | 50 | F0, Linear prediction and cepstral coefficients: 51 | 52 | $ sig2fv kdt_010.wav -o kdt_010.lpc -coefs "f0 lpc cep" -otype est -shift 0.01 53 | 54 | Note that pitchtracking can also be done with the 55 | `pda` program. Both use the same underlying 56 | technique, but the pda program offers much finer control over the 57 | pitch track specific processing parameters. 58 | 59 | Energy, Linear Prediction and Cepstral coefficients, with a 10ms frame shift 60 | during analysis but a 5ms frame shift in the output file: 61 | 62 | $ sig2fv kdt_010.wav -o kdt_010.lpc -coefs "f0 lpc cep" -otype est -S 0.005 63 | -shift 0.01 64 | 65 | Delta and acc coefficients can be calculated even if their base form is not 66 | required. This produces normal energy coefficients and cepstral delta coefficients: 67 | 68 | $ sig2fv ../kdt_010.wav -o kdt_010.lpc -coefs "energy" -delta "cep" -otype est 69 | 70 | Mel-scaled cepstra, Delta and acc coefficients, as is common in speech 71 | recognition: 72 | 73 | $ sig2fv ../kdt_010.wav -o kdt_010.lpc -coefs "melcep" -delta "melcep" -acc "melcep" -otype est -preemph 0.96 74 | 75 | */ 76 | -------------------------------------------------------------------------------- /doc/man/sigfilter_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page sigfilter_manual sigfilter 4 | @brief *Filters an input waveform and produces a output waveform.* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | @section options Options 12 | 13 | @OPTIONS@ 14 | 15 | */ 16 | -------------------------------------------------------------------------------- /doc/man/siod_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page siod_manual siod 4 | @brief *Scheme Interpreter* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | `siod` is a command line interface to the 12 | *Scheme In One Defun* Scheme interpreter, 13 | as modified by CSTR for use in the Edinburgh Speech Tools Library. 14 | It is essentially *festival* without the speech synthesis code. 15 | 16 | @section options Options 17 | 18 | @OPTIONS@ 19 | 20 | */ 21 | -------------------------------------------------------------------------------- /doc/man/spectgen_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page spectgen_manual spectgen 4 | @brief *Make spectrograms* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | spectgen is used to create spectrograms, which are 3d plots of 12 | amplitude against time and frequency. Spectgen takes a waveform and 13 | produces a track, where each channel represents one frequency bin. 14 | 15 | By default spectgen produces a "wide-band" spectrogram, that is one 16 | with high time resolution and low frequency resolution. "Narrow-band" 17 | spectrograms can be produced by using the -shift and -length options. 18 | 19 | Typical values for -shift and -length are: 20 | 21 | @section options Options 22 | 23 | @OPTIONS@ 24 | 25 | */ 26 | 27 | -------------------------------------------------------------------------------- /doc/man/tilt_synthesis_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page tilt_synthesis_manual tilt_synthesis 4 | @brief *Generate F0 contours from Tilt descriptions* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | `tilt_synthesis` generates a F0 contour, given a label file containing 12 | parameterised Tilt or RFC events. 13 | 14 | A detailed description of the Tilt intonation model can be found in the 15 | \ref tilt-overview section. 16 | 17 | @section options Options 18 | 19 | @OPTIONS@ 20 | 21 | @section tilt_synthesis-input Input Intonation Files 22 | 23 | The input should be a label file containing the tilt parameters for the 24 | events in feature format. An example, in xlabel format, is shown below: 25 | 26 | intonation_style tilt 27 | # 28 | 0.29 26 phrase_start ; ev.f0 115.234 ; position 0.29 ; 29 | 0.53 26 a ; int_event 1 ; ev.f0 118.171 ; position 0.53 ; tilt.amp 21.8602 ; 30 | tilt.dur 0.26 ; tilt.tilt -0.163727 ; 31 | 0.77 26 a ; int_event 1 ; ev.f0 112.694 ; position 0.77 ; tilt.amp 27.0315 ; 32 | tilt.dur 0.32 ; tilt.tilt -0.446791 ; 33 | 1.53 26 a ; int_event 1 ; ev.f0 100.83 ; position 1.53 ; tilt.amp 7.507 ; 34 | tilt.dur 0.22 ; tilt.tilt -0.296317 ; 35 | 1.79 26 phrase_end ; ev.f0 92.9785 ; position 1.79 ; 36 | 37 | tilt_synthesis can also generate F0 contours from RFC parameters: 38 | 39 | intonation_style rfc 40 | # 41 | 0.29 26 phrase_start ; ev.f0 115.234 ; position 0.29 ; 42 | 0.53 26 a ; ev.f0 118.171 ; rfc.rise_amp 8.19178 ; rfc.rise_dur 0.12 ; 43 | rfc.fall_amp -13.6684 ; rfc.fall_dur 0.14 ; position 0.53 ; 44 | 0.77 26 a ; ev.f0 112.694 ; rfc.rise_amp 6.50673 ; rfc.rise_dur 0.1 ; 45 | rfc.fall_amp -20.5248 ; rfc.fall_dur 0.22 ; position 0.77 ; 46 | 1.53 26 a ; ev.f0 100.83 ; rfc.rise_amp 1.55832 ; rfc.rise_dur 0.11 ; 47 | rfc.fall_amp -6.09238 ; rfc.fall_dur 0.11 ; position 1.53 ; 48 | 1.79 26 phrase_end ; ev.f0 92.9785 ; position 1.79 ; 49 | 50 | The feature in the header, "intonation_style tilt" or 51 | "intonation_style rfc" is needed for the tilt_synthesis program to know which 52 | type of synthesis to perform. 53 | 54 | */ 55 | -------------------------------------------------------------------------------- /doc/man/viterbi_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page viterbi_manual viterbi 4 | @brief *Combine n-gram model and likelihoods to estimate posterior probabilities* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | `viterbi` is a simple time-synchronous Viterbi decoder. It finds the 12 | most likely sequence of items drawn from a fixed vocabulary, given 13 | frame-by-frame observation probabilities for each item in that 14 | vocabulary, and a ngram grammar. Possible uses include: 15 | 16 | - Simple speech recogniser back end 17 | 18 | `viterbi` can optionally use two sets of frame-by-frame observation 19 | probabilities in a weighted-sum fashion. Also, the ngram language model 20 | is not restricted to the conventional sliding window type in which the 21 | previous n-1 items are the ngram context. Items in the ngram context 22 | at each frame may be given. In this case, the user must provide a file 23 | containing the ngram context: one (n-1) tuple per line. To include 24 | items from the partial Viterbi path so far (i.e. found at recognition 25 | time, not given) the special notation `<-N>` is used where N indicates 26 | the distance back to the item required. For example `<-1>` would 27 | indicate the item on the partial Viterbi path at the last frame. See 28 | \ref viterbi-examples. 29 | 30 | **Pruning** 31 | 32 | Three types of pruning are available to reduce the size of the search 33 | space and therefore speed up the search: 34 | 35 | - Observation pruning 36 | - Top-N pruning at each frame 37 | - Fixed width beam pruning 38 | 39 | @section options Options 40 | 41 | @OPTIONS@ 42 | 43 | @section viterbi-examples Examples 44 | 45 | Example 'given' file (items f and g are in the vocabulary), the ngram 46 | is a 4-gram. 47 | 48 | <-2> g g 49 | <-1> g f 50 | <-1> f g 51 | <-2> g g 52 | <-3> g g 53 | <-1> g f 54 | 55 | */ 56 | -------------------------------------------------------------------------------- /doc/man/wagon_test_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page wagon_test_manual wagon_test 4 | @brief *Test CART models* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | `wagon_test` is used to test CART models on feature data. 12 | 13 | A detailed description of the CART model can be found in the 14 | \ref cart-overview section. 15 | 16 | 17 | @section options Options 18 | 19 | @OPTIONS@ 20 | 21 | @section wagon_test-testing Testing trees 22 | 23 | Decision trees generated by wagon (or otherwise) can be applied 24 | to and tested against data sets using this program. This program 25 | requires a data set which is in the same format as wagon (and 26 | other programs) requires. It also needs a dataset description 27 | file naming the fields and given their type (see 28 | \ref wagon_manual for a description for the actual format. 29 | 30 | wagon_test -data feats.data -desc feats.desc -tree feats.tree 31 | 32 | This will simply uses the tree against each sample in the data 33 | file and compare the predicted value with the actual value and 34 | produce a summary of the result. For categorial predictees a 35 | percentage correct and confusion matrix is generated. For continuous 36 | values the root mean squared error (RMSE) and correlation between the 37 | predicted values and the actual values is given. 38 | 39 | By default the predictee is the first field but may also be specified 40 | on the command line. The dataset may contain features which are not 41 | used by the tree. 42 | 43 | This program can also be used to generate output values for sampled 44 | data. In this case the sample data must still contain a "value" for 45 | the predictee even if it is dummy. The option 46 | `-predict` will output the new sample vector with 47 | the predicted value in place, and the option 48 | `-predict_val` option will just output the value. 49 | 50 | This program is specifically designed for testing purposes although it 51 | can also just be used for prediction. It is probably more efficient 52 | to use the Lisp function `wagon` or underlying 53 | C++ function wagon_predict(). 54 | 55 | */ 56 | -------------------------------------------------------------------------------- /doc/man/wfst_build_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page wfst_build_manual wfst_build 4 | @brief *Build a weighted finite-state transducer* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | Builds and.or processes weighted finite state transducers (WFSTs) from 12 | various input formats. This program accepts descriptions 13 | in the following formats and converts them to WFSTs 14 | 15 | - regular expressions 16 | - regular grammars 17 | - Koskenniemi/Kay/Kaplan context restriction rules 18 | 19 | In addition various operations can be performed on two WFSTs 20 | 21 | - compose: form new WFST feeding output of first WFSTs into 22 | second WFSTs. 23 | - union: form new WFST accepting the language both WFSTs 24 | - intersect: form new WFST accepting only the language common 25 | to both WFSTs 26 | - concat: form new WFST accepting the language from the 27 | concatenation of all strings in the first WFST to all strings in the 28 | second. 29 | 30 | The newly formed WFSTs can be optionally determinized and minimzed. 31 | 32 | The option asis allows a single WFSTs to be loaded and determinized 33 | and/or minimized 34 | 35 | 36 | @section options Options 37 | 38 | @OPTIONS@ 39 | 40 | */ 41 | -------------------------------------------------------------------------------- /doc/man/wfst_run_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page wfst_run_manual wfst_run 4 | @brief *Run a weighted finite-state transducer* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | This program runs a WFST on some given data. It works in either 12 | recognize mode where both inputs and output are specified, but also 13 | in transduction mode where an input is transduced to the output. 14 | 15 | 16 | @section options Options 17 | 18 | @OPTIONS@ 19 | 20 | */ 21 | -------------------------------------------------------------------------------- /doc/man/wfst_train_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page wfst_train_manual wfst_train 4 | @brief *Train a weighted finite-state transducer* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | This takes an existing WFST and data and splits states in an entropy 12 | reduce way to produced a new WFST that better models the given data. 13 | 14 | @section options Options 15 | 16 | @OPTIONS@ 17 | 18 | */ 19 | -------------------------------------------------------------------------------- /doc/man/xml_parser_man.dox.body: -------------------------------------------------------------------------------- 1 | /** 2 | 3 | @page xml_parser_manual xml_parser 4 | @brief *An XML Parser* 5 | @tableofcontents 6 | 7 | @section synopsis Synopsis 8 | 9 | @SYNOPSIS@ 10 | 11 | `xml_parser` is a simple program giving access to 12 | the *RXP* XML parser. It parses an input 13 | file and prints the results out in a simple indented format. It's 14 | main use is as a development tool, to check that files intended for 15 | input to an XML application, for instance *festival*, parse as 16 | you expect. 17 | 18 | 19 | @section options Options 20 | 21 | @OPTIONS@ 22 | 23 | */ 24 | -------------------------------------------------------------------------------- /doc/meson.build: -------------------------------------------------------------------------------- 1 | doxy_repl = { 2 | 'VERSION': meson.project_version(), 3 | 'TOP_SRCDIR': meson.source_root(), 4 | 'TOP_BUILDDIR': meson.build_root() 5 | } 6 | 7 | # The DoxyFile that exists in the current directory is used by Makefile 8 | # The DoxyFile.in file is used by meson. 9 | doxyfile = configure_file( 10 | input: files('DoxyFile.in'), 11 | output: 'DoxyFile', 12 | configuration: doxy_repl, 13 | install: false 14 | ) 15 | 16 | doc_man_progs = [] 17 | subdir('man') 18 | doxygen = find_program('doxygen', native: true, required: false) 19 | 20 | doc_sources += 'bibliography.bib' 21 | 22 | if doxygen.found() and not meson.is_cross_build() 23 | docs = custom_target( 24 | 'docs', 25 | command: [doxygen.full_path(), doxyfile], 26 | depends: doc_man_progs, 27 | depend_files: doc_sources, 28 | install: true, 29 | install_dir: join_paths(get_option('datadir'), 'doc', 'speech-tools'), 30 | output: ['html'] 31 | ) 32 | endif 33 | -------------------------------------------------------------------------------- /grammar/meson.build: -------------------------------------------------------------------------------- 1 | subdir('ngram') 2 | if get_option('scfg') 3 | subdir('scfg') 4 | endif 5 | if get_option('wfst') 6 | subdir('wfst') 7 | endif 8 | -------------------------------------------------------------------------------- /grammar/ngram/meson.build: -------------------------------------------------------------------------------- 1 | grammar_ngram_t_lib = static_library( 2 | 'grammar_ngram_t_lib', 3 | sources: files( 4 | 'lattice_t.cc' 5 | ), 6 | cpp_args: ['-DINSTANTIATE_TEMPLATES'], 7 | include_directories : ['../../include/'] 8 | ) 9 | 10 | libestools_conv_libs += grammar_ngram_t_lib 11 | 12 | grammar_ngram_lib = static_library( 13 | 'grammar_ngram_lib', 14 | sources: files( 15 | 'EST_Ngrammar.cc', 16 | 'ngrammar_io.cc', 17 | 'ngrammar_aux.cc', 18 | 'ngrammar_utils.cc', 19 | 'EST_lattice.cc', 20 | 'EST_lattice_io.cc', 21 | 'freqsmooth.cc', 22 | 'EST_PST.cc' 23 | ), 24 | include_directories : ['../../include/'] 25 | ) 26 | 27 | libestools_conv_libs += grammar_ngram_lib 28 | 29 | 30 | -------------------------------------------------------------------------------- /grammar/scfg/meson.build: -------------------------------------------------------------------------------- 1 | grammar_scfg_t_lib = static_library( 2 | 'grammar_scfg_t_lib', 3 | sources: files( 4 | 'EST_SCFG.cc', 5 | 'EST_SCFG_inout.cc' 6 | ), 7 | cpp_args: ['-DINSTANTIATE_TEMPLATES'], 8 | include_directories : ['../../include/'] 9 | ) 10 | 11 | libestools_conv_libs += grammar_scfg_t_lib 12 | 13 | 14 | 15 | grammar_scfg_lib = static_library( 16 | 'grammar_scfg_lib', 17 | sources: files( 18 | 'EST_SCFG_Chart.cc' 19 | ), 20 | include_directories : ['../../include/'] 21 | ) 22 | 23 | libestools_conv_libs += grammar_scfg_lib 24 | 25 | 26 | -------------------------------------------------------------------------------- /grammar/wfst/meson.build: -------------------------------------------------------------------------------- 1 | grammar_wfst_t_lib = static_library( 2 | 'grammar_wfst_t_lib', 3 | sources: files( 4 | 'EST_WFST.cc', 5 | 'wfst_regex.cc', 6 | 'wfst_ops.cc', 7 | 'wfst_transduce.cc', 8 | 'kkcompile.cc', 9 | ), 10 | cpp_args: ['-DINSTANTIATE_TEMPLATES'], 11 | include_directories : ['.', '../../include/'] 12 | ) 13 | 14 | libestools_conv_libs += grammar_wfst_t_lib 15 | 16 | grammar_wfst_lib = static_library( 17 | 'grammar_wfst_lib', 18 | sources: files( 19 | 'wfst_aux.cc', 20 | 'ltscompile.cc', 21 | 'rgcompile.cc', 22 | 'tlcompile.cc', 23 | 'wfst_train.cc' 24 | ), 25 | include_directories : ['.', '../../include/'] 26 | ) 27 | 28 | libestools_conv_libs += grammar_wfst_lib 29 | 30 | 31 | -------------------------------------------------------------------------------- /include/instantiate/meson.build: -------------------------------------------------------------------------------- 1 | install_headers([ 2 | 'EST_TDequeI.h', 3 | 'EST_THashI.h', 4 | 'EST_TIteratorI.h', 5 | 'EST_TKVLI.h', 6 | 'EST_TListI.h', 7 | 'EST_TMatrixI.h', 8 | 'EST_TNamedEnumI.h', 9 | 'EST_TSimpleMatrixI.h', 10 | 'EST_TSimpleVectorI.h', 11 | 'EST_TSortableI.h', 12 | 'EST_TStringHashI.h', 13 | 'EST_TVectorI.h' 14 | ], 15 | subdir : meson.project_name() / 'include' / 'instantiate') 16 | 17 | pkg_config_h_subdirs += meson.project_name() / 'include' / 'instantiate' 18 | 19 | -------------------------------------------------------------------------------- /include/ling_class/meson.build: -------------------------------------------------------------------------------- 1 | install_headers([ 2 | 'EST_FeatureFunctionPackage.h', 3 | 'EST_item_aux.h', 4 | 'EST_item_content_aux.h', 5 | 'EST_Item_Content.h', 6 | 'EST_Item.h', 7 | 'EST_relation_aux.h', 8 | 'EST_relation_compare.h', 9 | 'EST_Relation.h', 10 | 'EST_Relation_list.h', 11 | 'EST_Relation_mls.h', 12 | 'EST_Relation_tree.h', 13 | 'EST_utterance_aux.h', 14 | 'EST_Utterance.h', 15 | 'EST_utterance_xml.h' 16 | ], 17 | subdir : meson.project_name() / 'include' / 'ling_class') 18 | 19 | pkg_config_h_subdirs += meson.project_name() / 'include' / 'ling_class' 20 | 21 | -------------------------------------------------------------------------------- /include/meson.build: -------------------------------------------------------------------------------- 1 | install_headers([ 2 | 'EST_audio.h', 3 | 'EST_bool.h', 4 | 'EST_ChannelType.h', 5 | 'EST_Chunk.h', 6 | 'EST_cluster.h', 7 | 'EST_cmd_line.h', 8 | 'EST_cmd_line_options.h', 9 | 'EST_common.h', 10 | 'EST_Complex.h', 11 | 'EST_Contents.h', 12 | 'EST_cutils.h', 13 | 'EST_DMatrix.h', 14 | 'EST_dynamic_model.h', 15 | 'EST_error.h', 16 | 'EST_Event.h', 17 | 'EST_FeatureData.h', 18 | 'EST_Featured.h', 19 | 'EST_features_aux.h', 20 | 'EST_Features.h', 21 | 'EST_FileType.h', 22 | 'EST_FMatrix.h', 23 | 'EST_FringeServer.h', 24 | 'EST_grammar.h', 25 | 'EST.h', 26 | 'EST_Handleable.h', 27 | 'EST_HMM.h', 28 | 'EST_IMatrix.h', 29 | 'EST_inline_utils.h', 30 | 'EST_io_aux.h', 31 | 'EST_iostream.h', 32 | 'EST_kalman.h', 33 | 'EST_lattice.h', 34 | 'EST_lattice_io.h', 35 | 'EST_ling_class.h', 36 | 'EST_math.h', 37 | 'EST_model_types.h', 38 | 'EST_multistats.h', 39 | 'EST_Ngrammar.h', 40 | 'EST_Option.h', 41 | 'EST_Pathname.h', 42 | 'EST_PST.h', 43 | 'EST_Regex.h', 44 | 'EST_rw_status.h', 45 | 'EST_SCFG_Chart.h', 46 | 'EST_SCFG.h', 47 | 'EST_Server.h', 48 | 'EST_ServiceTable.h', 49 | 'EST_sigpr.h', 50 | 'EST_simplestats.h', 51 | 'EST_SingleChannelWave.h', 52 | 'EST_SMatrix.h', 53 | 'EST_socket.h', 54 | 'EST_sort.h', 55 | 'EST_speech_class.h', 56 | 'EST_stats.h', 57 | 'EST_strcasecmp.h', 58 | 'EST_string_aux.h', 59 | 'EST_String.h', 60 | 'EST_StringTrie.h', 61 | 'EST_system.h', 62 | 'EST_TBox.h', 63 | 'EST_TBuffer.h', 64 | 'EST_TDeque.h', 65 | 'EST_THandle.h', 66 | 'EST_THash.h', 67 | 'EST_tilt.h', 68 | 'EST_TIterator.h', 69 | 'EST_TKVL.h', 70 | 'EST_TList.h', 71 | 'EST_TMatrix.h', 72 | 'EST_TNamedEnum.h', 73 | 'EST_Token.h', 74 | 'EST_track_aux.h', 75 | 'EST_Track.h', 76 | 'EST_TrackMap.h', 77 | 'EST_TSimpleMatrix.h', 78 | 'EST_TSimpleVector.h', 79 | 'EST_TSortable.h', 80 | 'EST_TTimeIndex.h', 81 | 'EST_TVector.h', 82 | 'EST_types.h', 83 | 'EST_UList.h', 84 | 'EST_unix.h', 85 | 'EST_util_class.h', 86 | 'EST_Val_defs.h', 87 | 'EST_Val.h', 88 | 'EST_viterbi.h', 89 | 'EST_Wagon.h', 90 | 'EST_walloc.h', 91 | 'EST_wave_aux.h', 92 | 'EST_Wave.h', 93 | 'EST_WFST.h', 94 | 'siod_defs.h', 95 | 'siod_est.h', 96 | 'siod.h' 97 | ], 98 | subdir : meson.project_name() / 'include') 99 | 100 | pkg_config_h_subdirs += meson.project_name() / 'include' 101 | 102 | subdir('instantiate') 103 | subdir('ling_class') 104 | subdir('rxp') 105 | subdir('sigpr') 106 | subdir('unix') 107 | subdir('win32') 108 | 109 | -------------------------------------------------------------------------------- /include/rxp/ctype16.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* */ 3 | /* Copyright (c) 1997-98 Richard Tobin, Language Technology Group, HCRC, */ 4 | /* University of Edinburgh. */ 5 | /* */ 6 | /* THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, */ 7 | /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ 8 | /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ 9 | /* IN NO EVENT SHALL THE AUTHOR OR THE UNIVERSITY OF EDINBURGH BE LIABLE */ 10 | /* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF */ 11 | /* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION */ 12 | /* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 13 | /* */ 14 | /*************************************************************************/ 15 | #ifndef CTYPE16_H 16 | #define CTYPE16_H 17 | 18 | #ifndef FOR_LT 19 | #define STD_API 20 | #endif 21 | 22 | /* XML character types */ 23 | 24 | STD_API void init_ctype16(void); 25 | STD_API int Toupper(int c); 26 | STD_API int Tolower(int c); 27 | 28 | extern STD_API unsigned char xml_char_map[]; 29 | 30 | #define xml_legal 0x01 31 | #define xml_namestart 0x02 32 | #define xml_namechar 0x04 33 | #define xml_whitespace 0x08 34 | 35 | #if CHAR_SIZE == 8 36 | 37 | /* And with 0xff so that it works if char is signed */ 38 | #define is_xml_legal(c) (xml_char_map[(int)(c) & 0xff] & xml_legal) 39 | #define is_xml_namestart(c) (xml_char_map[(int)(c) & 0xff] & xml_namestart) 40 | #define is_xml_namechar(c) (xml_char_map[(int)(c) & 0xff] & xml_namechar) 41 | #define is_xml_whitespace(c) (xml_char_map[(int)(c) & 0xff] & xml_whitespace) 42 | 43 | #else 44 | 45 | /* Note! these macros evaluate their argument more than once! */ 46 | 47 | #define is_xml_legal(c) (c < 0x110000 && (c >= 0x10000 || (xml_char_map[c] & xml_legal))) 48 | #define is_xml_namestart(c) (c < 0x10000 && (xml_char_map[c] & xml_namestart)) 49 | #define is_xml_namechar(c) (c < 0x10000 && (xml_char_map[c] & xml_namechar)) 50 | #define is_xml_whitespace(c) (c < 0x10000 && (xml_char_map[c] & xml_whitespace)) 51 | 52 | #endif 53 | 54 | #endif /* CTYPE16_H */ 55 | -------------------------------------------------------------------------------- /include/rxp/meson.build: -------------------------------------------------------------------------------- 1 | install_headers([ 2 | 'charset.h', 3 | 'ctype16.h', 4 | 'dtd.h', 5 | 'input.h', 6 | 'rxp.h', 7 | 'stdio16.h', 8 | 'string16.h', 9 | 'system.h', 10 | 'url.h', 11 | 'XML_Parser.h', 12 | 'xmlparser.h' 13 | ], 14 | subdir : meson.project_name() / 'include' / 'rxp') 15 | 16 | pkg_config_h_subdirs += meson.project_name() / 'include' / 'rxp' 17 | 18 | -------------------------------------------------------------------------------- /include/rxp/rxp.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* */ 3 | /* Copyright (c) 1997-98 Richard Tobin, Language Technology Group, HCRC, */ 4 | /* University of Edinburgh. */ 5 | /* */ 6 | /* THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, */ 7 | /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ 8 | /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ 9 | /* IN NO EVENT SHALL THE AUTHOR OR THE UNIVERSITY OF EDINBURGH BE LIABLE */ 10 | /* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF */ 11 | /* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION */ 12 | /* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 13 | /* */ 14 | /*************************************************************************/ 15 | 16 | #if defined(__cplusplus) 17 | extern "C" { 18 | #endif 19 | 20 | #include "charset.h" 21 | #include "string16.h" 22 | #include "dtd.h" 23 | #include "input.h" 24 | #include "xmlparser.h" 25 | #include "stdio16.h" 26 | 27 | #if defined(__cplusplus) 28 | } 29 | #endif 30 | -------------------------------------------------------------------------------- /include/rxp/stdio16.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* */ 3 | /* Copyright (c) 1997-98 Richard Tobin, Language Technology Group, HCRC, */ 4 | /* University of Edinburgh. */ 5 | /* */ 6 | /* THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, */ 7 | /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ 8 | /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ 9 | /* IN NO EVENT SHALL THE AUTHOR OR THE UNIVERSITY OF EDINBURGH BE LIABLE */ 10 | /* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF */ 11 | /* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION */ 12 | /* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 13 | /* */ 14 | /*************************************************************************/ 15 | #ifndef STDIO16_H 16 | #define STDIO16_H 17 | 18 | #ifndef FOR_LT 19 | #define STD_API 20 | #endif 21 | 22 | #include 23 | #include 24 | #ifdef HAVE_LIBZ 25 | #include "zlib.h" 26 | #endif 27 | #include "charset.h" 28 | 29 | typedef struct _FILE16 FILE16; 30 | 31 | extern STD_API FILE16 *Stdin, *Stdout, *Stderr; 32 | 33 | STD_API FILE16 *MakeFILE16FromFILE(FILE *f, const char *type); 34 | STD_API FILE16 *MakeFILE16FromString(void *buf, long size, const char *type); 35 | #ifdef WIN32 36 | #ifdef SOCKETS_IMPLEMENTED 37 | STD_API FILE16 *MakeFILE16FromWinsock(int sock, const char *type); 38 | #endif 39 | #endif 40 | #ifdef HAVE_LIBZ 41 | STD_API FILE16 *MakeFILE16FromGzip(gzFile file, const char *type); 42 | #endif 43 | 44 | STD_API int Readu(FILE16 *file, unsigned char *buf, int max_count); 45 | STD_API int Writeu(FILE16 *file, unsigned char *buf, int count); 46 | STD_API int Fclose(FILE16 *file); 47 | STD_API int Fflush(FILE16 *file); 48 | STD_API int Fseek(FILE16 *file, long offset, int ptrname); 49 | 50 | STD_API FILE *GetFILE(FILE16 *file); 51 | STD_API void SetCloseUnderlying(FILE16 *file, int cu); 52 | STD_API void SetFileEncoding(FILE16 *file, CharacterEncoding encoding); 53 | STD_API CharacterEncoding GetFileEncoding(FILE16 *file); 54 | 55 | STD_API int Fprintf(FILE16 *file, const char *format, ...); 56 | STD_API int Vfprintf(FILE16 *file, const char *format, va_list args); 57 | 58 | STD_API int Printf(const char *format, ...); 59 | STD_API int Vprintf(const char *format, va_list args); 60 | 61 | STD_API int Sprintf(void *buf, CharacterEncoding enc, const char *format, ...); 62 | STD_API int Vsprintf(void *buf, CharacterEncoding enc, const char *format, 63 | va_list args); 64 | 65 | STD_API void init_stdio16(void); 66 | 67 | #endif /* STDIO16_H */ 68 | -------------------------------------------------------------------------------- /include/rxp/system.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* */ 3 | /* Copyright (c) 1997-98 Richard Tobin, Language Technology Group, HCRC, */ 4 | /* University of Edinburgh. */ 5 | /* */ 6 | /* THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, */ 7 | /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ 8 | /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ 9 | /* IN NO EVENT SHALL THE AUTHOR OR THE UNIVERSITY OF EDINBURGH BE LIABLE */ 10 | /* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF */ 11 | /* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION */ 12 | /* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 13 | /* */ 14 | /*************************************************************************/ 15 | void *Malloc(int bytes); 16 | void *Realloc(void *mem, int bytes); 17 | void Free(void *mem); 18 | 19 | #ifndef SEEK_SET 20 | #define SEEK_SET 0 21 | #endif 22 | 23 | #ifndef SEEK_CUR 24 | #define SEEK_CUR 1 25 | #endif 26 | 27 | #ifndef SEEK_END 28 | #define SEEK_END 2 29 | #endif 30 | 31 | #define SOCKETS_IMPLEMENTED 32 | 33 | #ifdef SYSTEM_IS_WIN32 34 | #define WIN32 1 35 | #endif 36 | 37 | -------------------------------------------------------------------------------- /include/rxp/url.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* */ 3 | /* Copyright (c) 1997-98 Richard Tobin, Language Technology Group, HCRC, */ 4 | /* University of Edinburgh. */ 5 | /* */ 6 | /* THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, */ 7 | /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ 8 | /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ 9 | /* IN NO EVENT SHALL THE AUTHOR OR THE UNIVERSITY OF EDINBURGH BE LIABLE */ 10 | /* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF */ 11 | /* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION */ 12 | /* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 13 | /* */ 14 | /*************************************************************************/ 15 | /* url.h -- Henry Thompson 16 | * 17 | * $Header: /home/CVS/speech_tools/include/rxp/url.h,v 1.2 2001/04/04 13:11:27 awb Exp $ 18 | */ 19 | 20 | #ifndef _URL_H 21 | #define _URL_H 22 | 23 | #ifndef FOR_LT 24 | #define STD_API 25 | #define EXPRT 26 | #endif 27 | 28 | #include 29 | #include "stdio16.h" 30 | #include "charset.h" 31 | 32 | extern STD_API char8 * EXPRT 33 | url_merge(const char8 *url, const char8 *base, 34 | char8 **scheme, char8 **host, int *port, char8 **path); 35 | extern STD_API FILE16 *url_open(const char8 *url, const char8 *base, 36 | const char8 *type, char8 **merged_url); 37 | extern STD_API char8 *EXPRT default_base_url(void); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /include/sigpr/meson.build: -------------------------------------------------------------------------------- 1 | install_headers([ 2 | 'EST_fft.h', 3 | 'EST_filter_design.h', 4 | 'EST_filter.h', 5 | 'EST_misc_sigpr.h', 6 | 'EST_pitchmark.h', 7 | 'EST_sigpr_frame.h', 8 | 'EST_sigpr_utt.h', 9 | 'EST_spectrogram.h', 10 | 'EST_Window.h' 11 | ], 12 | subdir : meson.project_name() / 'include' / 'sigpr') 13 | 14 | pkg_config_h_subdirs += meson.project_name() / 'include' / 'sigpr' 15 | 16 | -------------------------------------------------------------------------------- /include/unix/meson.build: -------------------------------------------------------------------------------- 1 | install_headers([ 2 | 'EST_defines_unix.h', 3 | 'EST_socket_unix.h' 4 | ], 5 | subdir : meson.project_name() / 'include' / 'unix' 6 | ) 7 | 8 | pkg_config_h_subdirs += meson.project_name() / 'include' / 'unix' 9 | 10 | -------------------------------------------------------------------------------- /include/win32/meson.build: -------------------------------------------------------------------------------- 1 | install_headers([ 2 | 'EST_defines_win32.h', 3 | 'EST_iostream_win32.h', 4 | 'EST_socket_win32.h', 5 | 'EST_unix_win32.h' 6 | ], 7 | subdir : meson.project_name() / 'include' / 'win32') 8 | 9 | pkg_config_h_subdirs += meson.project_name() / 'include' / 'win32' 10 | 11 | -------------------------------------------------------------------------------- /intonation/meson.build: -------------------------------------------------------------------------------- 1 | subdir('tilt') 2 | -------------------------------------------------------------------------------- /intonation/tilt/meson.build: -------------------------------------------------------------------------------- 1 | intonation_tilt_lib = static_library( 2 | 'intonation_tilt_lib', 3 | sources: files( 4 | 'tilt_utils.cc', 5 | 'tilt_analysis.cc', 6 | 'tilt_synthesis.cc' 7 | ), 8 | include_directories : ['.', '../../include/'] 9 | ) 10 | 11 | libestools_conv_libs += intonation_tilt_lib 12 | 13 | -------------------------------------------------------------------------------- /java/ReadMe: -------------------------------------------------------------------------------- 1 | 2 | This directory tree contains a set of Java classes which give 3 | access to the Edinburgh speech tools. 4 | 5 | At the moment these are quite limited. 6 | -------------------------------------------------------------------------------- /java/basic_version/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../.. 36 | DIRNAME=java/basic_version 37 | 38 | FILES = Makefile Makefile.version 39 | BUILD_DIRS=cstr 40 | NEED_JAVA=true 41 | 42 | ALL = .sub_directories .javalib 43 | 44 | include $(TOP)/config/common_make_rules 45 | -include Makefile.version 46 | 47 | 48 | -------------------------------------------------------------------------------- /java/basic_version/Makefile.version: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | ## Suplimental make information for this version 36 | 37 | CODE_VERSION=basic 38 | 39 | LOCAL_JAVA_CLASS_LIBRARY=$(TOP)/lib/est_$(CODE_VERSION).jar 40 | LOCAL_JAVA_CLASSPATH=$(EST_HOME)/speech_tools/lib/est_$(CODE_VERSION).jar 41 | JAVA_TOP_PACK=cstr 42 | LOCAL_JAVA_ROOT=$(TOP)/java/$(CODE_VERSION)_version_build 43 | -------------------------------------------------------------------------------- /java/basic_version/cstr/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../../.. 36 | DIRNAME=java/basic_version/cstr 37 | 38 | ALL_DIRS = est 39 | BUILD_DIRS = awt est util testPrograms 40 | NEED_JAVA = true 41 | 42 | FILES = Makefile 43 | 44 | ALL = .sub_directories 45 | 46 | -include ../../../Makefile.version 47 | include $(TOP)/config/common_make_rules 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /java/common/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../.. 36 | DIRNAME=java/common 37 | 38 | BUILD_DIRS = cstr 39 | NEED_JAVA = true 40 | 41 | FILES = Makefile 42 | 43 | ALL = .sub_directories .javalib 44 | 45 | -include Makefile.version 46 | include $(TOP)/config/common_make_rules 47 | 48 | 49 | -------------------------------------------------------------------------------- /java/common/cstr/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../../.. 36 | DIRNAME=java/common/cstr 37 | 38 | BUILD_DIRS = awt util est testPrograms 39 | NEED_JAVA = true 40 | 41 | FILES = Makefile 42 | 43 | ALL = .sub_directories 44 | 45 | -include ../Makefile.version 46 | include $(TOP)/config/common_make_rules 47 | 48 | 49 | -------------------------------------------------------------------------------- /java/common/cstr/awt/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../../../.. 36 | DIRNAME=java/common/cstr/awt 37 | 38 | JAVA_CLASSES = ScrollWindow ImageCanvas XColor ColorSelection 39 | NEED_JAVA = true 40 | 41 | FILES = Makefile $(JAVA_CLASSES:=.java) 42 | 43 | ALL = .java 44 | 45 | -include ../../Makefile.version 46 | include $(TOP)/config/common_make_rules 47 | -------------------------------------------------------------------------------- /java/common/cstr/est/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../../../.. 36 | DIRNAME=java/common/cstr/est 37 | 38 | BUILD_DIRS = awt 39 | JAVA_CLASSES = SocketsFile ServerConnection 40 | NEED_JAVA = true 41 | 42 | FILES = Makefile $(JAVA_CLASSES:=.java) 43 | 44 | ALL = .sub_directories 45 | 46 | include $(TOP)/config/common_make_rules 47 | 48 | -------------------------------------------------------------------------------- /java/common/cstr/est/awt/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../../../../.. 36 | DIRNAME = java/common/cstr/est/awt 37 | 38 | BUILD_DIRS = 39 | JAVA_CLASSES = Item_Content_Window WaveImageSource 40 | NEED_JAVA = true 41 | 42 | FILES = $(JAVA_CLASSES:%=%.java) Makefile 43 | 44 | ALL = .java .buildlib 45 | 46 | -include ../../../Makefile.version 47 | include $(TOP)/config/common_make_rules 48 | 49 | 50 | -------------------------------------------------------------------------------- /java/common/cstr/testPrograms/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../../../.. 36 | DIRNAME=java/common/cstr/testPrograms 37 | 38 | BUILD_DIRS = 39 | JAVA_CLASSES = WaveTest PlayWave 40 | NEED_JAVA=1 41 | 42 | FILES = Makefile $(JAVA_CLASSES:=.java) 43 | 44 | ALL = .java 45 | 46 | -include ../../Makefile.version 47 | include $(TOP)/config/common_make_rules 48 | -------------------------------------------------------------------------------- /java/cpp_version/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../.. 36 | DIRNAME=java/cpp_version 37 | 38 | FILES = Makefile Makefile.version 39 | BUILD_DIRS=cstr 40 | NEED_JAVA=true 41 | 42 | ALL = .sub_directories .javalib 43 | 44 | include $(TOP)/config/common_make_rules 45 | -include Makefile.version 46 | 47 | 48 | -------------------------------------------------------------------------------- /java/cpp_version/Makefile.version: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | ## Suplimental make information for this version 36 | 37 | CODE_VERSION=cpp 38 | 39 | LOCAL_JAVA_CLASS_LIBRARY=$(TOP)/lib/est_$(CODE_VERSION).jar 40 | LOCAL_JAVA_CLASSPATH=$(EST_HOME)/speech_tools/lib/est_$(CODE_VERSION).jar 41 | JAVA_TOP_PACK=cstr 42 | LOCAL_JAVA_ROOT=$(TOP)/java/$(CODE_VERSION)_version_build 43 | -------------------------------------------------------------------------------- /java/cpp_version/cstr/Makefile: -------------------------------------------------------------------------------- 1 | 2 | 3 | ########################################################################### 4 | ## ## 5 | ## Centre for Speech Technology Research ## 6 | ## University of Edinburgh, UK ## 7 | ## Copyright (c) 1996 ## 8 | ## All Rights Reserved. ## 9 | ## ## 10 | ## Permission is hereby granted, free of charge, to use and distribute ## 11 | ## this software and its documentation without restriction, including ## 12 | ## without limitation the rights to use, copy, modify, merge, publish, ## 13 | ## distribute, sublicense, and/or sell copies of this work, and to ## 14 | ## permit persons to whom this work is furnished to do so, subject to ## 15 | ## the following conditions: ## 16 | ## 1. The code must retain the above copyright notice, this list of ## 17 | ## conditions and the following disclaimer. ## 18 | ## 2. Any modifications must be clearly marked as such. ## 19 | ## 3. Original authors' names are not deleted. ## 20 | ## 4. The authors' names are not used to endorse or promote products ## 21 | ## derived from this software without specific prior written ## 22 | ## permission. ## 23 | ## ## 24 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 25 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 26 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 27 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 28 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 29 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 30 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 31 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 32 | ## THIS SOFTWARE. ## 33 | ## ## 34 | ########################################################################### 35 | 36 | TOP=../../.. 37 | DIRNAME=java/cpp_version/cstr 38 | 39 | ALL_DIRS = est 40 | BUILD_DIRS = awt est util testPrograms 41 | NEED_JAVA = true 42 | 43 | FILES = Makefile 44 | 45 | ALL = .sub_directories 46 | 47 | -include ../../../Makefile.version 48 | include $(TOP)/config/common_make_rules 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /java/media_version/Makefile: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | TOP=../.. 36 | DIRNAME=java/media_version 37 | 38 | FILES = Makefile Makefile.version 39 | BUILD_DIRS=cstr 40 | NEED_JAVA=true 41 | 42 | ALL = .sub_directories .javalib 43 | 44 | include $(TOP)/config/common_make_rules 45 | -include Makefile.version 46 | 47 | 48 | -------------------------------------------------------------------------------- /java/media_version/Makefile.version: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | ## ## 4 | ## Centre for Speech Technology Research ## 5 | ## University of Edinburgh, UK ## 6 | ## Copyright (c) 1996 ## 7 | ## All Rights Reserved. ## 8 | ## ## 9 | ## Permission is hereby granted, free of charge, to use and distribute ## 10 | ## this software and its documentation without restriction, including ## 11 | ## without limitation the rights to use, copy, modify, merge, publish, ## 12 | ## distribute, sublicense, and/or sell copies of this work, and to ## 13 | ## permit persons to whom this work is furnished to do so, subject to ## 14 | ## the following conditions: ## 15 | ## 1. The code must retain the above copyright notice, this list of ## 16 | ## conditions and the following disclaimer. ## 17 | ## 2. Any modifications must be clearly marked as such. ## 18 | ## 3. Original authors' names are not deleted. ## 19 | ## 4. The authors' names are not used to endorse or promote products ## 20 | ## derived from this software without specific prior written ## 21 | ## permission. ## 22 | ## ## 23 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 24 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 25 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 26 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 27 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 28 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 29 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 30 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 31 | ## THIS SOFTWARE. ## 32 | ## ## 33 | ########################################################################### 34 | 35 | ## Suplimental make information for this version 36 | 37 | CODE_VERSION=media 38 | 39 | LOCAL_JAVA_CLASS_LIBRARY=$(TOP)/lib/est_$(CODE_VERSION).jar 40 | LOCAL_JAVA_CLASSPATH=$(EST_HOME)/speech_tools/lib/est_$(CODE_VERSION).jar 41 | JAVA_TOP_PACK=cstr 42 | LOCAL_JAVA_ROOT=$(TOP)/java/$(CODE_VERSION)_version_build 43 | -------------------------------------------------------------------------------- /java/media_version/cstr/Makefile: -------------------------------------------------------------------------------- 1 | 2 | 3 | ########################################################################### 4 | ## ## 5 | ## Centre for Speech Technology Research ## 6 | ## University of Edinburgh, UK ## 7 | ## Copyright (c) 1996 ## 8 | ## All Rights Reserved. ## 9 | ## ## 10 | ## Permission is hereby granted, free of charge, to use and distribute ## 11 | ## this software and its documentation without restriction, including ## 12 | ## without limitation the rights to use, copy, modify, merge, publish, ## 13 | ## distribute, sublicense, and/or sell copies of this work, and to ## 14 | ## permit persons to whom this work is furnished to do so, subject to ## 15 | ## the following conditions: ## 16 | ## 1. The code must retain the above copyright notice, this list of ## 17 | ## conditions and the following disclaimer. ## 18 | ## 2. Any modifications must be clearly marked as such. ## 19 | ## 3. Original authors' names are not deleted. ## 20 | ## 4. The authors' names are not used to endorse or promote products ## 21 | ## derived from this software without specific prior written ## 22 | ## permission. ## 23 | ## ## 24 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 25 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 26 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 27 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 28 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 29 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 30 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 31 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 32 | ## THIS SOFTWARE. ## 33 | ## ## 34 | ########################################################################### 35 | 36 | TOP=../../.. 37 | DIRNAME=java/media_version/cstr 38 | 39 | ALL_DIRS = est 40 | BUILD_DIRS = awt est util testPrograms 41 | NEED_JAVA = true 42 | 43 | FILES = Makefile 44 | 45 | ALL = .sub_directories 46 | 47 | -include ../../../Makefile.version 48 | include $(TOP)/config/common_make_rules 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /lib/VCLocalRules: -------------------------------------------------------------------------------- 1 | est_program_makefile: 2 | @echo no template makefile built for VC++ 3 | 4 | est_mainline: 5 | @echo no template main built for VC++ -------------------------------------------------------------------------------- /lib/cstrutt.dtd: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 9 | 10 | 11 | 15 | 16 | 21 | 22 | 23 | 25 | 26 | 32 | 33 | 36 | 37 | 43 | 44 | 50 | -------------------------------------------------------------------------------- /lib/est_mainline-in: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | 4 | #include "EST.h" 5 | #include "EST_types.h" 6 | #include "EST_error.h" 7 | 8 | int main(int argc, char *argv[]) 9 | { 10 | EST_StrList files; 11 | EST_Option cmd_line; 12 | 13 | parse_command_line 14 | (argc, argv, 15 | EST_String("[OPTIONS] [files...]\n")+ 16 | "Summary; <>\n"+ 17 | "-o Output file\n", 18 | files, cmd_line); 19 | 20 | EST_String out_file; 21 | 22 | if (cmd_line.present("-o")) 23 | out_file = cmd_line.val("-o"); 24 | else 25 | EST_error("No output file specified"); 26 | 27 | EST_StrList::Entries fs; 28 | 29 | for(fs.begin(files); fs; ++fs) 30 | { 31 | EST_String file = *fs; 32 | 33 | // Process file 34 | } 35 | 36 | return 0; 37 | } 38 | -------------------------------------------------------------------------------- /lib/est_program_makefile-in: -------------------------------------------------------------------------------- 1 | 2 | ########################################################################### 3 | # # 4 | # Makefile for use with __PROJECT__ 5 | # # 6 | ########################################################################### 7 | 8 | EST_HOME=__EST__ 9 | 10 | EXECS = 11 | 12 | all: $(EXECS) 13 | 14 | ## PROGRAMS 15 | 16 | ## RULES 17 | 18 | $(EXECS) : % : %.o $(%_OBJ) 19 | __LINK_COMMAND__ -o $* $($*_OBJ) $($*_LIBS) __LIBS__ 20 | 21 | %.o: %.cc 22 | __CXX_COMMAND__ $($*_INCLUDES) $($*_DEFINES) $*.cc 23 | 24 | %.o: %.c 25 | __CC_COMMAND__ $($*_INCLUDES) $($*_DEFINES) $*.c 26 | -------------------------------------------------------------------------------- /lib/example_data/ch_track.htk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/lib/example_data/ch_track.htk -------------------------------------------------------------------------------- /lib/example_data/ch_wave.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/lib/example_data/ch_wave.wav -------------------------------------------------------------------------------- /lib/example_data/channel_names.map: -------------------------------------------------------------------------------- 1 | quote=" 2 | unknown=0 3 | number=2 4 | "Power" E 5 | "Coefficient0" c1 6 | -------------------------------------------------------------------------------- /lib/example_data/colours.map: -------------------------------------------------------------------------------- 1 | quote=" 2 | unknown=666 3 | number=2 4 | =2 "loaded blue" blue "sky blue" 5 | =1 "loaded red" red "postbox" 6 | -------------------------------------------------------------------------------- /lib/example_data/colours_translation.map: -------------------------------------------------------------------------------- 1 | quote=" 2 | unknown=666 3 | number=2 4 | "blue" "loaded azul" piscina 5 | "red" "loaded rojo" sangre 6 | -------------------------------------------------------------------------------- /lib/example_data/eg.dtd: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /lib/example_data/eg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | This 5 | is 6 | an example of an XML file 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /lib/example_data/kdt_001.il: -------------------------------------------------------------------------------- 1 | separator ; 2 | nfields 2 3 | # 4 | 0.403097 146 sil 5 | 0.870842 146 c 6 | 1.068588 146 a 7 | 1.266334 146 c 8 | 1.414644 146 afb 9 | 1.604784 146 c 10 | 1.764502 146 a 11 | 1.950839 146 c 12 | 2.125768 146 a 13 | 2.536471 146 c 14 | 3.014076 146 afb 15 | 3.118300 146 sil 16 | -------------------------------------------------------------------------------- /lib/example_data/kdt_001.tilt: -------------------------------------------------------------------------------- 1 | separator ; 2 | filename ../lib/example_data/kdt_001.il 3 | separator ; 4 | nfields 2 5 | name intevents 6 | timing_style event 7 | intonation_style tilt 8 | # 9 | 0.40310 26 phrase_start ; ev.f0 120.335 ; time 0.403097 ; 10 | 1.00000 26 a ; int_event 1 ; ev.f0 126.04 ; time 0.999999 ; tilt.amp 21.3901 ; tilt.dur 0.29 ; tilt.tilt 0.483891 ; 11 | 1.26000 26 afb ; int_event 1 ; ev.f0 120.447 ; time 1.26 ; tilt.amp 11.9286 ; tilt.dur 0.24 ; tilt.tilt -1 ; 12 | 1.72000 26 a ; int_event 1 ; ev.f0 125.077 ; time 1.72 ; tilt.amp 18.0792 ; tilt.dur 0.26 ; tilt.tilt 0.567867 ; 13 | 2.04000 26 a ; int_event 1 ; ev.f0 128.473 ; time 2.04 ; tilt.amp 19.3316 ; tilt.dur 0.27 ; tilt.tilt -0.21705 ; 14 | 2.76000 26 afb ; int_event 1 ; ev.f0 115.2 ; time 2.76 ; tilt.amp 40.8284 ; tilt.dur 0.45 ; tilt.tilt 0.026982 ; 15 | 3.01408 26 phrase_end ; ev.f0 89.1348 ; time 3.01408 ; 16 | -------------------------------------------------------------------------------- /lib/example_data/kdt_001.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/lib/example_data/kdt_001.wav -------------------------------------------------------------------------------- /lib/example_data/key.lab: -------------------------------------------------------------------------------- 1 | signal ch_wave 2 | type 0 3 | comment created using xlabel Mon Feb 22 07:45:44 1999 4 | separator ; 5 | nfields 1 6 | # 7 | 0.173428 -1 x; file sil1 ; 8 | 0.245849 -1 x; file w1 ; 9 | 0.560307 -1 x; file w2 ; 10 | 1.172071 -1 x; file w3 ; 11 | 1.680922 -1 x; file w4 ; 12 | 2.010820 -1 x; file sil2 ; 13 | -------------------------------------------------------------------------------- /lib/example_data/options.file: -------------------------------------------------------------------------------- 1 | Country Scotland 2 | Street South Bridge 3 | Number 80 4 | Height 23.45 5 | -------------------------------------------------------------------------------- /lib/example_data/vit.B.ngram: -------------------------------------------------------------------------------- 1 | Ngram_2 5 2 | B NB 3 | B NB 4 | B B B B B : 0.25 5 | B B B B NB : 0.25 6 | B B B NB B : 4 7 | B B B NB NB : 3 8 | B B NB B B : 0.25 9 | B B NB B NB : 12 10 | B B NB NB B : 39 11 | B B NB NB NB : 106 12 | B NB B B B : 2 13 | B NB B B NB : 13 14 | B NB B NB B : 121 15 | B NB B NB NB : 593 16 | B NB NB B B : 35 17 | B NB NB B NB : 1059 18 | B NB NB NB B : 1217 19 | B NB NB NB NB : 3143 20 | NB B B B B : 0.25 21 | NB B B B NB : 4 22 | NB B B NB B : 11 23 | NB B B NB NB : 142 24 | NB B NB B B : 15 25 | NB B NB B NB : 702 26 | NB B NB NB B : 1055 27 | NB B NB NB NB : 4254 28 | NB NB B B B : 2 29 | NB NB B B NB : 140 30 | NB NB B NB B : 596 31 | NB NB B NB NB : 4715 32 | NB NB NB B B : 107 33 | NB NB NB B NB : 4252 34 | NB NB NB NB B : 3143 35 | NB NB NB NB NB : 5843 36 | -------------------------------------------------------------------------------- /lib/example_data/vit.observes: -------------------------------------------------------------------------------- 1 | 0.1 0.9 2 | 0.1 0.9 3 | 0.1 0.9 4 | 0.1 0.9 5 | 0.8 0.2 6 | 0.8 0.2 7 | 0.1 0.9 8 | 0.1 0.9 9 | 0.1 0.9 10 | 0.1 0.9 11 | -------------------------------------------------------------------------------- /lib/example_data/vit.vocab: -------------------------------------------------------------------------------- 1 | B 2 | NB 3 | -------------------------------------------------------------------------------- /lib/example_data/wagon.desc: -------------------------------------------------------------------------------- 1 | ( 2 | ( duration float ) 3 | ( name ignore ) 4 | ( n.ph_vc 0 + - ) 5 | ( n.ph_ctype s f a n l r 0) 6 | ( n.ph_vlng s l d a 0 ) 7 | ( n.ph_vheight 1 2 3 0 ) 8 | ( p.ph_vc 0 + - ) 9 | ( p.ph_ctype s f a n l r 0) 10 | ( p.ph_vlng s l d a 0 ) 11 | ( p.ph_vheight 1 2 3 0 ) 12 | ( Syllable.position_type 0 final initial mid single ) 13 | ( pos_in_syl 0 1 2 3 4 5 6 7 ) 14 | ( syl_initial 0 1) 15 | ( syl_final 0 1) 16 | ( Syllable.p.syl_break 0 1 3 ) 17 | ( Syllable.syl_break 0 1 3 4 ) 18 | ( Syllable.n.syl_break 0 1 3 4 ) 19 | ( Syllable.p.stress 0 1 ) 20 | ( Syllable.stress 0 1 ) 21 | ( Syllable.n.stress 0 1 ) 22 | ) 23 | -------------------------------------------------------------------------------- /lib/example_data/wagon.tree: -------------------------------------------------------------------------------- 1 | 2 | ((Syllable.syl_break is 4) 3 | ((n.ph_ctype is f) 4 | ((0.0542117 0.233714)) 5 | ((0.0456028 0.208429))) 6 | ((Syllable.position_type is single) 7 | ((p.ph_ctype is s) 8 | ((Syllable.n.syl_break is 0) 9 | ((0.0463573 0.187)) 10 | ((0.0381861 0.2158))) 11 | ((Syllable.n.syl_break is 1) 12 | ((n.ph_ctype is f) 13 | ((0.0571677 0.163857)) 14 | ((0.0358363 0.177286))) 15 | ((0.0186414 0.168)))) 16 | ((p.ph_ctype is f) 17 | ((Syllable.n.syl_break is 1) 18 | ((0.0529528 0.2)) 19 | ((0.0230754 0.159857))) 20 | ((n.ph_ctype is f) 21 | ((p.ph_vc is +) 22 | ((0.0283437 0.117833)) 23 | ((0.0338439 0.138375))) 24 | ((Syllable.n.stress is 0) 25 | ((Syllable.p.syl_break is 0) 26 | ((0.0244024 0.149857)) 27 | ((Syllable.p.stress is 0) 28 | ((p.ph_ctype is s) 29 | ((0.0329773 0.163)) 30 | ((0.0135204 0.1636))) 31 | ((0.0280204 0.188857)))) 32 | ((0.0302511 0.127375))))))) 33 | ;; RMSE 0.0346 Correlation is 0.6825 Mean (abs) Error 0.0272 (0.0214) 34 | -------------------------------------------------------------------------------- /lib/meson.build: -------------------------------------------------------------------------------- 1 | subdir('siod') 2 | -------------------------------------------------------------------------------- /lib/siod/meson.build: -------------------------------------------------------------------------------- 1 | 2 | lib_siod = files( 3 | 'siod.scm', 4 | 'init.scm', 5 | 'web.scm', 6 | 'cstr.scm', 7 | 'fringe.scm', 8 | 'siod_server.scm', 9 | 'siod_client.scm' 10 | ) 11 | 12 | install_data( 13 | lib_siod, 14 | install_dir: SIOD_SUBDIR 15 | ) 16 | -------------------------------------------------------------------------------- /lib/siod/siod_server.scm: -------------------------------------------------------------------------------- 1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 2 | ;;; ;; 3 | ;;; Centre for Speech Technology Research ;; 4 | ;;; University of Edinburgh, UK ;; 5 | ;;; Copyright (c) 1996,1997 ;; 6 | ;;; All Rights Reserved. ;; 7 | ;;; ;; 8 | ;;; Permission is hereby granted, free of charge, to use and distribute ;; 9 | ;;; this software and its documentation without restriction, including ;; 10 | ;;; without limitation the rights to use, copy, modify, merge, publish, ;; 11 | ;;; distribute, sublicense, and/or sell copies of this work, and to ;; 12 | ;;; permit persons to whom this work is furnished to do so, subject to ;; 13 | ;;; the following conditions: ;; 14 | ;;; 1. The code must retain the above copyright notice, this list of ;; 15 | ;;; conditions and the following disclaimer. ;; 16 | ;;; 2. Any modifications must be clearly marked as such. ;; 17 | ;;; 3. Original authors' names are not deleted. ;; 18 | ;;; 4. The authors' names are not used to endorse or promote products ;; 19 | ;;; derived from this software without specific prior written ;; 20 | ;;; permission. ;; 21 | ;;; ;; 22 | ;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; 23 | ;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; 24 | ;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; 25 | ;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; 26 | ;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; 27 | ;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; 28 | ;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; 29 | ;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; 30 | ;;; THIS SOFTWARE. ;; 31 | ;;; ;; 32 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 33 | ;;; 34 | ;;; Load this to turn this process into a siod network server. 35 | 36 | (defvar siod_verbose t 37 | "siod_verbose 38 | If this is set true, all subsequent siod connections will 39 | print a trace of what they are doing.") 40 | 41 | (set! siod-server (siod_service_loop)) 42 | 43 | (siod_server_run siod-server) 44 | -------------------------------------------------------------------------------- /ling_class/meson.build: -------------------------------------------------------------------------------- 1 | ling_class_t_lib = static_library( 2 | 'ling_class_t_lib', 3 | sources: files( 4 | 'apml.cc', 5 | 'EST_FeatureFunctionContext.cc', 6 | 'EST_FeatureFunctionPackage.cc', 7 | 'EST_utterance_aux.cc', 8 | 'EST_Utterance.cc', 9 | 'EST_UtteranceFile.cc', 10 | 'genxml.cc', 11 | 'item_feats.cc', 12 | 'ling_class_init.cc', 13 | 'ling_t.cc', 14 | 'solexml.cc' 15 | ), 16 | include_directories : ['.', '../include/'], 17 | cpp_args : ['-DINCLUDE_XML_FORMATS', '-DINSTANTIATE_TEMPLATES'] 18 | ) 19 | libestbase_conv_libs += ling_class_t_lib 20 | 21 | 22 | 23 | ling_class_lib = static_library( 24 | 'ling_class_lib', 25 | sources: files( 26 | 'EST_item_aux.cc', 27 | 'EST_Item.cc', 28 | 'EST_item_content_aux.cc', 29 | 'EST_Item_Content.cc', 30 | 'EST_relation_aux.cc', 31 | 'EST_Relation.cc', 32 | 'EST_relation_compare.cc', 33 | 'EST_Relation_mls.cc', 34 | 'EST_relation_track.cc', 35 | 'item_aux.cc', 36 | 'relation_io.cc', 37 | 'standard_feature_functions.cc', 38 | ), 39 | include_directories : ['.', '../include/'], 40 | cpp_args : ['-DINCLUDE_XML_FORMATS'] 41 | ) 42 | libestbase_conv_libs += ling_class_lib 43 | 44 | -------------------------------------------------------------------------------- /main/meson.build: -------------------------------------------------------------------------------- 1 | executables = [ 2 | 'align', # not installed in debian 3 | 'bcat', 4 | 'ch_lab', 5 | 'ch_track', 6 | 'ch_utt', 7 | 'ch_wave', 8 | 'design_filter', # not installed in debian 9 | 'dp', 10 | 'na_play', 11 | 'na_record', 12 | 'ngram_build', 13 | 'ngram_test', 14 | 'pda', 15 | 'pitchmark', 16 | 'sig2fv', 17 | 'sigfilter', 18 | 'spectgen', 19 | 'tilt_analysis', 20 | 'tilt_synthesis', 21 | 'viterbi', 22 | ] 23 | 24 | if get_option('scfg') 25 | executables += [ 26 | 'scfg_make', 27 | 'scfg_train', 28 | 'scfg_test', 29 | 'scfg_parse', 30 | ] 31 | endif 32 | 33 | if get_option('wfst') 34 | executables += [ 35 | 'wfst_build', 36 | 'wfst_run', 37 | 'wfst_train' # not installed in debian 38 | ] 39 | endif 40 | 41 | if get_option('ols') 42 | executables += [ 43 | 'ols', 44 | 'ols_test' 45 | ] 46 | endif 47 | 48 | #if get_option('kalman_filter') 49 | # executables += [ 50 | # 'fit_linear_model', 51 | # 'match_linear_models', 52 | # ] 53 | #endif 54 | 55 | if get_option('wagon') 56 | executables += [ 57 | 'wagon', 58 | 'wagon_test', 59 | ] 60 | endif 61 | 62 | if get_option('rxp') 63 | executables += 'xml_parser' # not installed in debian 64 | endif 65 | 66 | if get_option('siod') 67 | executables += 'siod' # not installed in debian 68 | endif 69 | 70 | openmp = dependency('openmp', required: false) 71 | if openmp.found() 72 | main_wagon_deps = [openmp] 73 | main_wagon_cpp_args = '-DOMP_WAGON' 74 | else 75 | main_wagon_deps = [] 76 | main_wagon_cpp_args = [] 77 | 78 | endif 79 | 80 | main_na_record_deps = [] 81 | main_na_record_cpp_args = [] 82 | 83 | # winmm audio 84 | if (host_machine.system() == 'windows' or host_machine.system() == 'cygwin') 85 | # Here I could try to possibly use find_library()... 86 | winmm_dep = cxx.find_library('winmm') 87 | main_na_record_deps += winmm_dep 88 | endif 89 | 90 | if host_machine.system() == 'windows' 91 | winsock2_dep = cxx.find_library('wsock32') 92 | main_na_record_deps += winsock2_dep 93 | endif 94 | 95 | 96 | EXECUTABLES = {} 97 | foreach prog : executables 98 | if prog == 'wagon' 99 | main_exec_deps = main_wagon_deps 100 | main_exec_cpp_args = main_wagon_cpp_args 101 | elif prog == 'na_record' 102 | main_exec_deps = main_na_record_deps 103 | main_exec_cpp_args = main_na_record_cpp_args 104 | else 105 | main_exec_deps = [] 106 | main_exec_cpp_args = [] 107 | endif 108 | exe = executable( 109 | prog, 110 | sources: prog + '_main.cc', 111 | include_directories: ['../include'], 112 | cpp_args: main_exec_cpp_args, 113 | dependencies: main_exec_deps, 114 | link_with: [estools, estbase, eststring], 115 | install: true 116 | ) 117 | EXECUTABLES += {prog: exe} 118 | endforeach 119 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /meson_options.txt: -------------------------------------------------------------------------------- 1 | # Audio modules: 2 | option('audio_nas', type : 'feature', value : 'auto') 3 | option('audio_esd', type : 'feature', value : 'auto') 4 | option('audio_mplayer', type: 'feature', value: 'disabled') 5 | option('audio_win32', type: 'feature', value: 'auto') 6 | option('audio_irix', type: 'feature', value: 'auto') 7 | option('audio_os2', type: 'feature', value: 'disabled') # not implemented in meson 8 | option('audio_osx', type: 'feature', value: 'auto') 9 | option('audio_pulseaudio', type: 'feature', value: 'disabled') 10 | option('audio_alsa', type: 'feature', value: 'auto') 11 | 12 | option('editline', type: 'feature', value: 'auto') 13 | option('siod_python', type: 'feature', value: 'auto') 14 | 15 | # speech_tools components: 16 | option('scfg', type: 'boolean', value: true) 17 | option('wfst', type: 'boolean', value: true) 18 | option('ols', type: 'boolean', value: true) 19 | option('kalman_filter', type: 'boolean', value: true) 20 | option('wagon', type: 'boolean', value: true) 21 | option('siod', type: 'boolean', value: true) 22 | option('rxp', type: 'boolean', value: true) 23 | 24 | -------------------------------------------------------------------------------- /mkinstalldirs: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # mkinstalldirs --- make directory hierarchy 3 | # Author: Noah Friedman 4 | # Created: 1993-05-16 5 | # Public domain 6 | 7 | # $Id: mkinstalldirs,v 1.1 2001/04/04 13:11:27 awb Exp $ 8 | 9 | errstatus=0 10 | 11 | for file 12 | do 13 | set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` 14 | shift 15 | 16 | pathcomp= 17 | for d 18 | do 19 | pathcomp="$pathcomp$d" 20 | case "$pathcomp" in 21 | -* ) pathcomp=./$pathcomp ;; 22 | esac 23 | 24 | if test ! -d "$pathcomp"; then 25 | echo "mkdir $pathcomp" 26 | 27 | mkdir "$pathcomp" || lasterr=$? 28 | 29 | if test ! -d "$pathcomp"; then 30 | errstatus=$lasterr 31 | fi 32 | fi 33 | 34 | pathcomp="$pathcomp/" 35 | done 36 | done 37 | 38 | exit $errstatus 39 | 40 | # mkinstalldirs ends here 41 | -------------------------------------------------------------------------------- /rxp/Makefile: -------------------------------------------------------------------------------- 1 | ########################################################################### 2 | ## ## 3 | ## Copyright (c) 1997-98 Richard Tobin, Language Technology Group, HCRC, ## 4 | ## University of Edinburgh. ## 5 | ## ## 6 | ## THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, ## 7 | ## EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ## 8 | ## MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT ## 9 | ## IN NO EVENT SHALL THE AUTHOR OR THE UNIVERSITY OF EDINBURGH BE LIABLE ## 10 | ## FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF ## 11 | ## CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ## 12 | ## WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## 13 | ## ## 14 | ########################################################################### 15 | ## ## 16 | ## This directory contains an XML parser and trivial interface for its ## 17 | ## use in Speech Tools, Festival and Fringe. ## 18 | ## ## 19 | ## ## 20 | ## This parser does not fall under Speech Tools licencing but is also ## 21 | ## free to be used for any purpose without fee. Note that other ## 22 | ## versions of RXP (with differing functionality) are available from ## 23 | ## LTG, HCRC under different licences including the GPL. ## 24 | ## ## 25 | ########################################################################### 26 | 27 | TOP=.. 28 | DIRNAME=rxp 29 | 30 | H = 31 | SRCSC = charset.c dtd.c string16.c url.c \ 32 | ctype16.c input.c stdio16.c system.c xmlparser.c 33 | 34 | TSRCS = XML_Parser.cc 35 | 36 | SRCS = $(SRCSC) $(TSRCS) 37 | 38 | OBJS = $(SRCSC:.c=.o) $(TSRCS:.cc=.o) 39 | 40 | FILES = Makefile $(SRCS) $(H) rxp.c rxp.mak 41 | 42 | LOCAL_INCLUDES = -I$(EST)/include/rxp 43 | 44 | LOCAL_DEFINES = -DCHAR_SIZE=8 45 | 46 | LOCAL_DEFAULT_LIBRARY = estbase 47 | 48 | VC_LOCAL_DEFINES= /DCHAR_SIZE=8 49 | 50 | ALL = .buildlib 51 | 52 | include $(TOP)/config/common_make_rules 53 | 54 | 55 | -------------------------------------------------------------------------------- /rxp/meson.build: -------------------------------------------------------------------------------- 1 | rxp_t_lib = static_library( 2 | 'rxp_t_lib', 3 | sources: files( 4 | 'XML_Parser.cc' 5 | ), 6 | include_directories : ['../include/rxp', '../include/'], 7 | cpp_args : ['-DCHAR_SIZE=8', '-DINSTANTIATE_TEMPLATES'] 8 | ) 9 | libestbase_conv_libs += rxp_t_lib 10 | 11 | 12 | 13 | rxp_lib = static_library( 14 | 'rxp_lib', 15 | sources: files( 16 | 'charset.c', 17 | 'dtd.c', 18 | 'string16.c', 19 | 'url.c', 20 | 'ctype16.c', 21 | 'input.c', 22 | 'stdio16.c', 23 | 'system.c', 24 | 'xmlparser.c' 25 | ), 26 | include_directories : ['../include/rxp', '../include/'], 27 | c_args : ['-DCHAR_SIZE=8'], 28 | ) 29 | libestbase_conv_libs += rxp_lib 30 | 31 | 32 | -------------------------------------------------------------------------------- /rxp/stdio16.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/rxp/stdio16.c -------------------------------------------------------------------------------- /rxp/system.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* */ 3 | /* Copyright (c) 1997-98 Richard Tobin, Language Technology Group, HCRC, */ 4 | /* University of Edinburgh. */ 5 | /* */ 6 | /* THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, */ 7 | /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ 8 | /* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ 9 | /* IN NO EVENT SHALL THE AUTHOR OR THE UNIVERSITY OF EDINBURGH BE LIABLE */ 10 | /* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF */ 11 | /* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION */ 12 | /* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 13 | /* */ 14 | /*************************************************************************/ 15 | #include 16 | #include "stdio16.h" 17 | #include "system.h" 18 | 19 | void *Malloc(int bytes) 20 | { 21 | void *mem = malloc(bytes); 22 | if(!mem) 23 | Fprintf(Stderr, "malloc failed\n"); 24 | return mem; 25 | } 26 | 27 | void *Realloc(void *mem, int bytes) 28 | { 29 | mem = mem ? realloc(mem, bytes) : malloc(bytes); 30 | if(!mem) 31 | Fprintf(Stderr, "realloc failed\n"); 32 | return mem; 33 | } 34 | 35 | void Free(void *mem) 36 | { 37 | if (mem != 0) free(mem); 38 | } 39 | 40 | -------------------------------------------------------------------------------- /scripts/meson.build: -------------------------------------------------------------------------------- 1 | 2 | sed = find_program('sed', native: true) 3 | perl = find_program('perl') 4 | 5 | foreach script : ['resynth', 'make_wagon_desc'] 6 | configure_file( 7 | input : script + '.sh', 8 | output : script, 9 | copy: true, 10 | install : true, 11 | install_mode: 'rwxr-xr-x', 12 | install_dir : 'bin' 13 | ) 14 | endforeach 15 | 16 | foreach script : ['pm', 'raw_to_xgraph'] 17 | cus_target = custom_target(script, 18 | input: script + '.prl', 19 | output: script, 20 | command : [sed, '-e', 's@__PERL__@' + perl.full_path() + '@g', '@INPUT@'], 21 | capture: true, 22 | install : true, 23 | install_mode: 'rwxr-xr-x', 24 | install_dir : 'bin' 25 | ) 26 | endforeach 27 | 28 | -------------------------------------------------------------------------------- /scripts/shared_script: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # EST shared script 4 | 5 | extend() { 6 | var="$1" 7 | extra="$2" 8 | eval "val=\$$var" 9 | 10 | if [ -n "$val" ] 11 | then 12 | val="$extra:$val" 13 | else 14 | val="$extra" 15 | fi 16 | eval "$var='$val'" 17 | eval "export $var" 18 | } 19 | 20 | extend __LDVAR__ "__LIB__:__LDPATH__" 21 | 22 | exec __MAIN__/__PROGRAM__ "$@" 23 | 24 | exit 0 25 | 26 | -------------------------------------------------------------------------------- /scripts/shared_setup_prl: -------------------------------------------------------------------------------- 1 | 2 | if (defined($ENV{LD_LIBRARY_PATH})) 3 | { 4 | $ENV{LD_LIBRARY_PATH} = "__TOP__/lib:__LDPATH__:$ENV{LD_LIBRARY_PATH}"; 5 | } 6 | else 7 | { 8 | $ENV{LD_LIBRARY_PATH} = "__TOP__/lib"; 9 | } 10 | 11 | -------------------------------------------------------------------------------- /scripts/shared_setup_sh: -------------------------------------------------------------------------------- 1 | 2 | # EST shared setup 3 | 4 | extend() { 5 | var="$1" 6 | extra="$2" 7 | eval "val=\$$var" 8 | 9 | if [ -n "$val" ] 10 | then 11 | val="$extra:$val" 12 | else 13 | val="$extra" 14 | fi 15 | eval "$var='$val'" 16 | eval "export $var" 17 | } 18 | 19 | extend LD_LIBRARY_PATH "__TOP__/lib:__LDPATH__" 20 | 21 | -------------------------------------------------------------------------------- /sigpr/meson.build: -------------------------------------------------------------------------------- 1 | sigpr_t_lib = static_library( 2 | 'sigpr_t_lib', 3 | sources: files( 4 | 'EST_Window.cc' 5 | ), 6 | include_directories : ['../include/'], 7 | cpp_args: ['-DINSTANTIATE_TEMPLATES'] 8 | ) 9 | libestbase_conv_libs += sigpr_t_lib 10 | 11 | 12 | sigpr_lib = static_library( 13 | 'sigpr_lib', 14 | sources: files( 15 | 'delta.cc', 16 | 'filter.cc', 17 | 'sigpr_frame.cc', 18 | 'sigpr_utt.cc', 19 | 'pitchmark.cc', 20 | 'spectrogram.cc', 21 | 'misc.cc', 22 | 'fft.cc' 23 | ), 24 | include_directories : ['../include/'] 25 | ) 26 | libestbase_conv_libs += sigpr_lib 27 | 28 | subdir('pda') 29 | -------------------------------------------------------------------------------- /sigpr/pda/meson.build: -------------------------------------------------------------------------------- 1 | sigpr_pda_lib = static_library( 2 | 'sigpr_pda_lib', 3 | sources: files( 4 | 'pcb_smoother.cc', 5 | 'smooth_pda.cc', 6 | 'pda.cc', 7 | 'srpd1.3.cc' 8 | ), 9 | include_directories : ['.', '../../include/'] 10 | ) 11 | libestbase_conv_libs += sigpr_pda_lib 12 | 13 | -------------------------------------------------------------------------------- /siod/meson.build: -------------------------------------------------------------------------------- 1 | siod_lib_deps = [] 2 | siod_lib_cargs = [] 3 | 4 | if not get_option('editline').disabled() 5 | ncurses = dependency('ncurses', required: false) 6 | if ncurses.found() 7 | siod_lib_cargs += '-DSUPPORT_EDITLINE' 8 | siod_lib_deps += ncurses 9 | else 10 | curses = dependency('curses', required: false) 11 | if curses.found() 12 | siod_lib_cargs += '-DSUPPORT_EDITLINE' 13 | siod_lib_deps += curses 14 | else 15 | termcaplib = dependency('termcaplib', required: false) 16 | if termcaplib.found() 17 | siod_lib_cargs += '-DSUPPORT_EDITLINE' 18 | siod_lib_deps += termcaplib 19 | else 20 | if get_option('editline').enabled() 21 | error('editline enabled, but no ncurses, curses or termcaplib found') 22 | else 23 | message('editline disabled because neither of ncurses, curses or termcaplib were found') 24 | endif 25 | endif 26 | endif 27 | endif 28 | endif 29 | 30 | if host_machine.system() == 'windows' 31 | winsock2_dep = cxx.find_library('wsock32') 32 | siod_lib_deps += winsock2_dep 33 | endif 34 | 35 | 36 | 37 | siod_t_lib = static_library( 38 | 'siod_t_lib', 39 | sources: files( 40 | 'siod.cc', 41 | 'siod_est.cc', 42 | ), 43 | include_directories : ['.', '../include/'], 44 | cpp_args: ['-DINSTANTIATE_TEMPLATES'] 45 | ) 46 | libestools_conv_libs += siod_t_lib 47 | 48 | if '-DSUPPORT_EDITLINE' in siod_lib_cargs 49 | siod_el_lib = static_library( 50 | 'siod_el_lib', 51 | sources: files( 52 | 'el_complete.c', 53 | 'editline.c', 54 | 'el_sys_unix.c', 55 | ), 56 | dependencies: siod_lib_deps, 57 | include_directories : ['.', '../include/'], 58 | c_args: siod_lib_cargs 59 | ) 60 | libestools_conv_libs += siod_el_lib 61 | endif 62 | 63 | if not get_option('siod_python').disabled() 64 | python3_dep = dependency('python3', required: get_option('siod_python')) 65 | if python3_dep.found() 66 | siod_lib_cargs += '-DEST_SIOD_ENABLE_PYTHON' 67 | siod_lib_deps += python3_dep 68 | endif 69 | endif 70 | 71 | siod_lib = static_library( 72 | 'siod_lib', 73 | sources: files( 74 | 'siodeditline.c', 75 | 'siodeditline.c', 76 | 'slib.cc', 77 | 'slib_core.cc', 78 | 'slib_doc.cc', 79 | 'slib_file.cc', 80 | 'slib_format.cc', 81 | 'slib_list.cc', 82 | 'slib_math.cc', 83 | 'slib_sys.cc', 84 | 'slib_server.cc', 85 | 'slib_str.cc', 86 | 'slib_xtr.cc', 87 | 'slib_repl.cc', 88 | 'slib_python.cc', 89 | 'io.cc', 90 | 'trace.cc' 91 | ), 92 | dependencies: siod_lib_deps, 93 | include_directories : ['.', '../include/'], 94 | c_args: siod_lib_cargs 95 | ) 96 | 97 | libestools_conv_libs += siod_lib 98 | 99 | -------------------------------------------------------------------------------- /siod/slib_repl.cc: -------------------------------------------------------------------------------- 1 | /* Scheme In One Defun, but in C this time. 2 | 3 | * COPYRIGHT (c) 1988-1994 BY * 4 | * PARADIGM ASSOCIATES INCORPORATED, CAMBRIDGE, MASSACHUSETTS. * 5 | * See the source file SLIB.C for more information. * 6 | 7 | */ 8 | 9 | /* 10 | 11 | gjc@paradigm.com or gjc@mitech.com or gjc@world.std.com 12 | 13 | Paradigm Associates Inc Phone: 617-492-6079 14 | 29 Putnam Ave, Suite 6 15 | Cambridge, MA 02138 16 | 17 | */ 18 | 19 | /***************************************************************/ 20 | /* This has been modified to act as an interface to siod as an */ 21 | /* embedded Lisp module. */ 22 | /* Also a (large) number of other functions have been added */ 23 | /* */ 24 | /* Alan W Black (awb@cstr.ed.ac.uk) 8th April 1996 */ 25 | /***************************************************************/ 26 | 27 | /****************************************************************/ 28 | /* */ 29 | /* read-eval print loop functions separated from main functions */ 30 | /* so LISP functions may be used without requiring full */ 31 | /* evaluation to be linked (and termcap) */ 32 | #include 33 | #include "EST_unix.h" 34 | #include 35 | #include 36 | #include "EST_String.h" 37 | #include "EST_cutils.h" 38 | #include "siod.h" 39 | #include "siodp.h" 40 | #include "siodeditline.h" 41 | 42 | using namespace std; 43 | 44 | int siod_repl(int interactive) 45 | { 46 | int retval; 47 | LISP histsize; 48 | 49 | repl_prompt = siod_primary_prompt; 50 | 51 | /* Set history size (ignored if no command-line editing included) */ 52 | histsize = siod_get_lval("editline_histsize",NULL); 53 | if (histsize != NIL) 54 | editline_histsize = get_c_int(histsize); 55 | editline_history_file = walloc(char,strlen(siod_prog_name)+10); 56 | sprintf(editline_history_file,".%s_history",siod_prog_name); 57 | if (siod_get_lval("editline_no_echo",NULL) != NULL) 58 | el_no_echo = 1; 59 | 60 | siod_interactive = interactive; 61 | siod_el_init(); 62 | siod_fancy_getc = siod_el_getc; 63 | siod_fancy_ungetc = siod_el_ungetc; 64 | retval = repl_driver(1,0,NULL); 65 | if (interactive) 66 | cout << endl; 67 | 68 | return retval; 69 | } 70 | 71 | -------------------------------------------------------------------------------- /speech_class/meson.build: -------------------------------------------------------------------------------- 1 | speech_class_t_lib = static_library( 2 | 'speech_class_t_lib', 3 | sources: files( 4 | 'EST_TrackMap.cc', 5 | 'EST_Track.cc', 6 | 'wave_t.cc', 7 | 'track_t.cc', 8 | 'EST_wave_aux.cc', 9 | 'EST_TrackFile.cc', 10 | 'EST_WaveFile.cc', 11 | ), 12 | cpp_args: ['-DINSTANTIATE_TEMPLATES'], 13 | include_directories : ['.', '../include/'] 14 | ) 15 | libestbase_conv_libs += speech_class_t_lib 16 | 17 | 18 | speech_class_lib = static_library( 19 | 'speech_class_lib', 20 | sources: files( 21 | 'EST_Wave.cc', 22 | 'EST_track_aux.cc', 23 | 'EST_wave_temp.cc', 24 | 'EST_wave_cuts.cc', 25 | 'ssff.cc', 26 | 'esps_io.cc', 27 | 'esps_utils.cc', 28 | 'EST_wave_io.cc', 29 | 'EST_wave_utils.cc' 30 | ), 31 | include_directories : ['.', '../include/'] 32 | ) 33 | libestbase_conv_libs += speech_class_lib 34 | 35 | -------------------------------------------------------------------------------- /stats/kalman_filter/meson.build: -------------------------------------------------------------------------------- 1 | stats_kalman_filter_lib = static_library( 2 | 'stats_kalman_filter_lib', 3 | sources: files( 4 | 'EST_kalman.cc' 5 | ), 6 | include_directories : ['../../include/'] 7 | ) 8 | 9 | libestools_conv_libs += stats_kalman_filter_lib 10 | 11 | -------------------------------------------------------------------------------- /stats/meson.build: -------------------------------------------------------------------------------- 1 | 2 | stats_t_lib = static_library( 3 | 'stats_t_lib', 4 | sources: files( 5 | 'dynamic_program.cc' 6 | ), 7 | include_directories : ['../include/'], 8 | cpp_args: ['-DINSTANTIATE_TEMPLATES'] 9 | ) 10 | 11 | libestbase_conv_libs += stats_t_lib 12 | 13 | 14 | stats_lib = static_library( 15 | 'stats_lib', 16 | sources: files( 17 | 'EST_cluster.cc', 18 | 'EST_multistats.cc', 19 | 'confusion.cc', 20 | 'EST_Discrete.cc', 21 | 'EST_DProbDist.cc', 22 | 'EST_ols.cc', 23 | 'EST_viterbi.cc' 24 | ), 25 | include_directories : ['../include/'] 26 | ) 27 | 28 | libestbase_conv_libs += stats_lib 29 | 30 | if get_option('kalman_filter') 31 | subdir('kalman_filter') 32 | endif 33 | if get_option('wagon') 34 | subdir('wagon') 35 | endif 36 | 37 | 38 | -------------------------------------------------------------------------------- /stats/wagon/Makefile: -------------------------------------------------------------------------------- 1 | ########################################################################### 2 | ## ## 3 | ## Centre for Speech Technology Research ## 4 | ## University of Edinburgh, UK ## 5 | ## Copyright (c) 1996 ## 6 | ## All Rights Reserved. ## 7 | ## ## 8 | ## Permission is hereby granted, free of charge, to use and distribute ## 9 | ## this software and its documentation without restriction, including ## 10 | ## without limitation the rights to use, copy, modify, merge, publish, ## 11 | ## distribute, sublicense, and/or sell copies of this work, and to ## 12 | ## permit persons to whom this work is furnished to do so, subject to ## 13 | ## the following conditions: ## 14 | ## 1. The code must retain the above copyright notice, this list of ## 15 | ## conditions and the following disclaimer. ## 16 | ## 2. Any modifications must be clearly marked as such. ## 17 | ## 3. Original authors' names are not deleted. ## 18 | ## 4. The authors' names are not used to endorse or promote products ## 19 | ## derived from this software without specific prior written ## 20 | ## permission. ## 21 | ## ## 22 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 23 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 24 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 25 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 26 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 27 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 28 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 29 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 30 | ## THIS SOFTWARE. ## 31 | ## ## 32 | ########################################################################### 33 | ## 34 | ## Wagon a CART builder 35 | ## 36 | TOP=../.. 37 | DIRNAME=stats/wagon 38 | H = 39 | TSRCS= wagon.cc 40 | SRCS = dlist.cc wagon_aux.cc wagonint.cc $(TSRCS) 41 | OBJS = $(SRCS:.cc=.o) 42 | 43 | FILES = Makefile wagon.mak $(SRCS) $(H) 44 | 45 | ALL = .buildlib 46 | 47 | include $(TOP)/config/common_make_rules 48 | 49 | 50 | -------------------------------------------------------------------------------- /stats/wagon/meson.build: -------------------------------------------------------------------------------- 1 | openmp = dependency('openmp', required: false) # meson builtin 2 | 3 | stats_wagon_deps = [] 4 | stats_wagon_cpp_args = ['-DINSTANTIATE_TEMPLATES'] 5 | 6 | if openmp.found() 7 | stats_wagon_deps = [openmp] 8 | stats_wagon_cpp_args += '-DOMP_WAGON' 9 | endif 10 | 11 | stats_wagon_t_lib = static_library( 12 | 'stats_wagon_t_lib', 13 | sources: files( 14 | 'wagon.cc', 15 | ), 16 | include_directories : ['../../include/'], 17 | cpp_args: stats_wagon_cpp_args, 18 | dependencies: stats_wagon_deps 19 | ) 20 | 21 | libestools_conv_libs += stats_wagon_t_lib 22 | 23 | stats_wagon_lib = static_library( 24 | 'stats_wagon_lib', 25 | sources: files( 26 | 'dlist.cc', 27 | 'wagon_aux.cc', 28 | 'wagonint.cc' 29 | ), 30 | include_directories : ['../../include/'] 31 | ) 32 | 33 | libestools_conv_libs += stats_wagon_lib 34 | -------------------------------------------------------------------------------- /testsuite/correct/complex_example.out: -------------------------------------------------------------------------------- 1 | 4 3 2 | real 4 3 | imag 3 4 | mag 5 5 | ang in radians0.643501 6 | ang in degress 36.8699 7 | z1 = 4 3 8 | z2 = 2 2 9 | z1 + z2 = 6 5 10 | z3 + 10= 14 3 11 | 10 + z3 = 14 3 12 | z1 - z2 = 2 1 13 | z1 - 10= -6 3 14 | 10 - z1 = 6 -3 15 | z1 * z2 = 2 14 16 | z1 * 10= 40 30 17 | 10 * z1 = 40 30 18 | z1 / z2 = 0.4 2.8 19 | z1 / 10= 0.4 0.3 20 | 10 / z1 = 8 6 21 | -------------------------------------------------------------------------------- /testsuite/correct/complex_regression.out: -------------------------------------------------------------------------------- 1 | 4 3 2 | -------------------------------------------------------------------------------- /testsuite/correct/deq_example.out: -------------------------------------------------------------------------------- 1 | {5|Argyle//Bute//Cumbernauld//<>//<>//} 2 | 0: Cumbernauld 3 | 1: Bute 4 | Cumbernauld 5 | Bute 6 | {5|Argyle//<>//<>//<>//<>//} 7 | {9|Argyle//Dundee//Edinburgh//Fife//Glasgow//Harris//Iona//<>//<>//} 8 | Argyle 9 | Dundee 10 | Edinburgh 11 | Fife 12 | {9|<>//<>//<>//<>//Glasgow//Harris//Iona//<>//<>//} 13 | {9|Lewis//Mull//<>//<>//Glasgow//Harris//Iona//Jura//Kirkwald//} 14 | 0: Mull 15 | 1: Lewis 16 | 2: Kirkwald 17 | 3: Jura 18 | {13|Glasgow//Harris//Iona//Jura//Kirkwald//Lewis//Mull//Newhaven//Orkney//Pitlochry//Queensferry//<>//<>//} 19 | {13|Argyle//Bute//<>//<>//<>//<>//<>//<>//<>//<>//<>//<>//<>//} 20 | {13|Argyle//Bute//<>//<>//<>//<>//<>//<>//<>//<>//<>//Dundee//Cumbernauld//} 21 | -------------------------------------------------------------------------------- /testsuite/correct/deq_regression.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/testsuite/correct/deq_regression.out -------------------------------------------------------------------------------- /testsuite/correct/error_example.out: -------------------------------------------------------------------------------- 1 | -=-=-=-=-=- EST Warning -=-=-=-=-=- 2 | a non-fatal message: notice we can use printf style formatting 3 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 4 | -=-=-=-=-=- EST Error -=-=-=-=-=- 5 | A fatal error, this should be caught 6 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 7 | error caught! 8 | -=-=-=-=-=- EST IO Error -=-=-=-=- 9 | Unable to open file, as expected - No such file or directory 10 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 11 | error caught! 12 | In error throwing function: normal 13 | -=-=-=-=-=- EST Error -=-=-=-=-=- 14 | This error is expected: normal 15 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 16 | error caught! 17 | In error throwing function: silent 18 | error caught! 19 | error message was 'This error is expected: silent' 20 | -------------------------------------------------------------------------------- /testsuite/correct/error_regression.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/testsuite/correct/error_regression.out -------------------------------------------------------------------------------- /testsuite/correct/feature_example.out: -------------------------------------------------------------------------------- 1 | Part of speech for p is Noun 2 | Duration for p is 2.76 3 | Stress value for p is 2 4 | Part of speech for p is Noun 5 | Syntactic Category for p is Noun 6 | Anterior value is: +Coronal value is: +Anterior value is: +Coronal value is: +This is true: 1This is false: 0 -------------------------------------------------------------------------------- /testsuite/correct/feature_regression.out: -------------------------------------------------------------------------------- 1 | Part of speech for p is Noun 2 | Duration for p is 2.76 3 | Stress value for p is 2 4 | Part of speech for p is Noun 5 | Syntactic Category for p is Noun 6 | Anterior value is: +Coronal value is: +Anterior value is: +Coronal value is: +This is true: 1This is false: 0 -------------------------------------------------------------------------------- /testsuite/correct/handle_example.out: -------------------------------------------------------------------------------- 1 | 2 | 3 | Unboxed Examples 4 | [create-apple] 5 | [create-banana] 6 | [create-cherry] 7 | <> <> 8 | [destroy-cherry] 9 | <> <> 10 | <> <> 11 | [destroy-apple] 12 | NULL <> 13 | [create-pie] 14 | <> <> 15 | [create-split] 16 | [create-cheesecake] 17 | [destroy-banana] 18 | <> <> 19 | [destroy-cheesecake] 20 | [destroy-split] 21 | [destroy-pie] 22 | 23 | 24 | Boxed Examples 25 | [create-aubergene] 26 | [create-brocoli] 27 | [create-cauliflower] 28 | {aubergene} {brocoli} 29 | [destroy-cauliflower] 30 | {aubergene} {brocoli} 31 | {aubergene} {brocoli} 32 | [destroy-aubergene] 33 | NULL {brocoli} 34 | [create-pate] 35 | {pate} {brocoli} 36 | [create-quiche] 37 | [create-cheese] 38 | [destroy-brocoli] 39 | {pate} {quiche} 40 | [destroy-cheese] 41 | [destroy-quiche] 42 | [destroy-pate] 43 | -------------------------------------------------------------------------------- /testsuite/correct/handle_regression.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/testsuite/correct/handle_regression.out -------------------------------------------------------------------------------- /testsuite/correct/hash_example.out: -------------------------------------------------------------------------------- 1 | length of `fred' = 4 2 | log of 34' = 3.52636 3 | now don't know log of 34' = 0 4 | log of 123 not found 5 | 19: [bill],(4) 6 | 49: [fred],(4) 7 | 66: [harry],(5) 8 | ... 9 | bill 4 fred 4 harry 5 10 | bill 12 fred 12 harry 15 11 | -------------------------------------------------------------------------------- /testsuite/correct/kvl_example.out: -------------------------------------------------------------------------------- 1 | Caledonia 2 | 3 | 4 | unknown 5 | South Bbridge street 6 | Edinburgh city 7 | EH1 1HN post code 8 | Caledonia country 9 | Scotland country 10 | South Bridge 11 | 80 12 | 23.45 13 | -------------------------------------------------------------------------------- /testsuite/correct/kvl_regression.out: -------------------------------------------------------------------------------- 1 | United Kingdom 2 | 3 | 4 | unknown 5 | -------------------------------------------------------------------------------- /testsuite/correct/ling_example.out: -------------------------------------------------------------------------------- 1 | Part of speech for p is Noun 2 | Duration for p is 2.76 3 | Stress value for p is 2 4 | Part of speech for p is Noun 5 | Syntactic Category for p is Noun 6 | Anterior value is: +Coronal value is: +Anterior value is: +Coronal value is: +This is true: 1This is false: 0i 7 | n 8 | f 9 | o 10 | r 11 | m 12 | m 13 | r 14 | o 15 | f 16 | n 17 | i 18 | i 19 | n 20 | f 21 | o 22 | r 23 | m 24 | () 25 | CAT S ; 26 | CAT NP ; CAT PRO ; NAME John ; CAT VP ; CAT VERB ; NAME loves ; CAT NP ; CAT DET ; NAME the ; CAT NOUN ; NAME woman ; John 27 | loves 28 | the 29 | () 30 | 31 | () 32 | 33 | -------------------------------------------------------------------------------- /testsuite/correct/list_example.out: -------------------------------------------------------------------------------- 1 | [ List Accessed by LItem 2 | dove 3 | quail 4 | wood pigeon 5 | hawk 6 | eagle 7 | sparrow 8 | emu 9 | rook 10 | ] 11 | 12 | [ List Accessed by integer index 13 | dove 14 | quail 15 | wood pigeon 16 | hawk 17 | eagle 18 | sparrow 19 | emu 20 | rook 21 | ] 22 | Last item: rook 23 | Last item: rook 24 | First item: dovE 25 | 4th item: EaglE 26 | 27 | [ List After Substitutions and Replacements 28 | Swallow 29 | quail 30 | SEagull 31 | hawk 32 | EaglE 33 | sparrow 34 | Emu 35 | TurkEy 36 | ] 37 | 38 | [ List After Removing Eagle 39 | Swallow 40 | quail 41 | SEagull 42 | hawk 43 | sparrow 44 | Emu 45 | TurkEy 46 | ] 47 | 48 | [ List After Reverse 49 | TurkEy 50 | Emu 51 | sparrow 52 | hawk 53 | SEagull 54 | quail 55 | Swallow 56 | ] 57 | 58 | [ Sorted 59 | Emu 60 | SEagull 61 | Swallow 62 | TurkEy 63 | hawk 64 | quail 65 | sparrow 66 | ] 67 | 68 | [ Sorted by second character 69 | SEagull 70 | hawk 71 | Emu 72 | sparrow 73 | quail 74 | TurkEy 75 | Swallow 76 | ] 77 | -------------------------------------------------------------------------------- /testsuite/correct/list_regression.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/testsuite/correct/list_regression.out -------------------------------------------------------------------------------- /testsuite/correct/lpc_script.out: -------------------------------------------------------------------------------- 1 | 2 | LPC params 3 | tmp/kdt_001.lpc 4 | Number of frames: 391 5 | Number of channels: 17 6 | File type: est 7 | Frame shift: varied 8 | Channel: 0: lpc_0 9 | Channel: 1: lpc_1 10 | Channel: 2: lpc_2 11 | Channel: 3: lpc_3 12 | Channel: 4: lpc_4 13 | Channel: 5: lpc_5 14 | Channel: 6: lpc_6 15 | Channel: 7: lpc_7 16 | Channel: 8: lpc_8 17 | Channel: 9: lpc_9 18 | Channel: 10: lpc_10 19 | Channel: 11: lpc_11 20 | Channel: 12: lpc_12 21 | Channel: 13: lpc_13 22 | Channel: 14: lpc_14 23 | Channel: 15: lpc_15 24 | Channel: 16: lpc_N 25 | Duration: 3.5171 26 | Sample rate: 16000 27 | Number of samples: 56273 28 | Number of channels: 1 29 | Header type: nist 30 | Data type: short 31 | MFCC params 32 | tmp/kdt_001.mfcc 33 | Number of frames: 704 34 | Number of channels: 24 35 | File type: est 36 | Frame shift: varied 37 | Channel: 0: melcep_1 38 | Channel: 1: melcep_2 39 | Channel: 2: melcep_3 40 | Channel: 3: melcep_4 41 | Channel: 4: melcep_5 42 | Channel: 5: melcep_6 43 | Channel: 6: melcep_7 44 | Channel: 7: melcep_8 45 | Channel: 8: melcep_9 46 | Channel: 9: melcep_10 47 | Channel: 10: melcep_11 48 | Channel: 11: melcep_N 49 | Channel: 12: melcep_d_1 50 | Channel: 13: melcep_d_2 51 | Channel: 14: melcep_d_3 52 | Channel: 15: melcep_d_4 53 | Channel: 16: melcep_d_5 54 | Channel: 17: melcep_d_6 55 | Channel: 18: melcep_d_7 56 | Channel: 19: melcep_d_8 57 | Channel: 20: melcep_d_9 58 | Channel: 21: melcep_d_10 59 | Channel: 22: melcep_d_11 60 | Channel: 23: melcep_d_N 61 | expect one line containing 0s (first delta params) 62 | Number of vectors with 0s is 1 63 | -------------------------------------------------------------------------------- /testsuite/correct/matrix_regression.out: -------------------------------------------------------------------------------- 1 | EST_TVector size = 20 bytes. 2 | EST_TMatrix size = 28 bytes. 3 | Initial Matrix 4 | 0 1 2 3 4 5 | 100 101 102 103 104 6 | 200 201 202 203 204 7 | 300 301 302 303 304 8 | 400 401 402 403 404 9 | 10 | Same Sized Matrix 11 | 0 1 2 3 4 12 | 100 101 102 103 104 13 | 200 201 202 203 204 14 | 300 301 302 303 304 15 | 400 401 402 403 404 16 | 17 | Double Sized Matrix 18 | 0 1 2 3 4 0 0 0 0 0 19 | 100 101 102 103 104 0 0 0 0 0 20 | 200 201 202 203 204 0 0 0 0 0 21 | 300 301 302 303 304 0 0 0 0 0 22 | 400 401 402 403 404 0 0 0 0 0 23 | 0 0 0 0 0 0 0 0 0 0 24 | 0 0 0 0 0 0 0 0 0 0 25 | 0 0 0 0 0 0 0 0 0 0 26 | 0 0 0 0 0 0 0 0 0 0 27 | 0 0 0 0 0 0 0 0 0 0 28 | 29 | Reset Matrix 30 | 0 1 2 3 4 5 6 7 8 9 31 | 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 32 | 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 33 | 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 34 | 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 35 | 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 36 | 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 37 | 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 38 | 8000 8001 8002 8003 8004 8005 8006 8007 8008 8009 39 | 9000 9001 9002 9003 9004 9005 9006 9007 9008 9009 40 | 41 | Half Sized Matrix 42 | 0 1 2 3 4 43 | 1000 1001 1002 1003 1004 44 | 2000 2001 2002 2003 2004 45 | 3000 3001 3002 3003 3004 46 | 4000 4001 4002 4003 4004 47 | 48 | 0 1 2 3 4 49 | 50 | 0 1 2 3 4 51 | 52 | 0 1 2 3 4 0 0 0 0 0 53 | 54 | 500 501 502 503 504 505 506 507 508 509 55 | 56 | -------------------------------------------------------------------------------- /testsuite/correct/named_enum_example.out: -------------------------------------------------------------------------------- 1 | c1 is red 2 | c2 is [NULL] 3 | red is 1 = red (rojo in Spanish) = {255, 0, 0} 4 | navy is 2 = blue (azul in Spanish) = {0, 0, 255} 5 | puce is 666 = kinda brownish (no conocido in Spanish) = {127, 127, 127} 6 | 7 | 8 | colour name map 9 | unknown=666 10 | quote=" 11 | number=3 12 | =666 "kinda brownish" 13 | =1 red scarlet 14 | =2 blue navy sad 15 | 16 | 17 | colour name map (spanish) 18 | unknown=666 19 | quote=" 20 | number=3 21 | "kinda brownish" "no conocido" 22 | "red" rojo escarlata sangre 23 | "blue" azul piscina mar cielo 24 | 25 | 26 | read in table 27 | unknown=666 28 | quote=" 29 | number=2 30 | =2 "loaded blue" blue "sky blue" 31 | =1 "loaded red" red postbox 32 | 33 | 34 | read in table (translation) 35 | unknown=666 36 | quote=" 37 | number=2 38 | =2 "loaded azul" piscina 39 | =1 "loaded rojo" sangre 40 | -------------------------------------------------------------------------------- /testsuite/correct/named_enum_regression.out: -------------------------------------------------------------------------------- 1 | c1 is red Mercury 2 | c2 is UNKNOWN COLOUR 3 | c3 is blue Steel 4 | print_3 111 5 | print_2 222 6 | c1 111 7 | c2 --- 8 | c_unknown ??? 9 | -------------------------------------------------------------------------------- /testsuite/correct/pathname_example.out: -------------------------------------------------------------------------------- 1 | file f = baz/ptooie 2 | dir f = baz/ptooie/ 3 | combine = /foo/bar/baz/ptooie 4 | combine = baz/ptooie/baz/ptooie 5 | build = /foo/bar/baz/ptooie.test 6 | filename = ptooie.test 7 | extension = test 8 | basename = ptooie.test 9 | basename1 = ptooie 10 | listing example_data: 11 | Makefile 12 | alice 13 | ch_track.htk 14 | ch_wave.wav 15 | channel_names.map 16 | colours.map 17 | colours_translation.map 18 | eg.dtd 19 | eg.xml 20 | kdt_001.il 21 | kdt_001.pm 22 | kdt_001.tilt 23 | kdt_001.wav 24 | ked_wr1_012.utt 25 | key.lab 26 | options.file 27 | vit.B.ngram 28 | vit.observes 29 | vit.vocab 30 | wagon.data 31 | wagon.desc 32 | wagon.tree 33 | done. 34 | -------------------------------------------------------------------------------- /testsuite/correct/pathname_regression.out: -------------------------------------------------------------------------------- 1 | f = section/test.foo 2 | g = dir/subdir/ 3 | abs = /tmp 4 | f.as_directory() = section/test.foo/ 5 | f.as_file() = section/test.foo 6 | g.as_directory() = dir/subdir/ 7 | g.as_file() = dir/subdir 8 | f is file 9 | g is directory 10 | g is relative 11 | abs is absolute 12 | g + f = dir/subdir/section/test.foo 13 | g + abs = /tmp 14 | abs + g + f = /tmp/dir/subdir/section/test.foo 15 | -------------------------------------------------------------------------------- /testsuite/correct/sigpr_example.out: -------------------------------------------------------------------------------- 1 | 2 | I've no idea what these are suppose to be but the other 3 | tests wont even run without this file -- awb 4 | 5 | -------------------------------------------------------------------------------- /testsuite/correct/sigpr_regression.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/testsuite/correct/sigpr_regression.out -------------------------------------------------------------------------------- /testsuite/correct/string_example.out: -------------------------------------------------------------------------------- 1 | hello world 2 | stdio version hello world 3 | 4 | Yes, it contains a match for \(wow\|yey\|lo\)[^a-z] 5 | match was 'lo ' 6 | word was 'lo' 7 | 8 | processing 'http://www.cstr.ed.ac.uk/speech_tools' 9 | gives 'protocol=http host=www.cstr.ed.ac.uk path=/speech_tools dummy=\6' 10 | 11 | start with "what if I don't like 'hello world'?" 12 | quoted "'what if I don''t like ''hello world''?'" 13 | unquoted "what if I don't like 'hello world'?" 14 | -------------------------------------------------------------------------------- /testsuite/correct/string_regression.out: -------------------------------------------------------------------------------- 1 | First 'hello world' 2 | Second 'lo w' 3 | Third 'l' 4 | Result 0 '' 5 | Result 1 'hel' 6 | Result 2 '' 7 | Result 3 'hello wor' 8 | Result 4 'hel' 9 | Result 5 'hel' 10 | Result 6b 'hello' 11 | Result 1a 'orld' 12 | Result 2a '' 13 | Result 3a 'd' 14 | Result 4a 'o world' 15 | Result 5a 'o world' 16 | Result 6a 'world' 17 | Result 6 'lo w sw eet' 18 | Result 7 'lo wl' 19 | Result 8 'some,wordswithpunctuationleftaftera-vowel' 20 | Test 0 '1' 21 | Test 1 '1' 22 | Test 2 '1' 23 | Test 3 '0' 24 | Test 4 '1' 25 | Test 5 '1' 26 | Test 6 '0' 27 | Test 7 '1' 28 | Test 8 '0' 29 | Test 9 '0' 30 | Test 10 '1' 31 | Test 11 '1' 32 | Test 12 '0' 33 | Test 13 '1' 34 | Test 14 '1' 35 | Test 15 '1' 36 | Test 0m '1' 37 | Test 1m '0' 38 | Test 2m '1' 39 | Test 3m '1' 40 | Result 1r 'hel' 41 | Result 2r 'hello wor' 42 | Result 3r 'd' 43 | Result 1at 'lo w' 44 | Result 2at 'lo wo' 45 | Result 3at 'llo ' 46 | Num 1 '3' 47 | bits1[0] 'he' 48 | bits1[1] 'o wor' 49 | bits1[2] 'd' 50 | Num 2 '2' 51 | bits2[0] 'he' 52 | bits2[1] 'o wor' 53 | bits2[2] '' 54 | Num 7 '2' 55 | bits3[0] 'hello' 56 | bits3[1] 'world' 57 | bits3[2] '' 58 | Num 8 '5' 59 | bits4[0] '"some tokens"' 60 | bits4[1] 'which' 61 | bits4[2] '' 62 | bits4[3] 'are' 63 | bits4[4] '"quoted with """' 64 | bits4[5] '' 65 | Num 9 '4' 66 | bits5[0] '"some tokens"' 67 | bits5[1] 'which' 68 | bits5[2] 'are' 69 | bits5[3] '"quoted with """' 70 | bits5[4] '' 71 | Num 10 '1' 72 | bits6[0] 'hello world' 73 | bits6[1] '' 74 | Num 3 '2' 75 | Num 4 '3' 76 | Num 5 '3' 77 | Sub 1 'he[an ell][an ell]o wor[an ell]d' 78 | Num 6 '2' 79 | Sub 1 'he[some ells]o wor[some ells]d' 80 | -------------------------------------------------------------------------------- /testsuite/correct/tilt_script.out: -------------------------------------------------------------------------------- 1 | 2 | Tilt Test no Longer run 3 | -------------------------------------------------------------------------------- /testsuite/correct/token_example.out: -------------------------------------------------------------------------------- 1 | Input file contains: 2 | 4297 tokens 3 | 4 tokens preceeded by double quotes 4 | 51 occurrences of Alice 5 | -------------------------------------------------------------------------------- /testsuite/correct/token_regression.out: -------------------------------------------------------------------------------- 1 | Test 1: "This is a test." 2 | This 3 | is 4 | a 5 | test. 6 | Total: 4 7 | 8 | Test 2: "This (is) a test." 9 | This 10 | (is) 11 | a 12 | test. 13 | Total: 4 14 | 15 | Test 3: "This (is) a test." 16 | This 17 | is 18 | a 19 | test 20 | Total: 4 21 | 22 | Test 4: "This (is) a test." 23 | This 24 | ( 25 | is 26 | ) 27 | a 28 | test 29 | Total: 6 30 | 31 | Test 5: "This \"is a\" te\\\"st." 32 | This 33 | is 34 | a 35 | te\"st 36 | Total: 4 37 | 38 | Test 6: "This \"is a\" te\\\"st." 39 | This 40 | is a 41 | te\"st. 42 | 43 | Total: 4 44 | 45 | Test 7: "This \"is 46 | a\" te\\\"st." 47 | This 48 | is 49 | a 50 | te\"st. 51 | 52 | Total: 4 53 | 54 | Reading tokens and binary from string 55 | [TOKEN a] 56 | [TOKEN buffer] 57 | 7 58 | -34 59 | [TOKEN and] 60 | [TOKEN tokens] 61 | Reading tokens and binary from file 62 | [TOKEN a] 63 | [TOKEN buffer] 64 | 7 65 | -34 66 | [TOKEN and] 67 | [TOKEN tokens] 68 | -------------------------------------------------------------------------------- /testsuite/correct/track_example.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/testsuite/correct/track_example.out -------------------------------------------------------------------------------- /testsuite/correct/track_map_regression.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/festvox/speech_tools/63ff01938f81443f5a294bc5f9ea6ac6ab38f6b0/testsuite/correct/track_map_regression.out -------------------------------------------------------------------------------- /testsuite/correct/viterbi_script.out: -------------------------------------------------------------------------------- 1 | NB 0.889206 2 | NB 0.848305 3 | NB 0.803785 4 | NB 0.757858 5 | NB 0.013069 6 | B 0.343778 7 | NB 0.889206 8 | NB 0.848305 9 | NB 0.803785 10 | NB 0.757858 11 | -------------------------------------------------------------------------------- /testsuite/correct/wagon_script.out: -------------------------------------------------------------------------------- 1 | 2 | Dataset of 106 vectors of 20 parameters from: ../lib/example_data/wagon.data 3 | RMSE 0.0346 Correlation is 0.6825 Mean (abs) Error 0.0272 (0.0214) 4 | wagon standard cart tree: pass 5 | -------------------------------------------------------------------------------- /testsuite/correct/xml_example.out: -------------------------------------------------------------------------------- 1 | > document 1 2 | > text 2 3 | [pcdata[ 4 | ]] 2 5 | > sentence 3 6 | [pcdata[ 7 | ]] 3 8 | > phrase 4 9 | [pcdata[This]] 4 10 | < phrase 4 11 | [pcdata[ 12 | ]] 3 13 | > phrase 4 14 | [pcdata[is]] 4 15 | < phrase 4 16 | [pcdata[ 17 | ]] 3 18 | > phrase 4 19 | [pcdata[an example ]] 4 20 | > phrase 5 21 | [pcdata[of ]] 5 22 | > phrase 6 23 | [pcdata[an XML file]] 6 24 | < phrase 6 25 | < phrase 5 26 | < phrase 4 27 | [pcdata[ 28 | ]] 3 29 | : punct 3 30 | [pcdata[ 31 | ]] 3 32 | < sentence 3 33 | [pcdata[ 34 | ]] 2 35 | < text 2 36 | > $OUTPUT 43 | 44 | exit $? 45 | 46 | -------------------------------------------------------------------------------- /utils/meson.build: -------------------------------------------------------------------------------- 1 | utils_lib_t = static_library( 2 | 'utils_lib_t', 3 | sources: files('est_file.cc'), 4 | cpp_args : ['-DINSTANTIATE_TEMPLATES'], 5 | include_directories : ['.', '../include/'] 6 | ) 7 | libestbase_conv_libs += utils_lib_t 8 | 9 | utils_lib = static_library( 10 | 'utils_lib', 11 | sources: files( 12 | 'cmd_line_aux.cc', 13 | 'cmd_line.cc', 14 | 'EST_cutils.c', 15 | 'EST_error.c', 16 | 'EST_swapping.cc', 17 | 'filetrans.cc', 18 | 'system_specific_unix.c', 19 | # 'system_specific_win32.c', 20 | 'util_io.cc' 21 | ), 22 | c_args : [ 23 | '-DESTNAME=' + PROJECT_NAME, 24 | '-DESTDATE=' + PROJECT_DATE, 25 | '-DESTVERSION=' + PROJECT_VERSION, 26 | '-DESTLIBDIRC=' + ESTLIBDIRC, 27 | '-DESTSTATE=' + PROJECT_STATE, 28 | '-DESTOSTYPE=' + SYSTEM_TYPE 29 | ], 30 | include_directories : ['.', '../include/'] 31 | ) 32 | libestbase_conv_libs += utils_lib 33 | 34 | utils_string_lib = static_library( 35 | 'utils_string_lib', 36 | sources: files( 37 | 'walloc.c' 38 | ), 39 | include_directories : ['.', '../include/'], 40 | ) 41 | 42 | libestring_conv_libs += utils_string_lib 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /utils/system_specific_unix.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************/ 2 | /* */ 3 | /* Centre for Speech Technology Research */ 4 | /* University of Edinburgh, UK */ 5 | /* Copyright (c) 1994,1995,1996 */ 6 | /* All Rights Reserved. */ 7 | /* */ 8 | /* Permission is hereby granted, free of charge, to use and distribute */ 9 | /* this software and its documentation without restriction, including */ 10 | /* without limitation the rights to use, copy, modify, merge, publish, */ 11 | /* distribute, sublicense, and/or sell copies of this work, and to */ 12 | /* permit persons to whom this work is furnished to do so, subject to */ 13 | /* the following conditions: */ 14 | /* 1. The code must retain the above copyright notice, this list of */ 15 | /* conditions and the following disclaimer. */ 16 | /* 2. Any modifications must be clearly marked as such. */ 17 | /* 3. Original authors' names are not deleted. */ 18 | /* 4. The authors' names are not used to endorse or promote products */ 19 | /* derived from this software without specific prior written */ 20 | /* permission. */ 21 | /* */ 22 | /* THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK */ 23 | /* DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING */ 24 | /* ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT */ 25 | /* SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE */ 26 | /* FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES */ 27 | /* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN */ 28 | /* AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, */ 29 | /* ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF */ 30 | /* THIS SOFTWARE. */ 31 | /* */ 32 | /*************************************************************************/ 33 | 34 | #include "EST_system.h" 35 | 36 | int socket_initialise(void) 37 | { 38 | return 1; 39 | } 40 | -------------------------------------------------------------------------------- /wrappers/Makefile: -------------------------------------------------------------------------------- 1 | ########################################################################### 2 | ## ## 3 | ## Centre for Speech Technology Research ## 4 | ## University of Edinburgh, UK ## 5 | ## Copyright (c) 2003 ## 6 | ## All Rights Reserved. ## 7 | ## ## 8 | ## Permission is hereby granted, free of charge, to use and distribute ## 9 | ## this software and its documentation without restriction, including ## 10 | ## without limitation the rights to use, copy, modify, merge, publish, ## 11 | ## distribute, sublicense, and/or sell copies of this work, and to ## 12 | ## permit persons to whom this work is furnished to do so, subject to ## 13 | ## the following conditions: ## 14 | ## 1. The code must retain the above copyright notice, this list of ## 15 | ## conditions and the following disclaimer. ## 16 | ## 2. Any modifications must be clearly marked as such. ## 17 | ## 3. Original authors' names are not deleted. ## 18 | ## 4. The authors' names are not used to endorse or promote products ## 19 | ## derived from this software without specific prior written ## 20 | ## permission. ## 21 | ## ## 22 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 23 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 24 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 25 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 26 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 27 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 28 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 29 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 30 | ## THIS SOFTWARE. ## 31 | ## ## 32 | ########################################################################### 33 | # Makefile for Wrappers module # 34 | #=========================================================================# 35 | 36 | TOP=.. 37 | DIRNAME=wrappers 38 | NODEPEND=1 39 | BUILD_DIRS=interface 40 | ALL = .sub_directories 41 | 42 | FILES = Makefile wrappers.mak $(COMMON_FILES) 43 | 44 | include $(TOP)/config/common_make_rules 45 | 46 | 47 | -------------------------------------------------------------------------------- /wrappers/interface/python/Makefile: -------------------------------------------------------------------------------- 1 | ########################################################################### 2 | ## ## 3 | ## Centre for Speech Technology Research ## 4 | ## University of Edinburgh, UK ## 5 | ## Copyright (c) 2003 ## 6 | ## All Rights Reserved. ## 7 | ## ## 8 | ## Permission is hereby granted, free of charge, to use and distribute ## 9 | ## this software and its documentation without restriction, including ## 10 | ## without limitation the rights to use, copy, modify, merge, publish, ## 11 | ## distribute, sublicense, and/or sell copies of this work, and to ## 12 | ## permit persons to whom this work is furnished to do so, subject to ## 13 | ## the following conditions: ## 14 | ## 1. The code must retain the above copyright notice, this list of ## 15 | ## conditions and the following disclaimer. ## 16 | ## 2. Any modifications must be clearly marked as such. ## 17 | ## 3. Original authors' names are not deleted. ## 18 | ## 4. The authors' names are not used to endorse or promote products ## 19 | ## derived from this software without specific prior written ## 20 | ## permission. ## 21 | ## ## 22 | ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ## 23 | ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ## 24 | ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ## 25 | ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ## 26 | ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ## 27 | ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ## 28 | ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ## 29 | ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ## 30 | ## THIS SOFTWARE. ## 31 | ## ## 32 | ########################################################################### 33 | # Makefile for Wrappers module # 34 | #=========================================================================# 35 | 36 | TOP=../../.. 37 | DIRNAME=wrappers/interface/python 38 | 39 | PYTHON_FILES = EST_Features.i EST_typemaps.i 40 | FILES = Makefile $(PYTHON_FILES) 41 | 42 | include $(TOP)/config/common_make_rules 43 | --------------------------------------------------------------------------------