debian/0000755000000000000000000000000012143205113007156 5ustar debian/na_record.10000644000000000000000000000622611711053613011210 0ustar .Dd April 4, 2001 .Dt NA_RECORD 1 .Os "Edinburgh Speech Tools" .Sh NAME .Nm na_record .Nd record waveform from audio device .Sh SYNOPSIS .Nm na_record .Op Fl h .Op Fl f Ar sampling rate .Op Fl audiodevice Ar device .Op Fl time Ar seconds .Op Fl o Ar file .Op Fl otype Ar type .Op Fl ostype Ar sample type .Op Fl F Ar sample rate .Op Fl obo Ar MSB | LSB | native .Op Fl oswap .Op Fl p Ar audio device protocol .Sh DESCRIPTION .Nm na_record records digital audio data from the system's audio input device and writes it to the specified file. It supports a variety of output file formats and native audio devices. .Pp The following option flags are recognized: .Pp .Bl -tag -width 4n -offset indent -compact .It Fl h Prints a short summary of usage to standard output. .It Fl f Ar sampling rate Sets the input sampling rate (in samples per second, i.e. Hz). Not all devices support all sampling rates, so it may be desireable to set this separately from the output sampling rate. .It Fl audiodevice Ar device Sets the audio device to record from, if supported by the audio protocol chosen (e.g. /dev/dsp, /dev/audio) .It Fl time Ar seconds Stops recording after the specified number of seconds. .It Fl o Ar file Writes sound output to the specified file .It Fl otype Ar type Specifies the file format to use for output. Supported types currently include nist, est, dsps, snd, riff, aiff, audlab, raw, and ascii. The .Fl h flag will show the most accurate list. The default type is nist. .It Fl F Ar sampling rate Sets the output sampling rate (again, in samples per second, i.e. Hz). If this differs from the input sampling rate, resampling will be done. Defaults to 16000Hz. .It Fl obo Ar byte order Sets the output byte order. Supported values are MSB, LSB, and native. Many file formats have their own byte order, or are byte order independent, so this isn't tremendously useful except for raw data. The default is the native byte order for the system audio device. .It Fl oswap Swap bytes when saving to output. .It Fl ostype Ar sample type Sets the sample type of the output. Suported values are short, mulaw, byte, or ascii. Again, this is usually implied by the file format, so should only be used for raw data. The default is short (i.e. 16-bit PCM). .It Fl p Ar audio device protocol Selects an audio device protocol (i.e. type of audio device) to use. This varies between different installations of Speech Tools, but defaults to the most 'native' audio device, usually Open Sound System on Linux and *BSD and /dev/audio on Solaris. .El .Sh ENVIRONMENT .Bl -tag -width 4n -offset indent -compact .It Ev NA_PLAY_PROTOCOL Audio protocol to use (as in the .Fl p flag) .It Ev NA_PLAY_HOST Host to record audio from when using a network audio protocol. .El .Sh EXAMPLES To record five seconds of audio from /dev/dsp1 (on Linux) to foo.wav in RIFF format at 32kHz: .Dl "$ na_record -time 5 -audiodevice /dev/dsp1 -o foo.wav -otype RIFF -f 32000" To record one second of audio to bar.wav in raw format in 8kHz mu-law: .Dl "$ na_record -time 1 -o bar.wav -otype raw -ostype mulaw -f 8000" .Sh BUGS The .Fl time argument only accepts integer values (though the usage message implies otherwise) .Sh SEE ALSO .Xr na_play 1 debian/ch_wave.10000644000000000000000000001405511711053613010667 0ustar .Dd April 5, 2001 .Dt CH_WAVE 1 .Os "Edinburgh Speech Tools" .Sh NAME .Nm ch_wave .Nd change/copy/combine waveform files .Sh SYNOPSIS .Nm ch_wave .Op Fl h .Op Fl itype Ar file type .Op Fl n Ar channels .Op Fl f Ar sample rate .Op Fl ibo Ar byte order .Op Fl iswap .Op Fl istype Ar sample type .Op Fl c Ar channel .Op Fl start Ar seconds .Op Fl end Ar seconds .Op Fl from Ar sample .Op Fl to Ar sample .Op Fl o Ar output file .Op Fl otype Ar file type .Op Fl F Ar sample rate .Op Fl obo Ar byte order .Op Fl oswap .Op Fl ostype Ar sample type .Op Fl scale Ar factor .Op Fl scaleN Ar factor .Op Fl lpfilter Ar frequency .Op Fl hpfilter Ar freqency .Op Fl forder Ar order .Op Fl fafter .Op Fl info .Op Fl add .Op Fl pc Ar LONGEST | FIRST .Op Fl key Ar keylab file .Op Fl divide .Op Fl ext Ar file extension .Op Fl extract Ar file .Ar input files ... .Sh DESCRIPTION .Nm ch_wave performs various operations on an input waveform file and writes it out to another file. Among other things, it can extract subsections or individual channels, resample, rescale, mix down channels, and perform simple filtering operations. .Pp The following option flags are recognized: .Pp .Bl -tag -width 4n -offset indent -compact .It Fl h Options help .It Fl itype Ar file type Input file type (optional). If set to raw, this indicates that the input file does not have a header. While this can be used to specify file types other than raw, this is rarely used for other purposes as the file type of all the existing supported types can be determined automatically from the file's header. If the input file is unheadered, files are assumed to be shorts (16bit). Supported types are nist, est, esps, snd, riff, aiff, audlab, raw, ascii .It Fl n Ar channels Number of channels in an unheadered input file .It Fl f Ar sample rate Sample rate in Hertz for an unheadered input file .It Fl ibo Ar byte order Input byte order in an unheadered input file: possibliities are: MSB , LSB, native or nonnative. Suns, HP, SGI Mips, M68000 are MSB (big endian) Intel, Alpha, DEC Mips, Vax are LSB (little endian) .It Fl iswap Swap bytes. (For use on an unheadered input file) .It Fl istype Ar sample type Sample type in an unheadered input file: short, alaw, mulaw, byte, ascii .It Fl c Ar channel Select a single channel (starts from 0). Waveforms can have multiple channels. This option extracts a single channel for progcessing and discards the rest. .It Fl start Ar seconds Extract sub-wave starting at this time, specified in seconds .It Fl end Ar seconds Extract sub-wave ending at this time, specified in seconds .It Fl from Ar sample Extract sub-wave starting at this sample point .It Fl to Ar sample Extract sub-wave ending at this sample point .It Fl o Ar output file Output filename. If not specified output is to stdout. .It Fl otype Ar file type Output file type, (optional). If no type is Specified the type of the input file is assumed. Supported types are: nist, est, esps, snd, riff, aiff, audlab, raw, ascii .It Fl F Ar sample rate Output sample rate in Hz. If this is different from the input sample rate, resampling will occur .It Fl obo Ar byte order Output byte order: MSB, LSB, native, or nonnative. Suns, HP, SGI Mips, M68000 are MSB (big endian), Intel, Alpha, DEC Mips, Vax are LSB (little endian) .It Fl oswap Swap bytes when saving to output .It Fl ostype Ar sample type Output sample type: short, alaw, mulaw, byte or ascii .It Fl scale Ar factor Scaling factor. Increase or descrease the amplitude of the whole waveform by the factor given (relative to 1.0) .It Fl scaleN Ar factor Scaling factor with normalization. The waveform is scaled to its maximum level, after which it is scaled by the factor given (relative to 1.0) .It Fl lpfilter Ar frequency Low pass filter, with cutoff frequency in Hz Filtering is performed by a FIR filter which is built at run time. The order of the filter can be given by \-forder. The default value is 199 .It Fl hpfilter Ar freqency High pass filter, with cutoff frequency in Hz Filtering is performed by a FIR filter which is built at run time. The order of the filter can be given by \-forder. The default value is 199. .It Fl forder Ar order Order of FIR filter used for lpfilter and hpfilter. This must be ODD. Sensible values range from 19 (quick but with a shallow rolloff) to 199 (slow but with a steep rolloff). The default is 199. .It Fl fafter Do filtering after other operations such as resampling (default : filter before other operations) .It Fl info Print information about file and header. This option gives useful information such as file length, sampling rate, number of channels etc No output is produced .It Fl add A new single channel waveform is created by adding the corresponding sample points of each input waveform .It Fl pc Ar LONGEST | FIRST Combine input waveforms to form a single multichannel waveform. The argument to this option controls how long the new waveform should be. If the option is LONGEST, the output wave if the length of the longest input wave and shorter waves are padded with zeros at the end. If the option is FIRST, the length of the new waveform is the length of the first file on the command line, and subsequent waves are padded or cut to this length .It Fl key Ar keylab file Label file designating subsections, for use with .Fl divide. The KEYLAB file is a label file which specifies where chunks (such as individual sentences) in a waveform begin and end. See section on wave extraction. .It Fl divide Divide a single input waveform into multiple output waveforms. Each output waveform is extracted from the input waveform by using the KEYLAB file, which specifies the start and stop times for each chunk. The output files are named according to the filename in the KEYLAB file, with extension given by \-ext. See section on wave extraction .It Fl ext Ar file extension File extension for divided waveforms .It Fl extract Ar file Used in conjunction with \-key to extract a single section of waveform from the input waveform. The argument is the name of a file given in the file column of the KEYLAB file. .El .Sh EXAMPLES .Sh BUGS .Sh SEE ALSO .Xr ch_track 1 .Xr ch_utt 1 .Xr na_record 1 .Xr na_play 1 debian/libestools1.2.shlibs0000644000000000000000000000013111711053613012765 0ustar libeststring 1.2 libestools1.2 libestbase 1.2 libestools1.2 libestools 1.2 libestools1.2 debian/compat0000644000000000000000000000000211711053613010362 0ustar 8 debian/source/0000755000000000000000000000000011711053613010464 5ustar debian/source/format0000644000000000000000000000001411711053613011672 0ustar 3.0 (quilt) debian/watch0000644000000000000000000000021211711053613010210 0ustar version=3 opts="uversionmangle=s/-beta/~beta/;s/-release/~release/" \ http://festvox.org/packed/festival/latest/ speech_tools-(.*).tar.gz debian/changelog0000644000000000000000000005607612143203756011061 0ustar speech-tools (1:2.1~release-6) unstable; urgency=low [ Peter Drysdale ] * gcc 4.8 compliance a by-product of EsounD removal. (Closes: #701362) * Add patch to enable compiling of with clang 3.0. * Stop clobbering compiler/ld flags in festival build, it is not polite. * Remove support for EsounD which has been deprecated by Gnome * Fix Lintian flagged spelling error. * Add missing dependency on libaudiofile-dev. Thanks to Alessio Treglia. (Closes: #657603) [ Sergio Oller ] * Add patch to enable native PulseAudio support. Original implementation by Matthias Clasen. * Add patch to enable native ALSA support. (Closes: #638394) * Original work on release-5 bug fast-tracked to wheezy. -- Peter Drysdale Mon, 04 May 2013 09:40:22 +1000 speech-tools (1:2.1~release-5) unstable; urgency=low * Add Conflicts libestools2.0-dev, libestools1.2-dev to ensure smooth upgrades (closes: #694059) -- Peter Drysdale Mon, 14 Jan 2013 20:22:52 +1000 speech-tools (1:2.1~release-4) unstable; urgency=low [ Samuel Thibault ] * control: - Bump Standards-Version to 3.9.3 (no changes). - Set libestools2.1 multi-arch: same. * rules: Install libraries to multi-arch path. [ Peter Drysdale ] * Add Pre-Depend on multiarch-support as flagged by lintian * Add qualification to unqualified method calls in templates allowing compiling with gcc>=4.7. * Remove old compiler switch fno-shared-data which is not present after gcc>=4.0. -- Samuel Thibault Mon, 26 Mar 2012 00:05:28 +0200 speech-tools (1:2.1~release-3) unstable; urgency=low [ Samuel Thibault ] * control: Depend on hardening-check. * rules: Set DEB_BUILD_HARDENING=1 to enable hardening. * patches/fmt.diff: Fix format security issue. [ Peter Drysdale ] * compat: bump to debhelper 8 * Move to dh style minimum format for rules. * Move to source format 3.0 quilt. * Refresh contexts, clean up some patches, and del. obs. uncompiled patches * Provide individual patch headers and remove misleading uniform headers about patching for GCC (Closes: #616341) * Clean build system and drop obsolete compiler patches. -- Peter Drysdale Tue, 13 Dec 2011 17:22:52 +1000 speech-tools (1:2.1~release-2.1) unstable; urgency=low * New maintainer (closes: #637820) -- Jean-Philippe MENGUAL Tue, 16 Aug 2011 02:19:25 +0200 speech-tools (1:2.1~release-2) unstable; urgency=low * Make libestools2.1-dev provide libestools2.0-dev, so that binNMUs can be facilitated. * Add missing copyright entries. -- Kumar Appaiah Thu, 24 Feb 2011 09:57:35 -0600 speech-tools (1:2.1~release-1) unstable; urgency=low * New upstream release * Bump soname; shlibs etc. updated * Update patches and rules file to handle symlinks with just x.y versioning as opposed to x.y.z by appropriately ignoring the absence of the minor version number. Also fix major version detection in debian/get_version.sh. * Update watch file to handle "release" in version number -- Kumar Appaiah Wed, 16 Feb 2011 20:53:04 -0600 speech-tools (1:2.0.95~beta-2) unstable; urgency=low * Update speech_class_EST_WaveFile.cc.diff to fix audsp related crashes. (Closes: #601294) * Update Standards Version to 3.9.1 (no changes needed) -- Kumar Appaiah Sun, 24 Oct 2010 19:02:37 -0500 speech-tools (1:2.0.95~beta-1) unstable; urgency=low [ Kartik Mistry ] * debian/control: + [Lintian] Added missing ${misc:Depends} + Updated Standards-Version to 3.8.4 (no changes needed) * debian/patches/const_char.diff: + Added missing patch header * Removed unused patch invalid_const_char_conversion_fixes.diff [ Kumar Appaiah ] * New upstream release. * Standards Version is now 3.9.0 (No changes needed) * Update debian/rules to specify version numbers. -- Kumar Appaiah Sat, 17 Jul 2010 11:32:04 -0500 speech-tools (1:1.2.96~beta-6) unstable; urgency=low [ Kartik Mistry ] * debian/patches/invalid_const_char_conversion_fixes.diff: + Added patch to fix invalid_const_char_conversion_fixes.diff, Thanks to Ilya Barygin (Closes: #548521) * debian/control: + Don't Recommends speech-tools, use Suggests instead to not pull unwanted speech-tools-doc package while installing -dev package [ Kumar Appaiah ] * Fix build system to avoid unresolved symbols, so that the build is possible with binutils-gold. Thanks to Peter Fritzsche for his help with this. (Closes: #558964) -- Kumar Appaiah Sat, 05 Dec 2009 08:59:30 -0600 speech-tools (1:1.2.96~beta-5) unstable; urgency=low * debian/control: + Updated Standards-Version to 3.8.3 + [Lintian] Removed duplicate section for speech-tools binary + [Lintian] Updated package descriptions + Wrapped up Depends and Build-Depends * Added debian/README.source file * debian/*.1: + [Lintian] Fixed manpage warnings of undefined .P * debian/patches/include_EST_ChannelType.diff: + Added missing patch description -- Kartik Mistry Fri, 18 Sep 2009 10:40:22 +0530 speech-tools (1:1.2.96~beta-4) unstable; urgency=low * debian/rules: + Move pm Perl script to simple-pitchmark to avoid using /usr/bin/pm as the executable name. (Closes: #520445) * debian/README.Debian: Explain pm renaming. * debian/manpage.1: Provide correct location of documentation. -- Kumar Appaiah Sat, 28 Mar 2009 09:58:45 -0500 speech-tools (1:1.2.96~beta-3) unstable; urgency=low * Add common description for all patches. * debian/patches/include_EST_ChannelType.diff: + Added to introduce parentheses around macro EST_CoefChannelId to avoid compiler warnings. * debian/patches/utils_EST_cutils.c.diff: + Update using Milan Zamazal's patch to honour $TMPDIR. * debian/control: + Standards Version is now 3.8.0 (no changes needed). + Maintainers' addresses changed to debian.org addresses. * debian/rules: + Add patch from Petr Salinger to allow building on Debian GNU/kFreeBSD. (Closes: #497923) + For now, don't add the placeholder man page for pm to avoid pm.1 conflict with powerman package. (Closes: #520001) -- Kumar Appaiah Sat, 21 Feb 2009 14:28:22 -0600 speech-tools (1:1.2.96~beta-2) unstable; urgency=low [ Kumar Appaiah ] * debian/control: + Add Vcs-Git and Vcs-Browser fields + Removed XS-Dm-Upload-Allowed field + Updated Homepage field * debian/patches: + Removed deprecated four clause BSD license using copyright_4clausefix.diff. + Add gcc_43_include.diff to fix FTBFS on GCC 4.3. Thanks to Martin Michlmayr for the heads up. (Closes: #455320) [ Kartik Mistry ] * debian/watch: + Updated to get latest upstream release (Closes: #456469) * debian/copyright: + Updated download location + Corrected copyright year * debian/control: + Updated description for libestools1.2-dev package as it doesn't contains docs anymore + Updated Standards-Version to 3.7.3 -- Kumar Appaiah Mon, 17 Dec 2007 08:22:55 +0530 speech-tools (1:1.2.96~beta-1) unstable; urgency=low [Kumar Appaiah] * Long awaited new upstream version (Closes: #437682) * debian/patches: + Split all patches, and use quilt for patch management + Use latest config.guess, config.sub * Minor manpage description fix * debian/rules: + Fix old autoconf files, using autotools-dev + Find versions using debian/get_versions.sh, instead of hard coding [Kartik Mistry] * Added debian/watch file from Kumar * debian/control: + Added homepage entry + Added Kumar Appaiah as co-maintainer list + Added XS-Dm-Upload-Allowed: yes to allow Debian-Maintainer upload * debian/copyright: moved copyright out of license section * debian/manpage.1: fixed lintian warning * debian/rules: includes base_class/*.cc which is badly needed for festival compilation -- Kartik Mistry Sun, 19 Nov 2007 17:39:39 +0530 speech-tools (1:1.2.3-11) unstable; urgency=low * debian/control: fixed lintian warning by replacing dependency ${Source-Version} with ${binary:Version} for arch any package * debian/rules: minor cleanups -- Kartik Mistry Tue, 17 Jul 2007 00:51:10 +0530 speech-tools (1:1.2.3-10) unstable; urgency=low * New maintainer (Closes: #429472) * Updated standards-version to 3.7.2 * Updated debhelper compability to 5 * debian/control: fixed long descriptions, minor cleanups, added ${misc:Depends} * debian/copyright: updated according to standard format * Removed useless maintainer scripts * Acknowledge previous NMUs (Closes: #357656, #343022) * libestools1.2-dev depends on libesd0-dev, libncurses5-dev (Closes: #420536) * config/gcc_defaults.mak: Fixed FTBFS with GCC 4.2 due to unsupported -fno-shared-data (Closes: #369380) * siod/slib.cc: Fixed issue with libestools1.2 's dynamic loading, Thanks to Javier Serrano Polo for patch (Closes: #407664) * debian/rules: fixed bashism (Closes: #378527) -- Kartik Mistry Thu, 21 Jun 2007 14:30:02 +0530 speech-tools (1:1.2.3-9.4) unstable; urgency=low * Rebuild using g++-4.1. -- Matthias Klose Sun, 3 Sep 2006 14:00:13 +0000 speech-tools (1:1.2.3-9.3) unstable; urgency=low * NMU as part of the GCC 4.1 transition. * Declare friend functions (closes: #357656). -- Martin Michlmayr Fri, 26 May 2006 17:12:18 +0200 speech-tools (1:1.2.3-9.2) unstable; urgency=high * Non-maintainer upload. * Fix FTBFS on 64 bit arches (Closes: #346264) -- Luk Claes Sat, 7 Jan 2006 19:16:21 +0100 speech-tools (1:1.2.3-9.1) unstable; urgency=high * Non-maintainer upload. * Remove trailing slash in cp -R command (Closes: #340084). * Remove g++-3.4 build-dep (Closes: #343022). -- Luk Claes Sun, 1 Jan 2006 18:56:06 +0100 speech-tools (1:1.2.3-9) unstable; urgency=low * Synchronize package from Ubuntu. * Fix FTBFS on kfreebsd-gnu (closes: #272465). -- Matthias Klose Tue, 2 Aug 2005 11:52:44 +0200 speech-tools (1:1.2.3-8ubuntu2) breezy; urgency=low * Add build dependency on g++-3.4. -- Matthias Klose Mon, 23 May 2005 23:29:15 +0200 speech-tools (1:1.2.3-8ubuntu1) breezy; urgency=low * CXX transition: Rename libestools1.2c102 to libestools1.2. * Fix FTBFS with gcc-3.4 (closes: #274556). Ubuntu 9049. -- Matthias Klose Mon, 23 May 2005 21:00:06 +0000 speech-tools (1:1.2.3-8) unstable; urgency=low * Added alaw processing code. -- Matthias Urlichs Fri, 16 Jul 2004 09:25:39 +0200 speech-tools (1:1.2.3-7) unstable; urgency=low * set SHARED=2 in config.in - required to build a shared Festival library -- Matthias Urlichs Thu, 29 Apr 2004 08:07:31 +0200 speech-tools (1:1.2.3-6) unstable; urgency=medium * Updated Maintainer adress to @d.o (pre-Sarge) * Standards-Version: 3.6.1 (no changes) -- Matthias Urlichs Mon, 5 Apr 2004 11:58:15 +0200 speech-tools (1:1.2.3-5) unstable; urgency=low * Provide for arch-indep data/script directory (/usr/share/...). -- Matthias Urlichs 28 May 2003 05:31:16 +0200 speech-tools (1:1.2.3-4) unstable; urgency=low * debian/rules Set debhelper compatibility level to 4 Fixed shared library handling Added ldconfig call to postrm -- Matthias Urlichs 18 May 2003 18:12:04 +0200 speech-tools (1:1.2.3-3) unstable; urgency=low * Explicitly cast EST_Token to EST_String -- Matthias Urlichs 18 May 2003 16:03:39 +0200 speech-tools (1:1.2.3-2) unstable; urgency=low * Install "undocumented" manpage * Suggest documentation in control file -- Matthias Urlichs 19 Apr 2003 20:45:21 +0200 speech-tools (1:1.2.3-1) unstable; urgency=low * New maintainer. * Bugs in (not uploaded) NMU / see earlier changelog entries: closes: #179490, #186268, #95886 -- Matthias Urlichs 18 Apr 2003 16:51:52 +0200 speech-tools (1:1.2.3-0.1) unstable; urgency=low * NMU. * New upstream version, corresponding to new Festival update, necessary for closing #179490. * Hopefully closes: #186268, #95886. -- Matthias Urlichs 18 Apr 2003 16:03:32 +0200 speech-tools (1:1.2.2-2.2) unstable; urgency=low * NMU. * Fix build problems (C++ standard conformance, mostly). Closes: 95886. * Rename the library .deb to ...c102 (C++ ABI migration). -- Matthias Urlichs 17 Apr 2003 21:14:40 +0200 speech-tools (1:1.2.2-2.1) unstable; urgency=low * NMU. * Fix build problems (C++ standard conformance, mostly). Closes: #95886. * Rename the library to ...c102 (C++ ABI migration) -- Matthias Urlichs Thu, 17 Apr 2003 03:01:07 +0200 speech-tools (1:1.2.2-2) unstable; urgency=low * Eek! ESD support is kind of broken. I've left it in, since I hope to fix it soon, but now the tools default to using a non-network audio protocol instead (which I think is more generally useful). -- David Huggins-Daines Fri, 24 Aug 2001 11:44:25 -0400 speech-tools (1:1.2.2-1) unstable; urgency=low * New upstream version. * Removed a few bits of cruft from patches. Lots of stuff got merged upstream, too. * Added build dependency on debhelper. (closes: #104999) * Finally use some sensible SONAMEs, and rearrange the package names accordingly (sorry folks) -- David Huggins-Daines Thu, 23 Aug 2001 21:36:54 -0400 speech-tools (1:1.2.1-2) unstable; urgency=low * Urgh ... update the shlibs file; since we moved some templates from Festival in here, it needs to depend on this version or higher. -- David Huggins-Daines Mon, 9 Apr 2001 15:18:06 -0400 speech-tools (1:1.2.1-1) unstable; urgency=low * Not using DBS anymore due to newfound knowledge of and influence over the EST/Festival configuration and build process. * Now installs configuration tree in /usr/lib/speech_tools/config/ where Festival (and other things like forthcoming Perl bindings, Festvox, etc) can find it. (part of the justification for doing the above) * Should compile on everything now due to a more intelligent system.sh (backported from 1.2.2 beta) * Add basic manual pages for na_record, na_play, ch_wave, ch_utt (these should actually be auto-generated for all programs, but unfortunately the system only does SGML evil) * Header files moved to /usr/include/speech_tools/, which seems like a better location for them. * No longer compiled against NAS (adds too many extra library dependencies, and isn't generally useful). * Patched na_record to support an -audiodevice parameter (also from 1.2.2 beta) * Actually include na_record in speech-tools-bin (duh!) * Instantiate some templates that Festival wants, to reduce the evil. * Apply serverdiphfdfix.patch and merge voxware.cc changes from http://festvox.org/packed/festival/1.4.1/PATCHES. -- David Huggins-Daines Sat, 7 Apr 2001 12:27:06 -0400 festival (1.4.1-2.1) unstable; urgency=low * NMU * Set the "SYSTEM_TYPE" to "Linux" in debian/patches/speech_tools_config_config. (closes: #84496) -- Adrian Bunk Fri, 16 Mar 2001 23:32:35 +0100 festival (1.4.1-2) unstable; urgency=low * Fix build on powerpc. Closes: #62133 * Fix spew of compiler warnings when building. * Recompile to fix esound dependency issues (feh). Closes: #74592, #56193 * Recompile to fix speech-tools dependency issues. Closes: #51630 * Mark /etc/festival.scm as a conffile. Closes: #52901 * Include ESD patch from #62597. Closes: #62597 -- David Huggins-Daines Wed, 8 Nov 2000 19:19:00 -0500 festival (1.4.1-1) unstable; urgency=low * Fixed m68k config file patch. Really, really closes: #51614, I mean it. * New upstream (bugfix) version. Now has esound support, included. -- David Huggins-Daines Sat, 15 Jan 2000 01:14:31 -0500 festival (1.4.0-4) unstable; urgency=low * Added m68k config files (sigh). Closes: #51614 * Compile with -fPIC. Closes: #51637 -- David Huggins-Daines Tue, 30 Nov 1999 10:47:38 -0500 festival (1.4.0-3) unstable; urgency=low * Use -l option to dh_shlibdeps. Closes: #50602, #50600 * Applied patch to sys-build.mak from Adam Heath. Closes: #50327 * Created a sparc_Linux2.2.mak. Closes: #50472 -- David Huggins-Daines Sat, 27 Nov 1999 13:57:01 -0500 festival (1.4.0-2) unstable; urgency=low * Turns out the authors forgot to include a generic configuration file for Linux 2.2 on i386. * Fixed a foible in debian/rules that caused the *.so links to be created in the wrong package, yuck. -- David Huggins-Daines Mon, 8 Nov 1999 23:35:27 -0500 festival (1.4.0-1) unstable; urgency=medium * New upstream version. Is now free software. Hooray. * Change in source format - festival and speech-tools now build from a single source package again, using Adam Heath's most excellent build system. This allows me to eliminate many (but not all) of the nasty hacks previously needed to build this package. An unfortunate side effect of this is that the version number of the debian package for speech-tools does not reflect the actual upstream numbering system. This is due to Festival and Speech-Tools having a build system that is designed with the intent that the packages will be built under the same directory together and installed in place. As the authors state, this reflects the purpose of Festival as a research system. It does, however, make life very difficult when trying to produce a distributable and policy-compliant Debian package. * Most of the documentation is in the festival-doc package now. This is from the prebuilt festdoc package provided upstream, as it appears to be quite impossible to build the docs without a specially modified version of doc++ (boooooo) -- David Huggins-Daines Sat, 6 Nov 1999 20:05:18 -0500 festival (1.3.1-4) unstable; urgency=low * Now installs festival.el properly. Also, did s/stml/sable/g. Run "say-minor-mode" to get a nice menu for reading your buffers. * Also builds info documentation (this creates a rather nasty source dependency on the voice packages, which I'll try to fix ASAP) * Also builds C++ API documentation in HTML. * Renamed ppc_Linux.mak to powerpc_Linux.mak (doh!) * Work around some RXP weirdness with respect to the location of the Sable DTD. (a real fix will have to wait until a standalone RXP is packaged and we can link against it) -- David Huggins-Daines Fri, 28 May 1999 00:15:49 -0400 festival (1.3.1-3) unstable; urgency=low * Cleaned out the Debian diff a bit * Added some .mak files that may or may not allow the package to build on non-i386 platforms. * Installing the Sable DTD with sgml-base now, so that it works automagically with Emacs, nsgmls, and the like. -- David Huggins-Daines Tue, 4 May 1999 18:40:00 -0400 festival (1.3.1-2.1) unstable; urgency=low * Fixed it to compile with glibc 2.1. * Recompiled so it _works_ under glibc 2.1, without random crashes. -- Joey Hess Fri, 26 Mar 1999 21:42:29 -0800 festival (1.3.1-2) unstable; urgency=low * Changed the name of ellpc16k to ellpc11k. * Recommend the kallpc* packages too. * Modified voices.scm so it will support the kal voice too. -- Joey Hess Sun, 31 Jan 1999 19:47:30 -0800 festival (1.3.1-1) unstable; urgency=low * New upstream version. * Linked dynamically to new speech tools libraries. * Added festival-dev package (#32058).x -- Joey Hess Thu, 28 Jan 1999 22:12:22 -0800 festival (1.3.0-3) unstable; urgency=low * Include Sable.v0_2.dtd in the lib directory (#31304). -- Joey Hess Tue, 5 Jan 1999 14:20:41 -0800 festival (1.3.0-2) unstable; urgency=low * Made short description not start with package name. -- Joey Hess Mon, 31 Aug 1998 13:40:35 -0700 festival (1.3.0-1) unstable; urgency=low * New upstream release. * Updated copyright file. * Currently depends on xlib6, I think this is due to a bug in nas. -- Joey Hess Wed, 26 Aug 1998 15:57:21 -0700 festival (1.2.1-9) unstable; urgency=low * Corrected name of festvox-kdlpc16 in control file (#23886). -- Joey Hess Thu, 25 Jun 1998 11:14:52 -0700 festival (1.2.1-8) unstable; urgency=low * Added nas support (#22359). Disabled by default, edit /etc/festival.scm to enable. -- Joey Hess Wed, 13 May 1998 19:09:48 -0700 festival (1.2.1-7) unstable; urgency=low * Rebuilt linked to a version of speech-tools that supports linux16 audio. However, it will continue to use 8 bit audio by default. * Added a /etc/festival.scm (equivialnt to siteinit.scm that may be referred to in festival's documentation) to make it easy to switch to 16 bit sound (part of #22359). -- Joey Hess Tue, 12 May 1998 12:44:17 -0700 festival (1.2.1-6) unstable; urgency=low * Removed old unused debian/config file. * Do not compress some examples that are executables. -- Joey Hess Sun, 8 Mar 1998 20:36:38 -0800 festival (1.2.1-5) unstable; urgency=low * Fixed package descrption spelling (#18973). -- Joey Hess Thu, 5 Mar 1998 17:03:48 -0800 festival (1.2.1-4) unstable; urgency=low * New standards-version. * Rebuilt with debhlper 0.60 to fix many mode 444 and 555 files. * Moved audsp to /usr/lib/festival/audsp, becuase it's an internal command I don't want to write a man page for. -- Joey Hess Mon, 9 Feb 1998 14:42:55 -0800 festival (1.2.1-3) unstable; urgency=low * Applied patch from author to fix segfault problem (#16188). -- Joey Hess Tue, 23 Dec 1997 11:04:10 -0500 festival (1.2.1-2) unstable; urgency=low * token.cc: Applied patch to fix number pronounciation (#15919). * tts.scm: Fixed to call nsgmls, not nsgmls-1.0 (#15928). -- Joey Hess Sun, 14 Dec 1997 13:33:33 -0500 festival (1.2.1-1) unstable; urgency=low * New upstream release. * Split out speech-tools sources, so I could use pristine sources. * Use debhelper. * Fixed some examples files to work with modified festival paths. * examples/benchmark: default to reading /usr/doc/festival/README. * lib/voices.scm: added el_diphone to the voice search list, so festvox-ellpc16k will work. -- Joey Hess Sun, 26 Oct 1997 23:34:42 -0500 festival (1.1.1-1) unstable; urgency=low * First release. -- Joey Hess Mon, 14 Jul 1997 23:29:25 -0400 debian/rules0000755000000000000000000001601411733714225010255 0ustar #!/usr/bin/make -f # export DH_VERBOSE=1 export DEB_BUILD_HARDENING=1 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) MAJORVER=$(shell sh ./debian/get_version.sh|awk '{print $$2}') FULLVER=$(shell sh ./debian/get_version.sh|awk '{print $$1}') DEBVER=$(shell dpkg-parsechangelog |awk '/^Version/ { print $$2}') SBT := $(shell pwd)/debian/speech-tools SBTM:= $(SBT)/usr/share/man/man1 S_PROGRAMS = bcat ch_lab ch_track ch_utt ch_wave dp na_play na_record ngram_build \ ngram_test ols ols_test pda pitchmark scfg_make scfg_parse scfg_test \ scfg_train sig2fv sigfilter spectgen tilt_analysis tilt_synthesis \ viterbi wagon wagon_test wfst_build wfst_run S_DOC = na_play na_record ch_wave ch_utt ch_track ch_lab S_UNDOC = bcat dp ngram_build \ ngram_test ols ols_test pda pitchmark scfg_make scfg_parse scfg_test \ scfg_train sig2fv sigfilter spectgen tilt_analysis tilt_synthesis \ viterbi wagon wagon_test wfst_build wfst_run make_wagon_desc \ raw_to_xgraph resynth simple-pitchmark S_SCRIPTS = raw_to_xgraph.prl make_wagon_desc.sh resynth.sh override_dh_auto_configure: #Avoid conflicting with upstreams build system override_dh_auto_test: #Upstream states test is only for their local development not a functional test override_dh_auto_build: ifneq "$(wildcard /usr/share/misc/config.sub)" "" cp -f /usr/share/misc/config.sub config.sub endif ifneq "$(wildcard /usr/share/misc/config.guess)" "" cp -f /usr/share/misc/config.guess config.guess endif $(MAKE) PROJECT_VERSION=$(shell dpkg-parsechangelog|grep "Version:"|sed 's/^.*://;s/~.*$$//') PROJECT_MAJOR_VERSION=$(MAJORVER) override_dh_auto_clean: ifneq "$(wildcard /usr/share/misc/config.sub)" "" cp -f /usr/share/misc/config.sub config.sub endif ifneq "$(wildcard /usr/share/misc/config.guess)" "" cp -f /usr/share/misc/config.guess config.guess endif $(MAKE) clean SYSTEM_TYPE=unknown_DebianGNULinux override_dh_clean: find -name make.depend -print0 | xargs -0r $(RM) find -name make.include -print0 | xargs -0r $(RM) find bin/ \( -name SCCS -o -name RCS -o -name CVS \) -prune \ -o -type f ! -name Makefile -print0 | xargs -0r $(RM) $(RM) config/modincludes.inc config/system.mak config.log \ config.status config.cache libestools.so $(RM) lib/libestools.so* $(RM) config.sub config.guess dh_clean override_dh_auto_install: dh_install -p libestools$(MAJORVER) lib/*.so.$(FULLVER) /usr/lib/$(DEB_HOST_MULTIARCH) dh_installdirs -p speech-tools usr/bin usr/share/man/man1 (cd main && cp $(S_PROGRAMS) $(SBT)/usr/bin) (cd scripts && \ for i in $(S_SCRIPTS); do \ dest=`echo $$i | sed -e 's/\.\(prl\|sh\)$$//'`; \ sed -e 's,__PERL__,/usr/bin/perl,g' \ <$$i >$(SBT)/usr/bin/$$dest; \ chmod +x $(SBT)/usr/bin/$$dest; \ done) # Handle the install of pm which is renamed simple-pitchmark separately. (cd scripts && \ sed -e 's,__PERL__,/usr/bin/perl,g' \ $(SBT)/usr/bin/simple-pitchmark; \ chmod +x $(SBT)/usr/bin/simple-pitchmark;) dh_install -p libestools$(MAJORVER)-dev lib/*.a /usr/lib/$(DEB_HOST_MULTIARCH) dh_install -p libestools$(MAJORVER)-dev include/*.h /usr/include/speech_tools/ dh_install -p libestools$(MAJORVER)-dev include/unix/*.h /usr/include/speech_tools/unix/ # Note: these are possibly internal headers (C++ lossage) dh_install -p libestools$(MAJORVER)-dev include/instantiate/*.h /usr/include/speech_tools/instantiate/ dh_install -p libestools$(MAJORVER)-dev include/sigpr/*.h /usr/include/speech_tools/sigpr/ dh_install -p libestools$(MAJORVER)-dev include/ling_class/*.h /usr/include/speech_tools/ling_class/ dh_install -p libestools$(MAJORVER)-dev include/rxp/*.h /usr/include/speech_tools/rxp/ dh_install -p libestools$(MAJORVER)-dev base_class/*.h /usr/include/speech_tools/ dh_install -p libestools$(MAJORVER)-dev base_class/*.cc /usr/include/speech_tools/base_class/ # Needed to compile things against speech_tools dh_install -p libestools$(MAJORVER)-dev make.include /usr/lib/speech_tools/ dh_install -p libestools$(MAJORVER)-dev lib/siod/*.scm /usr/lib/speech_tools/lib/siod/ dh_install -p libestools$(MAJORVER)-dev config/* /usr/lib/speech_tools/config/ dh_install -p libestools$(MAJORVER)-dev config/compilers/* /usr/lib/speech_tools/config/compilers/ dh_install -p libestools$(MAJORVER)-dev config/configs/* /usr/lib/speech_tools/config/configs/ dh_install -p libestools$(MAJORVER)-dev config/modules/* /usr/lib/speech_tools/config/modules/ dh_install -p libestools$(MAJORVER)-dev config/rules/* /usr/lib/speech_tools/config/rules/ dh_install -p libestools$(MAJORVER)-dev config/systems/* /usr/lib/speech_tools/config/systems/ chmod +x debian/libestools$(MAJORVER)-dev/usr/lib/speech_tools/config/rules/modules.sh chmod +x debian/libestools$(MAJORVER)-dev/usr/lib/speech_tools/config/system.sh override_dh_link: dh_link -p libestools$(MAJORVER) \ usr/lib/$(DEB_HOST_MULTIARCH)/libestbase.so.$(FULLVER) usr/lib/$(DEB_HOST_MULTIARCH)/libestbase.so.$(MAJORVER) \ usr/lib/$(DEB_HOST_MULTIARCH)/libestools.so.$(FULLVER) usr/lib/$(DEB_HOST_MULTIARCH)/libestools.so.$(MAJORVER) \ usr/lib/$(DEB_HOST_MULTIARCH)/libeststring.so.$(FULLVER) usr/lib/$(DEB_HOST_MULTIARCH)/libeststring.so.$(MAJORVER) dh_link -p libestools$(MAJORVER)-dev \ usr/lib/$(DEB_HOST_MULTIARCH)/libestbase.so.$(MAJORVER) usr/lib/$(DEB_HOST_MULTIARCH)/libestbase.so \ usr/lib/$(DEB_HOST_MULTIARCH)/libestools.so.$(MAJORVER) usr/lib/$(DEB_HOST_MULTIARCH)/libestools.so \ usr/lib/$(DEB_HOST_MULTIARCH)/libeststring.so.$(MAJORVER) usr/lib/$(DEB_HOST_MULTIARCH)/libeststring.so # Festival related evil dh_link -p libestools$(MAJORVER)-dev \ /usr/lib/$(DEB_HOST_MULTIARCH)/libestbase.so /usr/lib/speech_tools/lib/libestbase.so \ /usr/lib/$(DEB_HOST_MULTIARCH)/libestbase.a /usr/lib/speech_tools/lib/libestbase.a \ /usr/lib/$(DEB_HOST_MULTIARCH)/libeststring.so /usr/lib/speech_tools/lib/libeststring.so \ /usr/lib/$(DEB_HOST_MULTIARCH)/libeststring.a /usr/lib/speech_tools/lib/libeststring.a \ /usr/lib/$(DEB_HOST_MULTIARCH)/libestools.so /usr/lib/speech_tools/lib/libestools.so \ /usr/lib/$(DEB_HOST_MULTIARCH)/libestools.a /usr/lib/speech_tools/lib/libestools.a \ /usr/include/speech_tools /usr/lib/speech_tools/include # Compatibility with past packages dh_link -p libestools$(MAJORVER)-dev /usr/include/speech_tools /usr/include/estools override_dh_installdocs: dh_installdocs -pspeech-tools -plibestools$(MAJORVER) -plibestools$(MAJORVER)-dev README override_dh_installman: mkdir -p $(SBTM) install -m 0644 $(patsubst %,debian/%.1,$(S_DOC)) $(SBTM) install -m 0644 debian/manpage.1 $(SBTM)/speech-tools.1 gzip -9 $(SBTM)/speech-tools.1 for f in $(S_UNDOC) ; do ln -sf speech-tools.1.gz $(SBTM)/$$f.1.gz ; done override_dh_makeshlibs: dh_makeshlibs -p libestools$(MAJORVER) -V "libestools$(MAJORVER) (>= $(DEBVER))" override_dh_shlibsdeps: # speech_tools should not depend on itself dh_shlibdeps -plibestools$(MAJORVER) -l debian/libestools$(MAJORVER)/usr/lib # these ones should depend on speech_tools (and associated libs) dh_shlibdeps -pspeech-tools -Llibestools$(MAJORVER) -l debian/libestools$(MAJORVER)/usr/lib %: dh $@ # debian/mdoc-template0000644000000000000000000000060211711053613011640 0ustar .Dd April 5, 2001 .Dt $name 1 .Os "Edinburgh Speech Tools" .Sh NAME .Nm $name .Nd $desc .Sh SYNOPSIS .Nm $name .Op Fl option Ar arg .Sh DESCRIPTION $desc The following option flags are recognized: .Bl -tag -width 4n -offset indent -compact .It Fl option Ar arg description .El .Sh ENVIRONMENT .Bl -tag -width 4n -offset indent -compact $envvars .El .Sh EXAMPLES .Sh BUGS .Sh SEE ALSO debian/na_play.10000644000000000000000000000773011711053613010700 0ustar .Dd April 4, 2001 .Dt NA_PLAY 1 .Os "Edinburgh Speech Tools" .Sh NAME .Nm na_record .Nd play waveform files on audio device .Sh SYNOPSIS .Nm na_play .Op Fl h .Op Fl itype Ar type .Op Fl n Ar channels .Op Fl f Ar sample rate .Op Fl ibo Ar byteorder .Op Fl iswap .Op Fl istype Ar type .Op Fl c Ar channel .Op Fl start Ar time .Op Fl end Ar time .Op Fl from Ar sample .Op Fl to Ar sample .Op Fl p Ar protocol .Op Fl command Ar command .Op Fl basic .Op Fl quality Ar high | low .Op Fl server Ar host .Op Fl scale Ar scale .Op Fl v .Op Fl wait .Ar input files ... .Sh DESCRIPTION .Nm na_play plays digital audio data to the system's audio input device from the specified file(s). It supports a variety of file formats and native audio devices. .Pp The following option flags are recognized: .Pp .Bl -tag -width 4n -offset indent -compact .It Fl h Prints a short summary of usage to standard output. .It Fl itype Ar type Input file type. Usually, the input type can be determined from the file's headers, so this option is not required except for raw (unheadered) data. Supported types are currently: nist, est, esps, snd, riff, aiff, audlab, raw, ascii. .It Fl n Ar channels Number of channels, in an unheadered input file. Again, this can usually be determined from the headers. Default is 1. .It Fl f Ar sampling rate Sampling rate, for an unheadered input file. Default is 16000. .It Fl ibo Ar byte order Byte order, for an unheadered input file. Default is system byte order. Recognized values are: MSB, LSB, native, nonnative. .It Fl iswap Swap bytes in an unheadered input file. .It Fl istype Ar type Sample type for an unheadered input file. Recognized values are: short, mulaw, byte, ascii. .It Fl c Ar channel Select a single channel (starting at 0) for playback. This option plays only the specified channel and discards all others. .It Fl start Ar time Select a subsection of the file, starting at this time (specified in seconds). .It Fl end Ar time Select a subsection of the file, ending at this time (specified in seconds). .It Fl from Ar sample Select a subsection of the file, starting at this offset (specified in number of samples). .It Fl to Ar sample Select a subsection of the file, ending at this offset (specified in number of samples). .It Fl p Ar protocol Use the specified audio device protocol. The list of supported types varies between platforms, and can be obtained using the .Fl h flag. .It Fl command Ar command If the "audio_command" protocol is specified, this argument must be given to select the command used to play the waveform. A temporary file is created and passed in the environment variable FILE. The sample rate is passed in the environment varialbe SR. .It Fl basic Treat unheadered input files as 8kHz mu-law data (i.e. audio/basic MIME type) .It Fl quality Ar high | low Select the quality of output. "high" will ensure that proper resampling is used. "low" means to play as fast as possible with a minimum of processor time. .It Fl server Ar host Specifies the host to play sound on, when using a network-aware audio protocol (such as NAS) .It Fl scale Ar scale Change the gain (volume) of the signal. The argument is a number relative to 1.0, which is the default. .It Fl v Be verbose (i.e. print file names when playing) .It Fl wait Pause for a keystroke between each file. .El .Sh ENVIRONMENT .Bl -tag -width 4n -offset indent -compact .It Ev NA_PLAY_PROTOCOL Audio protocol to use (as in the .Fl p flag) .It Ev NA_PLAY_COMMAND Command used to play audio when using the audio_command protocol. .It Ev NA_PLAY_HOST Host to play audio on when using a network audio protocol. .It Ev NA_PLAY_QUALITY Playback quality (low or high) .El .Sh EXAMPLES To play the section of foo.wav from 1.5 to 3.2 seconds: .Dl "$ na_play -start 1.5 -end 3.2 foo.wav" To play samples 3600 to 42000 of channel 1 of bar.wav: .Dl "$ na_play -from 3600 -to 4200 -c 1 foo.wav" .Sh BUGS The usage information isn't entirely correct. The audio_command protocol generates temporary files insecurely. .Sh SEE ALSO .Xr na_record 1 debian/README.Debian0000644000000000000000000000042311711053613011224 0ustar speech-tools for Debian ======================= The `pm' perl script is distributed at `simple-pitchmark' to avoid interfering with the namespace of other packages which possess the /usr/bin/pm binary. -- Kumar Appaiah , Sat, 28 Mar 2009 09:58:04 -0500 debian/ch_utt.10000644000000000000000000000164211711053613010537 0ustar .Dd April 5, 2001 .Dt CH_UTT 1 .Os "Edinburgh Speech Tools" .Sh NAME .Nm ch_utt .Nd change/copy utterance file .Sh SYNOPSIS .Nm ch_utt .Op Fl h .Op Fl f Ar feature .Op Fl o Ar output file .Op Fl otype Fl file type .Op Fl sysdir Fl directory .Ar input file .Sh DESCRIPTION .Nm ch_utt copies an input utterance file to an output file, optionally changing its format or performing other operations along the way. .Pp The following option flags are recognized: .Pp .Bl -tag -width 4n -offset indent -compact .It Fl h Print a short summary of options to standard output .It Fl f Ar feature Feature to use as item ID when merging utterances. .It Fl o Ar output file Output file name .It Fl otype Fl file type Output file type. For the full list of supported file formats, see the output of the .Fl h option. .It Fl sysdir Fl directory Look for unqualified system entities in this directory .El .Sh SEE ALSO .Xr ch_track 1 .Xr ch_lab 1 debian/ch_track.10000644000000000000000000000771211711053613011033 0ustar .Dd April 5, 2001 .Dt CH_TRACK 1 .Os "Edinburgh Speech Tools" .Sh NAME .Nm ch_track .Nd change/copy track file .Sh SYNOPSIS .Nm ch_track .Op Fl h .Op Fl itype Ar file type .Op Fl ctype Ar contour type .Op Fl s Ar frame spacing .Op Fl c Ar channels .Op Fl start Ar time .Op Fl end Ar time .Op Fl from Ar frame .Op Fl to Ar frame .Op Fl o Ar file .Op Fl otype Ar file type .Op Fl S Ar frame spacing .Op Fl info .Op Fl track_names Ar file .Op Fl diff .Op Fl delta Ar length .Op Fl sm Ar time .Op Fl smtype Ar median | mean .Op Fl style Ar style .Op Fl t Ar threshold .Op Fl neg Ar label .Op Fl pos Ar label .Op Fl pc Ar longest | first .Ar input file .Sh DESCRIPTION .Nm ch_track copies an input track file to an output track file, optionally performing various operations along the way. .Pp The following option flags are recognized: .Pp .Bl -tag -width 4n -offset indent -compact .It Fl h Print a short summary of options to standard output. .It Fl itype Ar file type Input file type (optional). If no type is specified, type is automatically derived from the input file's header. The list of supported types may depend on your particular Speech Tools installation. For a full listing, see the output of the .Fl h option. .It Fl ctype Ar F0 | track Contour type, either F0 (fundamental frequency) or track. .It Fl s Ar time Frame spacing of input in seconds, for unheadered input file. .It Fl c Ar channels Select a subset of channels (starting from 0). Tracks can have multiple channels. This option specifies a list of channel numbers which are to be used for processing. .It Fl start Ar time Extract track starting at this time, specified in seconds. .It Fl end Ar time Extract track ending at this time, specified in seconds. .It Fl from Ar frame Extract track starting at this offset, specified in frames. .It Fl to Ar frame Extract track ending at this offset, specified in frames. .It Fl o Ar file Filename to write output to. Defaults to standard output. .It Fl otype Ar file type Output file type. If unspecified, ascii is assumed. For the full list of supported types, see the output of the .Fl h option. .It Fl S Ar time Frame spacing of output in seconds. If this is different from the input spacing, the contour will be resampled. .It Fl info Print information about the input file and its headers. This option gives useful information such as file length, file type, and channel names. No other actions are taken, and no output file produced. .It Fl track_names Ar file File containing new names for output channels .It Fl diff Differentiate contour. This performs simple numerical differentiation on the contour by subtracting the amplitude of the current frame from the amplitude of the next. Although quick, this technique is crude and not recommended as the estimation of the derivate is done on only one point. .It Fl delta Ar length Make delta coefficients (better form of differentiation). The argument to this option is the regression length of the delta calculation and can be between 2 and 4. .It Fl sm Ar time Length of smoothing window in seconds. Various types of smoothing are available for tracks. This option specifies length of the smoothing window which affects the degree of smoothing, i.e. a longer value means more smoothing. .It Fl smtype Ar median | mean Type of smoothing. .It Fl style Ar style Convert track to another form. Currently only one form, "label", is supported. This uses a specified cutoff to make a label file, with two labels, one for above the cutoff (see the .Fl pos option), and one for below (see the .Fl neg option). .It Fl t Ar threshold Threshold for track to label conversion. .It Fl neg Ar label Name of negative label in track to label conversion. .It Fl pos Ar label Name of positive label in track to label conversion. .It Fl pc Ar longest | first Combind given tracks in parallel. If option is "longest", pad shorter tracks to longest, else if "first", pad or cut them as appropriate to match the length of the first input track. .El .Sh SEE ALSO .Xr ch_lab 1 .Xr ch_utt 1 debian/manpage.10000644000000000000000000000055211711053613010660 0ustar .TH "SPEECH-TOOLS" "1" "August 2007" "speech-tools" "User Commands" .SH NAME speech-tools \- Programs for audio and speech manipulation .SH DESCRIPTION This program does not have a dedicated manual page. .BR Please refer to the documentation, in .BR /usr/share/doc/speech-tools-doc/doc/index.html .BR It is distributed in the Debian package .I speech-tools-doc. debian/get_version.sh0000644000000000000000000000051611711053613012046 0ustar #!/bin/sh # Written by: Kumar Appaiah # This scripts extracts the version of the package for the soname to # be fixed. FULLVER=`dpkg-parsechangelog |awk '/^Version/ { sub(/^1:/, "", $2); sub(/~.*$/, "", $2);print $2}'` MAJORVER=`echo $FULLVER|sed 's/^\([^\.]\+\.[^\.]\)\.[^\.]\+$/\1/'` echo $FULLVER $MAJORVER debian/libestools2.1.shlibs0000644000000000000000000000013111711053613012765 0ustar libeststring 2.1 libestools2.1 libestbase 2.1 libestools2.1 libestools 2.1 libestools2.1 debian/shlibs-override0000644000000000000000000000005711711053613012212 0ustar libeststring 2.1 libestbase 2.1 libestools 2.1 debian/control0000644000000000000000000000513712142706256010604 0ustar Source: speech-tools Section: sound Priority: optional Maintainer: Jean-Philippe MENGUAL Uploaders: Kumar Appaiah , Peter Drysdale Build-Depends: debhelper (>= 8), autotools-dev, gawk | awk, libaudiofile-dev, libncurses5-dev, quilt (>= 0.40), libpulse-dev, libasound2-dev [linux-any], hardening-wrapper Standards-Version: 3.9.3 Homepage: http://festvox.org/packed/festival/ Vcs-Git: git://git.debian.org/git/tts/speech-tools.git Vcs-Browser: http://git.debian.org/?p=tts/speech-tools.git Package: libestools2.1 Architecture: any Multi-arch: same Section: libs Depends: ${shlibs:Depends}, ${misc:Depends} Pre-Depends: multiarch-support Conflicts: speech-tools1, libestools1.2c102 Replaces: speech-tools1, libestools1.2c102, Description: Edinburgh Speech Tools Library The Edinburgh Speech Tools Library is a collection of C++ class, functions and related programs for manipulating the sorts of objects used in speech processing. Package: libestools2.1-dev Architecture: any Section: libdevel Depends: ${misc:Depends}, libc6-dev, libestools2.1 (= ${binary:Version}), libasound2-dev [linux-any], libncurses5-dev Conflicts: speech-tools-dev, libestools2.0-dev, libestools1.2-dev Replaces: speech-tools-dev, libestools2.0-dev, libestools1.2-dev Provides: libestools-dev, libestools2.0-dev Suggests: speech-tools-doc Description: Edinburgh Speech Tools Library - developer's libraries The Edinburgh Speech Tools Library is a collection of C++ class, functions and related programs for manipulating the sorts of objects used in speech processing. . This package contains the header files and static libraries. Package: speech-tools Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Conflicts: speech-tools-bin Replaces: speech-tools-bin Suggests: speech-tools-doc Description: Edinburgh Speech Tools - user binaries This package contains the various highly useful utility programs that use and accompany the Edinburgh Speech Tools Library. Audio software and some basic signal processing software is included in this package. . The following programs are available: na_play: generic playback program for use with net_audio and CSTR ao. ch_wave: Waveform file conversion program. ch_lab: label file conversion program. ch_track: Track file conversion program. wagon: a CART tree build and test program . See /usr/share/doc/speech-tools/README for detail list of programs available. debian/ch_lab.10000644000000000000000000000547411711053613010470 0ustar .Dd April 5, 2001 .Dt CH_LAB 1 .Os "Edinburgh Speech Tools" .Sh NAME .Nm ch_lab .Nd change/copy label files .Sh SYNOPSIS .Nm ch_lab .Op Fl S Ar frame spacing .Op Fl start Ar time .Op Fl end Ar time .Op Fl ext Ar file extension .Op Fl extract Ar file .Op Fl extend Ar time .Op Fl f Ar sample frequency .Op Fl lf Ar sample frequency .Op Fl itype Ar file type .Op Fl key Ar key file .Op Fl lablist Ar list of labels .Op Fl length Ar time .Op Fl map Ar map file .Op Fl name Ar feature name .Op Fl class Ar class .Op Fl o Ar output file .Op Fl otype Ar file type .Op Fl pad Ar high | low .Op Fl pos Ar list of labels .Op Fl q Ar timestep .Op Fl range Ar range .Op Fl sed Ar sed file .Op fl shift Ar time delta .Op Fl style Ar output stype .Op Fl vocab Ar vocab file .Op Fl verify .Op Fl nopath .Op Fl base .Op Fl combine .Op Fl divide .Op Fl h .Ar input files ... .Sh DESCRIPTION .Nm ch_lab copies from one or more input label files to an output label file, optionally performing various operations along the way. .Pp The following option flags are recognized: .Pp .Bl -tag -width 4n -offset indent -compact .It Fl h Print a summary of usage to standard output. .It Fl S Ar frame spacing frame spacing of output .It Fl start Ar time start time, in seconds, for label extraction .It Fl end Ar time end time, in seconds, for label extraction .It Fl ext Ar file extension filename extension to use for multiple output files .It Fl extract Ar file extract a single file from a list of files .It Fl extend Ar time extend track file by .Ar time seconds beyond label file .It Fl f Ar sample frequency sample frequency of label file .It Fl lf Ar sample frequency sample frequency for labels .It Fl itype Ar file type type of input label file: esps htk ogi .It Fl key Ar key file key label file .It Fl lablist Ar list list of labels to be considered as blank .It Fl length Ar time length of track produced, in seconds .It Fl map Ar map file label mapping file .It Fl name Ar feature name eg. Fo Phoneme .It Fl class Ar class name of class defined in op file .It Fl o Ar output file output file name .It Fl otype Ar file type output file type: xmg, ascii, esps, htk .It Fl pad Ar high | low pad with high or low values .It Fl pos Ar list list of labels to be regarded as 'pos' .It Fl q Ar timestep quantize label timings to nearst value .It Fl range Ar range difference between high and low values .It Fl sed Ar sed file perform regex editing using sed file .It fl shift Ar time delta shift the times of the labels .It Fl style Ar output style output style e.g. track .It Fl vocab Ar file file containing list of words in vocabulary .It Fl verify check that only labels in vocab file are in label file .It Fl nopath ignore pathnames when searching label lists .It Fl base use base filenames for lists of label files .It Fl combine .It Fl divide .El .Sh SEE ALSO .Xr ch_wave 1 .Xr ch_track 1 debian/README.source0000644000000000000000000000130711711053613011344 0ustar This package uses quilt to maintain local changes to the speech-tools distribution. The Debian-specific patches are maintained in the debian/patches/ directory. To apply all the patches, preparing the source for building, use: debian/rules patch To revert the patches, preparing to build a source package, use: debian/rules unpatch You do not need to manually execute these targets when building the package; they are part of the debian/rules target chain. For more information on the quilt integration with Debian packages, as well as editing, adding or removing patches, please see the quilt documentation; in recent versions of the Debian package of quilt, See: /usr/share/doc/quilt/README.source debian/patches/0000755000000000000000000000000012143204767010623 5ustar debian/patches/Makefile.diff0000644000000000000000000000171711711053613013170 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools --- speech-tools-1.2.3.orig/Makefile +++ speech-tools-1.2.3/Makefile @@ -59,7 +59,7 @@ ALL = .config_error .sub_directories # Try and say if config hasn't been created -config_dummy := $(shell test -f config/config || ( echo '*** '; echo '*** Making default config file ***'; echo '*** '; ./configure; ) >&2) +#config_dummy := $(shell test -f config/config || ( echo '*** '; echo '*** Making default config file ***'; echo '*** '; ./configure; ) >&2) # force a check on the system file system_dummy := $(shell $(MAKE) -C $(TOP)/config -f make_system.mak TOP=.. system.mak) @@ -105,8 +105,9 @@ exit 2 ;\ fi -config/config: config/config.in config.status - ./config.status +# This clashes badly with Debian package setup +#config/config: config/config.in config.status +# ./config.status configure: configure.in autoconf debian/patches/audio_gen_audio.cc.diff0000644000000000000000000000315111711053613015144 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, changes the default orfer of sound output methods Index: b/audio/gen_audio.cc =================================================================== --- a/audio/gen_audio.cc 2011-10-27 09:46:01.000000000 +1100 +++ b/audio/gen_audio.cc 2011-11-11 08:46:56.000000000 +1100 @@ -95,6 +95,10 @@ protocol = "macosxaudio"; else if (win32audio_supported) protocol = "win32audio"; + else if (esd_supported) + protocol = "esdaudio"; + else if (nas_supported) + protocol = "netaudio"; else if (mplayer_supported) protocol = "mplayeraudio"; else @@ -243,10 +247,6 @@ audios += "sunaudio"; // we always support this in spite of the hardware audios += " audio_command"; - if (nas_supported) - audios += " netaudio"; - else if (esd_supported) - audios += " esdaudio"; if (sun16_supported) audios += " sun16audio"; if (freebsd16_supported) @@ -285,11 +285,7 @@ protocol = sr; else if (protocol == "") { - if (nas_supported) - protocol = "netaudio"; // the default protocol - else if (esd_supported) - protocol = "esdaudio"; // the default protocol - else if (sun16_supported) + if (sun16_supported) protocol = "sun16audio"; else if (freebsd16_supported) protocol = "freebsd16audio"; @@ -299,6 +295,10 @@ protocol = "irixaudio"; else if (win32audio_supported) protocol = "win32audio"; + else if (esd_supported) + protocol = "esdaudio"; + else if (nas_supported) + protocol = "netaudio"; else if (mplayer_supported) protocol = "mplayeraudio"; else debian/patches/config_config.diff0000644000000000000000000001221512142706253014244 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools Index: speech-tools/config/config =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ speech-tools/config/config 2012-11-25 22:13:21.583834278 +0100 @@ -0,0 +1,172 @@ +########################################################-*-mode:Makefile-*- +## ## +## Edinburgh Speech Tools: local configuration file ## +## ## +########################################################################### +## +## Specific config file for local installation +## + +########################################################################### +## Where the speech_tools tree will be installed. +## +## The default is that the speech_tools will remain where it is compiled. +## +## You may need to set this explicitly if automounter or NFS +## side effects cause problems + +EST_HOME := $(shell (cd $(EST); pwd)) + +########################################################################### +## System type. +## +## The system will attempt to determine this, but if it is wrong you may +## need to set it explicitly. The definitions are in +## systems/$(SYSTEM_TYPE).mak +## +## Format: machine _ os osrev +## +## Examples: sparc_SunOS5 intel_Linux2.0 + +SYSTEM_TYPE=unknown_DebianGNULinux + +########################################################################### +## Compiler. +## The definitions are in compilers/$(COMPILER).mak +## Examples: gcc suncc egcs gcc28 + +COMPILER=gcc + +########################################################################### +## Java system to use if you include the Java interface. +## Examples jdk + +JAVA_COMPILER=jdk + +########################################################################### +## Pre defined configurations (for directory locations, setup peculiarities +## etc.) +## +## Examples: default cstr rjc + +CONFIGURATION = + +########################################################################### +## Compilation options. +## +## OPTIMISE=4 will turn off DEBUG + +OPTIMISE=3 +WARN=1 +# VERBOSE=1 +DEBUG=1 +# PROFILE=gprof +SHARED=2 + +## Directory specific selections which override the above + +OPTIMISE_sigpr = 3 + +########################################################################### +## Feature selection. +## +## Select modules to include. + +## AUDIO +## various audio devices are supported directly but you can always +## specify a program to play files in a desired format. + +## NCD's network audio system, This is recommended. +# INCLUDE_MODULES += NAS_AUDIO + +## Elightenment Sound Demon, for KDE etc. +INCLUDE_MODULES += ESD_AUDIO + +## Native audio for your platform (sun, linux, freebsd, irix, windows) +INCLUDE_MODULES += NATIVE_AUDIO + +## Special code to run Windows MPLAYER +# INCLUDE_MODULES += MPLAYER_AUDIO + +## USER INTERFACE + +## Command-line editing. This option gives command line editing and history. +## It may not work under all systems, so may be optionally omitted. +INCLUDE_MODULES += EDITLINE + +# speech recognition +#INCLUDE_MODULES += ASR + + +## Scheme + +## Scheme In One Defun interpreter and data structures +INCLUDE_MODULES += SIOD + +## The following subsystems depend on the Scheme subsystem and so +## must be removed if Scheme is not included + +INCLUDE_MODULES += WAGON +INCLUDE_MODULES += SCFG +INCLUDE_MODULES += WFST +INCLUDE_MODULES += OLS + +## Java + + +## Define this to include the pure Java code +# INCLUDE_MODULES += JAVA +# JAVA_HOME = PUT_SOMETHING_HERE + +## Define this to compile the Java interface to the EST classes. You +## need to compile with the SHARED option above. This is required for +## fringe. +# INCLUDE_MODULES += JAVA_CPP + +## Define this to have the Java code use the Java Media API to +## play sounds etc. +# INCLUDE_MODULES += JAVA_MEDIA +# JMF_HOME = PUT_SOMETHING_HERE + +## Richard Tobin's RXP XML parser. +INCLUDE_MODULES += RXP + +## Debugging, You should probably ony do one or the other of these. + +## Efence protected malloc library to catch memory errors +# INCLUDE_MODULES += EFENCE + +## Dmalloc, another chekcing malloc library +# INCLUDE_MODULES += DMALLOC + +## Additional subsystems to include should be listed here. + +ALSO_INCLUDE= + +## Turn this on to compile all known modules. This is intended for +## portability testing. + +# INCLUDE_EVERYTHING=1 + + +########################################################################### +## Now include the settings + +include $(EST)/config/systems/$(SYSTEM_TYPE).mak + +include $(EST)/config/compilers/$(COMPILER).mak + +ifneq ($(JAVA_COMPILER),none) + include $(EST)/config/compilers/$(JAVA_COMPILER).mak +endif + +ifneq ($(CONFIGURATION),) + include $(CONFIGURATION:%=$(EST)/config/configs/%.mak) +endif + +########################################################################### +## +## Any settings you need to describe how your system differs from the +## assumed defaults should go below. See config/ReadMe for a description +## of the most common things you might need. + debian/patches/siod_slib.cc.diff0000644000000000000000000000070111711053613013776 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, set backtrace to static Index: b/siod/slib.cc =================================================================== --- a/siod/slib.cc +++ b/siod/slib.cc @@ -128,7 +128,7 @@ long interrupt_differed = 0; LISP oblistvar = NIL; LISP current_env = NIL; -LISP backtrace = NIL; +static LISP backtrace = NIL; LISP restricted = NIL; LISP truth = NIL; LISP eof_val = NIL; debian/patches/dontbuildesd.diff0000644000000000000000000000124612142706253014134 0ustar Don't build EsounD support since it was deprecated years ago by Gnome. This is a Debian build system specific patch. --- speech-tools-2.1~release.orig/config/modules/esd_audio.mak +++ speech-tools-2.1~release/config/modules/esd_audio.mak @@ -38,13 +38,9 @@ ## ## ########################################################################### -INCLUDE_ESD_AUDIO=1 +INCLUDE_ESD_AUDIO=0 MOD_DESC_ESD_AUDIO=Use Enlightenment Speech Demon -AUDIO_DEFINES += -DSUPPORT_ESD -AUDIO_INCLUDES += -I$(ESD_INCLUDE) -MODULE_LIBS += -L$(ESD_LIB) -lesd -laudiofile -MODULE_EXTRA_LIBS += -L$(X11_LIB) -lX11 -lXt debian/patches/lintianspell.diff0000644000000000000000000000101611711053613014141 0ustar Correct a spelling error flagged by lintian Author: Peter Drysdale --- speech-tools-2.1~release.orig/siod/slib.cc +++ speech-tools-2.1~release/siod/slib.cc @@ -626,7 +626,7 @@ LISP errswitch(void) void err_stack(char *ptr) /* The user could be given an option to continue here */ {(void)ptr; - err("the currently assigned stack limit has been exceded",NIL);} + err("the currently assigned stack limit has been exceeded",NIL);} LISP stack_limit(LISP amount,LISP silent) {if NNULLP(amount) debian/patches/include_EST_wave_aux.h.diff0000644000000000000000000000124411711053613015731 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) Index: b/include/EST_wave_aux.h =================================================================== --- a/include/EST_wave_aux.h +++ b/include/EST_wave_aux.h @@ -97,6 +97,7 @@ void uchar_to_short(const unsigned char *chars,short *data,int length); void short_to_char(const short *data,unsigned char *chars,int length); void short_to_ulaw(const short *data,unsigned char *ulaw,int length); +void short_to_alaw(const short *data,unsigned char *alaw,int length); // Used when setting Waves in Features VAL_REGISTER_CLASS_DCLS(wave,EST_Wave) debian/patches/fmt.diff0000644000000000000000000000206311711053613012234 0ustar This patch for speech-tools for Debian GNU/Linux, is to allow compiling with build hardening enabled. The build hardener requires an explicit form for fprintf calls. diff --git a/siod/siodeditline.c b/siod/siodeditline.c index 403ae01..cb8e1f2 100644 --- a/siod/siodeditline.c +++ b/siod/siodeditline.c @@ -151,7 +151,7 @@ static STATUS siod_manual() symbol = el_current_sym(); infostring = siod_manual_sym(symbol); putc('\n',stderr); - fprintf(stderr,infostring); + fprintf(stderr,"%s",infostring); fflush(stderr); putc('\n',stderr); fflush(stderr); diff --git a/utils/cmd_line.cc b/utils/cmd_line.cc index 37f4e1d..24c6f50 100644 --- a/utils/cmd_line.cc +++ b/utils/cmd_line.cc @@ -460,7 +460,7 @@ static void output_sgml_synopsis(char **argv, const EST_String &usage) fprintf(stdout,"%s", (const char *)full.filename()); - fprintf(stdout, (const char *)ts.get_upto_eoln().string()); + fprintf(stdout, "%s", (const char *)ts.get_upto_eoln().string()); while (!ts.eof()) { debian/patches/configure.in.diff0000644000000000000000000000052311711053613014033 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools --- speech-tools-1.2.3.orig/configure.in +++ speech-tools-1.2.3/configure.in @@ -34,6 +34,7 @@ AC_CANONICAL_SYSTEM AC_PROG_CC +AC_PROG_CXX if test "x$GCC" = "xyes"; then CFLAGS="$CFLAGS -Wall" fi debian/patches/config_project.mak.diff0000644000000000000000000000221012142706253015206 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools Index: speech-tools/config/project.mak =================================================================== --- speech-tools.orig/config/project.mak 2012-11-25 22:30:41.619790540 +0100 +++ speech-tools/config/project.mak 2012-11-25 22:32:33.675785827 +0100 @@ -103,12 +103,15 @@ PROJECT_LIBRARY_USES_estjava = estbase eststring -PROJECT_LIBRARY_VERSION_estools = $(PROJECT_VERSION).1 -PROJECT_LIBRARY_VERSION_estbase = $(PROJECT_VERSION).1 -PROJECT_LIBRARY_VERSION_eststring = 1.2 -PROJECT_LIBRARY_VERSION_estjava = $(PROJECT_VERSION).1 +# These are used for the SONAME fields in ELF libraries +PROJECT_LIBRARY_VERSION_estools = $(PROJECT_MAJOR_VERSION) +PROJECT_LIBRARY_VERSION_estbase = $(PROJECT_MAJOR_VERSION) +PROJECT_LIBRARY_VERSION_eststring = $(PROJECT_MAJOR_VERSION) +PROJECT_LIBRARY_VERSION_estjava = $(PROJECT_MAJOR_VERSION) PROJECT_LIBRARY_NEEDS_SYSLIBS_estjava=1 +# This line allows estbase to link with libpulse among others +PROJECT_LIBRARY_NEEDS_SYSLIBS_estbase=1 PROJECT_DEFAULT_LIBRARY = estools debian/patches/speech_class_EST_wave_io.cc.diff0000644000000000000000000001136411711053613016716 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) Index: b/speech_class/EST_wave_io.cc =================================================================== --- a/speech_class/EST_wave_io.cc +++ b/speech_class/EST_wave_io.cc @@ -106,15 +106,17 @@ { const char *c; switch (sample_type) { - case st_unknown: + case st_unknown: c = ""; break; - case st_schar: + case st_schar: c = "PCM-1"; break; + case st_alaw: + c = "ALAW"; break; case st_mulaw: c = "ULAW"; break; - case st_short: + case st_short: c = "pcm"; break; - case st_int: + case st_int: c = "PCM-4"; break; case st_float: c = "REAL"; break; @@ -140,6 +142,9 @@ (EST_strcasecmp(type,"mu-law",NULL) == 0) || (EST_strcasecmp(type,"mulaw",NULL) == 0)) return st_mulaw; + else if ((EST_strcasecmp(type,"ALAW",NULL) == 0) || + (EST_strcasecmp(type,"A-LAW",NULL) == 0)) + return st_alaw; else if (strcmp(type,"alaw") == 0) return st_alaw; else if (strcmp(type,"PCM-1") == 0) @@ -191,6 +196,11 @@ byte_order = wstrdup((EST_BIG_ENDIAN ? "10" : "01")); sample_coding = wstrdup("ULAW"); } + if (streq(byte_order,"a-law")) + { + byte_order = wstrdup((EST_BIG_ENDIAN ? "10" : "01")); + sample_coding = wstrdup("ALAW"); + } /* code for reading in Tony Robinson's shorten files. This is a temporary fix which calls the unshorten program on the @@ -472,12 +482,13 @@ /* The follow are registered proprietary WAVE formats (?) */ case WAVE_FORMAT_MULAW: actual_sample_type = st_mulaw; break; + case WAVE_FORMAT_ALAW: + actual_sample_type = st_alaw; break; case WAVE_FORMAT_ADPCM: - fprintf(stderr, "RIFF file: unsupported proprietary sample format ADPCM\n"); + fprintf(stderr, "RIFF file: unsupported proprietary sample format ADPCM\n"); actual_sample_type = st_short; break; /* actual_sample_type = st_adpcm; break; */ /* yes but which adpcm ! */ - case WAVE_FORMAT_ALAW: default: fprintf(stderr, "RIFF file: unknown sample format\n"); actual_sample_type = st_short; @@ -842,50 +853,103 @@ { unsigned char *ulaw; int data_length,samps; - + ts.seek_end(); samps = ts.tell(); - + if (length == 0) data_length = samps - offset; else data_length = length; - + ulaw = walloc(unsigned char, data_length); ts.seek(offset); if (ts.fread(ulaw,1,data_length) != data_length) { - wfree(ulaw); + wfree(ulaw); return misc_read_error; } - + *data = walloc(short,data_length); ulaw_to_short(ulaw,*data,data_length); wfree(ulaw); - + *num_samples = data_length; *sample_rate = 8000; *num_channels = 1; *sample_type = st_short; *word_size = 2; *bo = EST_NATIVE_BO; - + return format_ok; } enum EST_write_status save_wave_ulaw(FILE *fp, const short *data, int offset, - int num_samples, int num_channels, - int sample_rate, + int num_samples, int num_channels, + int sample_rate, enum EST_sample_type_t sample_type, int bo) { (void)sample_rate; (void)sample_type; return save_wave_raw(fp,data,offset,num_samples,num_channels, 8000,st_mulaw,bo); - - + + +} + +enum EST_read_status load_wave_alaw(EST_TokenStream &ts, short **data, int + *num_samples, int *num_channels, int *word_size, int + *sample_rate, enum EST_sample_type_t *sample_type, int *bo, + int offset, int length) + +{ + unsigned char *alaw; + int data_length,samps; + + ts.seek_end(); + samps = ts.tell(); + + if (length == 0) + data_length = samps - offset; + else + data_length = length; + + alaw = walloc(unsigned char, data_length); + ts.seek(offset); + if (ts.fread(alaw,1,data_length) != data_length) + { + wfree(alaw); + return misc_read_error; + } + + *data = walloc(short,data_length); + alaw_to_short(alaw,*data,data_length); + wfree(alaw); + + *num_samples = data_length; + *sample_rate = 8000; + *num_channels = 1; + *sample_type = st_short; + *word_size = 2; + *bo = EST_NATIVE_BO; + + return format_ok; +} + +enum EST_write_status save_wave_alaw(FILE *fp, const short *data, int offset, + int num_samples, int num_channels, + int sample_rate, + enum EST_sample_type_t sample_type, int bo) +{ + (void)sample_rate; + (void)sample_type; + return save_wave_raw(fp,data,offset,num_samples,num_channels, + 8000,st_alaw,bo); + + } + /*=======================================================================*/ /* Sun and Next snd files */ /*=======================================================================*/ debian/patches/speech_class_EST_WaveFile.cc.diff0000644000000000000000000000361411711053613016766 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) and modify data loading memory management (from bug #601294). The modified memory management patch was written by Samuel Thibault. --- speech-tools-1.2.3.orig/speech_class/EST_WaveFile.cc +++ speech-tools-1.2.3/speech_class/EST_WaveFile.cc @@ -85,7 +85,10 @@ if (status == read_ok) { - wv.values().set_memory(data, 0, nsamp, nchan, TRUE); + short *data2 = new short[nsamp*nchan]; + memcpy(data2, data, nsamp*nchan*sizeof(short)); + wfree(data); + wv.values().set_memory(data2, 0, nsamp, nchan, TRUE); wv.set_sample_rate(srate); } @@ -312,6 +312,27 @@ return save_using(save_wave_ulaw, fp, localwv, stype, bo); } +EST_read_status EST_WaveFile::load_alaw(EST_TokenStream &ts, + EST_Wave &wv, + int rate, + EST_sample_type_t stype, int bo, int nchan, + int offset, int length) +{ + return load_using(load_wave_alaw, + ts, wv, rate, + stype, bo, nchan, + offset, length); +} + +EST_write_status EST_WaveFile::save_alaw(FILE *fp, + const EST_Wave &wv, + EST_sample_type_t stype, int bo) +{ + EST_Wave localwv = wv; + localwv.resample(8000); + return save_using(save_wave_alaw, fp, localwv, stype, bo); +} + static int parse_esps_r_option(EST_String arg, int &offset, int &length) { EST_String s, e; @@ -382,6 +403,11 @@ al.add_item("-itype","ulaw"); al.add_item("-f","8000"); } + if (al.present("-alaw")) + { + al.add_item("-itype","alaw"); + al.add_item("-f","8000"); + } if (al.present("-iswap")) al.add_item("-ibo","other"); @@ -417,6 +443,11 @@ sample_rate = 8000; sample_type = "mulaw"; } + if (file_type == "alaw") + { + sample_rate = 8000; + sample_type = "alaw"; + } if (al.present("-r")) // only load in part of waveform { debian/patches/lib_siod_siod.scm.diff0000644000000000000000000000527311711053613015037 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to comply with Filesystem Hierarchy Standard --- speech-tools-1.2.3.orig/lib/siod/siod.scm +++ speech-tools-1.2.3/lib/siod/siod.scm @@ -420,19 +420,28 @@ ;; will be set automatically on start-up (defvar libdir ' "libdir - The pathname of the run-time libary directory. Note reseting is - almost definitely not what you want to do. This value is automatically - set at start up from the value specifed at compile-time or the value - specifed with --libdir on the command line. A number of other variables - depend on this value.") + The pathname of the architecture-dependent run-time libary directory. + Note reseting is almost definitely not what you want to do. This + value is automatically set at start up from the value specifed at + compile-time or the value specifed with --libdir on the command line. + A number of other variables depend on this value.") + +(defvar datadir ' + "datadir + The pathname of the architecture-independent run-time libary + directory. Note reseting is almost definitely not what you want to + do. This value is automatically set at start up from the value + specifed at compile-time or the value specifed with --datadir on the + command line. A number of other variables depend on this value.") -(defvar load-path (list libdir) +(defvar load-path (list datadir) "load-path A list of directories containing .scm files. Used for various functions such as load_library and require. Follows the same use as EMACS. By - default it is set up to the compile-time library directory but may be - changed by the user at run time, by adding a user's own library directory - or even replacing all of the standard library. [see Site initialization]") + default it is set up to the compile-time architecture-independent + library directory but may be changed by the user at run time, by + adding a user's own library directory or even replacing all of the + standard library. [see Site initialization]") ;; will be set automatically on start-up (defvar *ostype* 'unknown @@ -441,12 +450,6 @@ on, e.g. SunOS5, FreeBSD, linux etc. The value is taken from the Makefile variable OSTYPE at compile time.") -(defvar etc-path (path-append libdir "etc/" *ostype*) - "etc-path - A list of directories where binaries specific to Festival may be located. - This variable is automatically set to LIBDIR/etc/OSTYPE/ - and that path is added to the end of the UNIX PATH environment variable.") - (define (library_expand_filename fname) "(library_expand_filename FILENAME) Search for filename by appending FILENAME to each member of load-path. debian/patches/include_EST_dynamic_model.h.diff0000644000000000000000000000067111711053613016721 0ustar This patch is for speech-tools for Debian GNU/Linux, so as to use the standard library rather than its older form. Index: b/include/EST_dynamic_model.h =================================================================== --- a/include/EST_dynamic_model.h +++ b/include/EST_dynamic_model.h @@ -39,7 +39,7 @@ #include #include -#include +#include #include "EST.h" #include "EST_model_types.h" debian/patches/pulseaudiosupport.diff0000644000000000000000000003003112142706253015255 0ustar Add a native PulseAudio audio module. This patch was originally developped by Matthias Clasen and submitted to: http://www.redhat.com/archives/fedora-extras-commits/2009-September/msg09311.html Index: speech-tools/audio/Makefile =================================================================== --- speech-tools.orig/audio/Makefile 2012-11-25 22:11:41.295838495 +0100 +++ speech-tools/audio/Makefile 2012-11-25 22:13:10.895834727 +0100 @@ -44,7 +44,7 @@ H = audioP.h CPPSRCS = gen_audio.cc nas.cc esd.cc sun16audio.cc \ mplayer.cc win32audio.cc irixaudio.cc os2audio.cc \ - macosxaudio.cc linux_sound.cc + macosxaudio.cc pulseaudio.cc linux_sound.cc SRCS = $(CPPSRCS) OBJS = $(SRCS:.cc=.o) Index: speech-tools/audio/audioP.h =================================================================== --- speech-tools.orig/audio/audioP.h 2012-11-25 22:11:41.275838496 +0100 +++ speech-tools/audio/audioP.h 2012-11-25 22:13:10.899834727 +0100 @@ -40,6 +40,7 @@ #define __AUDIOP_H__ int play_nas_wave(EST_Wave &inwave, EST_Option &al); +int play_pulse_wave(EST_Wave &inwave, EST_Option &al); int play_esd_wave(EST_Wave &inwave, EST_Option &al); int play_sun16_wave(EST_Wave &inwave, EST_Option &al); int play_linux_wave(EST_Wave &inwave, EST_Option &al); @@ -49,6 +50,7 @@ int play_macosx_wave(EST_Wave &inwave, EST_Option &al); int record_nas_wave(EST_Wave &inwave, EST_Option &al); +int record_pulse_wave(EST_Wave &inwave, EST_Option &al); int record_esd_wave(EST_Wave &inwave, EST_Option &al); int record_sun16_wave(EST_Wave &inwave, EST_Option &al); int record_linux_wave(EST_Wave &inwave, EST_Option &al); Index: speech-tools/audio/gen_audio.cc =================================================================== --- speech-tools.orig/audio/gen_audio.cc 2012-11-25 22:13:10.319834751 +0100 +++ speech-tools/audio/gen_audio.cc 2012-11-25 22:13:10.899834727 +0100 @@ -81,6 +81,8 @@ { if (nas_supported) protocol = "netaudio"; // the default protocol + else if (pulse_supported) + protocol = "pulseaudio"; else if (esd_supported) protocol = "esdaudio"; else if (sun16_supported) @@ -116,6 +118,8 @@ if (upcase(protocol) == "NETAUDIO") return play_nas_wave(*toplay,al); + else if (upcase(protocol) == "PULSEAUDIO") + return play_pulse_wave(*toplay,al); else if (upcase(protocol) == "ESDAUDIO") return play_esd_wave(*toplay,al); else if (upcase(protocol) == "SUNAUDIO") @@ -249,6 +253,8 @@ audios += " audio_command"; if (sun16_supported) audios += " sun16audio"; + if (pulse_supported) + audios += " pulseaudio"; if (freebsd16_supported) audios += " freebsd16audio"; if (linux16_supported) @@ -285,7 +291,9 @@ protocol = sr; else if (protocol == "") { - if (sun16_supported) + if (pulse_supported) + protocol = "pulseaudio"; + else if (sun16_supported) protocol = "sun16audio"; else if (freebsd16_supported) protocol = "freebsd16audio"; @@ -307,6 +315,8 @@ if (upcase(protocol) == "NETAUDIO") return record_nas_wave(wave,al); + else if (upcase(protocol) == "PULSEAUDIO") + return record_pulse_wave(wave,al); else if (upcase(protocol) == "ESDAUDIO") return record_esd_wave(wave,al); else if (upcase(protocol) == "SUN16AUDIO") Index: speech-tools/audio/pulseaudio.cc =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ speech-tools/audio/pulseaudio.cc 2012-11-25 22:13:10.899834727 +0100 @@ -0,0 +1,144 @@ +/*************************************************************************/ +/* */ +/* Centre for Speech Technology Research */ +/* University of Edinburgh, UK */ +/* Copyright (c) 1997,1998 */ +/* Red Hat, Inc. */ +/* Copyright (c) 2008 */ +/* All Rights Reserved. */ +/* */ +/* Permission is hereby granted, free of charge, to use and distribute */ +/* this software and its documentation without restriction, including */ +/* without limitation the rights to use, copy, modify, merge, publish, */ +/* distribute, sublicense, and/or sell copies of this work, and to */ +/* permit persons to whom this work is furnished to do so, subject to */ +/* the following conditions: */ +/* 1. The code must retain the above copyright notice, this list of */ +/* conditions and the following disclaimer. */ +/* 2. Any modifications must be clearly marked as such. */ +/* 3. Original authors' names are not deleted. */ +/* 4. The authors' names are not used to endorse or promote products */ +/* derived from this software without specific prior written */ +/* permission. */ +/* */ +/* THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK */ +/* DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING */ +/* ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT */ +/* SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE */ +/* FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES */ +/* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN */ +/* AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, */ +/* ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF */ +/* THIS SOFTWARE. */ +/* */ +/*************************************************************************/ +/* Author : Michal Schmidt */ +/* Date : November 2008 */ +/*-----------------------------------------------------------------------*/ +/* Optional support for PulseAudio */ +/*=======================================================================*/ + +#include "EST_Wave.h" +#include "EST_Option.h" +#include "audioP.h" + +#ifdef SUPPORT_PULSE + +#include +#include + +int pulse_supported = TRUE; +const static char *err_prefix = "Pulseaudio: "; + +static int transfer_pulse_wave(EST_Wave &inwave, EST_Option &al, int record) +{ + short *waveform; + int num_samples; + int err, pa_ret; + int ret = -1; + pa_simple *s = NULL; + pa_sample_spec ss; + + ss.format = PA_SAMPLE_S16NE; + ss.channels = 1; + ss.rate = inwave.sample_rate(); + + waveform = inwave.values().memory(); + num_samples = inwave.num_samples(); + + /* In case num_samples == 0, don't play. Pulseaudio returns "invalid + * argument" if num_samples == 0, so it's better to check now. + * I don't expect num_samples < 0, but as we have to check anyway + * it doesn't hurt to check. + */ + if (num_samples <= 0) { + ret=1; + goto finish; + } + + s = pa_simple_new(NULL, // Use the default server. + "Festival", // Our application's name. + record ? PA_STREAM_RECORD : PA_STREAM_PLAYBACK, + NULL, // Use the default device. + record ? "Record" : "Speech", // Description of our stream. + &ss, // Our sample format. + NULL, // Use default channel map + NULL, // Use default buffering attributes. + &err); + + if (!s) { + cerr << err_prefix << pa_strerror(err) << endl; + goto finish; + } + + pa_ret = record ? + pa_simple_read (s, waveform, num_samples*sizeof(short), &err) : + pa_simple_write(s, waveform, num_samples*sizeof(short), &err); + + if (pa_ret < 0) { + cerr << err_prefix << pa_strerror(err) << endl; + goto finish; + } + + if (!record && pa_simple_drain(s, &err) < 0) { + cerr << err_prefix << pa_strerror(err) << endl; + goto finish; + } + + ret = 1; +finish: + if (s) + pa_simple_free(s); + return ret; +} + +int play_pulse_wave(EST_Wave &inwave, EST_Option &al) +{ + return transfer_pulse_wave(inwave, al, 0); +} + +int record_pulse_wave(EST_Wave &inwave, EST_Option &al) +{ + return transfer_pulse_wave(inwave, al, 1); +} + +#else +int pulse_supported = FALSE; + +int play_pulse_wave(EST_Wave &inwave, EST_Option &al) +{ + (void)inwave; + (void)al; + cerr << "Audio: pulse not compiled in this version" << endl; + return -1; +} + +int record_pulse_wave(EST_Wave &inwave, EST_Option &al) +{ + (void)inwave; + (void)al; + cerr << "Audio: pulse not compiled in this version" << endl; + return -1; +} + +#endif Index: speech-tools/config/config =================================================================== --- speech-tools.orig/config/config 2012-11-25 22:13:10.351834750 +0100 +++ speech-tools/config/config 2012-11-25 22:13:10.899834727 +0100 @@ -82,6 +82,9 @@ ## Elightenment Sound Demon, for KDE etc. INCLUDE_MODULES += ESD_AUDIO +## PulseAudio sound server +INCLUDE_MODULES += PULSE_AUDIO + ## Native audio for your platform (sun, linux, freebsd, irix, windows) INCLUDE_MODULES += NATIVE_AUDIO Index: speech-tools/config/config.in =================================================================== --- speech-tools.orig/config/config.in 2012-11-25 22:13:10.363834750 +0100 +++ speech-tools/config/config.in 2012-11-25 22:13:10.899834727 +0100 @@ -79,6 +79,9 @@ ## NCD's network audio system. # INCLUDE_MODULES += NAS_AUDIO +## PulseAudio sound server +# INCLUDE_MODULES += PULSE_AUDIO + ## Elightenment Sound Demon, for KDE etc. # INCLUDE_MODULES += ESD_AUDIO Index: speech-tools/config/modules/Makefile =================================================================== --- speech-tools.orig/config/modules/Makefile 2012-11-25 22:11:41.235838498 +0100 +++ speech-tools/config/modules/Makefile 2012-11-25 22:13:10.899834727 +0100 @@ -41,7 +41,8 @@ psola_tm.mak editline.mak tcl.mak \ freebsd16_audio.mak irix_audio.mak linux16_audio.mak \ sun16_audio.mak win32_audio.mak macosx_audio.mak \ - mplayer_audio.mak nas_audio.mak esd_audio.mak + mplayer_audio.mak nas_audio.mak esd_audio.mak \ + pulse_audio.mak FILES = Makefile descriptions $(RULESETS) Index: speech-tools/config/systems/default.mak =================================================================== --- speech-tools.orig/config/systems/default.mak 2012-11-25 22:11:41.251838497 +0100 +++ speech-tools/config/systems/default.mak 2012-11-25 22:13:10.899834727 +0100 @@ -61,6 +61,12 @@ NAS_LIB = /usr/X11R6/lib ########################################################################### +## Where to find PulseAudio + +PULSE_INCLUDE = /usr/include +PULSE_LIB = /usr/lib + +########################################################################### ## Where to find Enlightenment Speech Demon ESD_INCLUDE = /usr/local/include Index: speech-tools/config/modules/pulse_audio.mak =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ speech-tools/config/modules/pulse_audio.mak 2012-11-25 22:13:10.903834727 +0100 @@ -0,0 +1,9 @@ +## Definitions for PulseAudio + +INCLUDE_PULSE_AUDIO=1 + +MOD_DESC_PULSE_AUDIO=PulseAudio support + +AUDIO_DEFINES += -DSUPPORT_PULSE +AUDIO_INCLUDES += -I$(PULSE_INCLUDE) +MODULE_LIBS += -lpulse-simple -lpulse Index: speech-tools/include/EST_audio.h =================================================================== --- speech-tools.orig/include/EST_audio.h 2012-11-25 22:11:41.263838497 +0100 +++ speech-tools/include/EST_audio.h 2012-11-25 22:13:10.903834727 +0100 @@ -43,6 +43,7 @@ #include "EST_Option.h" extern int nas_supported; +extern int pulse_supported; extern int esd_supported; extern int sun16_supported; extern int freebsd16_supported; debian/patches/config_config.in.diff0000644000000000000000000000064011711053613014644 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools Index: b/config/config.in =================================================================== --- a/config/config.in +++ b/config/config.in @@ -61,7 +61,7 @@ # VERBOSE=1 #DEBUG=1 # PROFILE=gprof -#SHARED=2 +SHARED=2 ## Directory specific selections which override the above debian/patches/main_xml_parser_main.cc.diff0000644000000000000000000000106111711053613016213 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to comply with Filesystem Hierarchy Standard Index: b/main/xml_parser_main.cc =================================================================== --- a/main/xml_parser_main.cc +++ b/main/xml_parser_main.cc @@ -165,7 +165,7 @@ al.sval("-sysdir") + "/\\1"); pclass.register_id("//CSTR//EST \\(.*\\)", - EST_String::cat(est_libdir, "/\\1.dtd")); + EST_String::cat(est_datadir, "/\\1.dtd")); /* An individual parser runs over a single source. */ debian/patches/templatefixes.diff0000644000000000000000000001421112142706253014322 0ustar This patch allows compiling of speech_tools on clang 3.0. The clang 3.0 compiler is stricter on ordering of template definitions/declarations and instantiations than gcc <=4.7. This patch should be used in conjunction with the unqualifiedmethods.diff patch which provides common patches to allow compiling of speech_tools and festival on both gcc 4.7 and clang 3.0. This patch is not intended to alter the code in a substantive way. No copyright subsists in this patch as it is too trivial. Author: Peter Drysdale --- speech-tools-2.1~release.orig/utils/EST_ServiceTable.cc +++ speech-tools-2.1~release/utils/EST_ServiceTable.cc @@ -278,6 +278,8 @@ void EST_ServiceTable::names(EST_TListk); } +Declare_KVL_T(EST_String, EST_ServiceTable::Entry, EST_String_ST_entry) + const EST_ServiceTable::Entry &EST_ServiceTable::lookup(const EST_String name, const EST_String type) { @@ -339,8 +341,6 @@ const EST_ServiceTable::Entry &EST_Servi -Declare_KVL_T(EST_String, EST_ServiceTable::Entry, EST_String_ST_entry) - #if defined(INSTANTIATE_TEMPLATES) #include "../base_class/EST_TList.cc" --- speech-tools-2.1~release.orig/include/EST_TList.h +++ speech-tools-2.1~release/include/EST_TList.h @@ -268,6 +268,12 @@ bool operator==(const EST_TList &a, c } template +bool operator!=(const EST_TList &a, const EST_TList &b) +{ + return !(a==b); +} + +template int index(EST_TList &l, T& val, bool (*eq)(const EST_UItem *, const EST_UItem *) = NULL) { EST_TItem item(val); --- speech-tools-2.1~release.orig/base_class/inst_tmpl/vector_dvector_t.cc +++ speech-tools-2.1~release/base_class/inst_tmpl/vector_dvector_t.cc @@ -40,6 +40,11 @@ #include "EST_types.h" #include "EST_TVector.h" +static const EST_DVector def_val_DVector; +static EST_DVector error_return_DVector; +template <> const EST_DVector *EST_TVector::def_val = &def_val_DVector; +template <> EST_DVector *EST_TVector::error_return = &error_return_DVector; + #if defined(INSTANTIATE_TEMPLATES) #include "../base_class/EST_TVector.cc" @@ -47,10 +52,6 @@ template class EST_TVector; #endif -static const EST_DVector def_val_DVector; -static EST_DVector error_return_DVector; -template <> const EST_DVector *EST_TVector::def_val = &def_val_DVector; -template <> EST_DVector *EST_TVector::error_return = &error_return_DVector; int operator !=(const EST_DVector &fv1, const EST_DVector &fv2) --- speech-tools-2.1~release.orig/base_class/inst_tmpl/vector_fmatrix_t.cc +++ speech-tools-2.1~release/base_class/inst_tmpl/vector_fmatrix_t.cc @@ -40,6 +40,11 @@ #include "EST_types.h" #include "EST_TVector.h" +static const EST_FMatrix def_val_FMatrix; +static EST_FMatrix error_return_FMatrix; +template <> const EST_FMatrix *EST_TVector::def_val = &def_val_FMatrix; +template <> EST_FMatrix *EST_TVector::error_return = &error_return_FMatrix; + #if defined(INSTANTIATE_TEMPLATES) #include "../base_class/EST_TVector.cc" @@ -48,10 +53,6 @@ template class EST_TVector; #endif -static const EST_FMatrix def_val_FMatrix; -static EST_FMatrix error_return_FMatrix; -template <> const EST_FMatrix *EST_TVector::def_val = &def_val_FMatrix; -template <> EST_FMatrix *EST_TVector::error_return = &error_return_FMatrix; int operator !=(const EST_FMatrix &fm1, const EST_FMatrix &fm2) --- speech-tools-2.1~release.orig/base_class/inst_tmpl/vector_dmatrix_t.cc +++ speech-tools-2.1~release/base_class/inst_tmpl/vector_dmatrix_t.cc @@ -40,6 +40,11 @@ #include "EST_types.h" #include "EST_TVector.h" +static const EST_DMatrix def_val_DMatrix; +static EST_DMatrix error_return_DMatrix; +template <> const EST_DMatrix *EST_TVector::def_val = &def_val_DMatrix; +template <> EST_DMatrix *EST_TVector::error_return = &error_return_DMatrix; + #if defined(INSTANTIATE_TEMPLATES) #include "../base_class/EST_TVector.cc" @@ -47,10 +52,6 @@ template class EST_TVector; #endif -static const EST_DMatrix def_val_DMatrix; -static EST_DMatrix error_return_DMatrix; -template <> const EST_DMatrix *EST_TVector::def_val = &def_val_DMatrix; -template <> EST_DMatrix *EST_TVector::error_return = &error_return_DMatrix; int operator !=(const EST_DMatrix &fm1, const EST_DMatrix &fm2) --- speech-tools-2.1~release.orig/ling_class/EST_FeatureFunctionPackage.cc +++ speech-tools-2.1~release/ling_class/EST_FeatureFunctionPackage.cc @@ -48,6 +48,12 @@ EST_THash EST_FeatureFunctionPackage::Entry EST_THash::Dummy_Value = Dummy_Entry; +ostream &operator << (ostream &s, + EST_FeatureFunctionPackage::Entry &e) +{ + (void)e; + return s << "<>"; +} #if defined(INSTANTIATE_TEMPLATES) @@ -63,13 +69,6 @@ int operator == (const EST_FeatureFuncti return e1.func == e2.func; } -ostream &operator << (ostream &s, - EST_FeatureFunctionPackage::Entry &e) -{ - (void)e; - return s << "<>"; -} - EST_FeatureFunctionPackage::EST_FeatureFunctionPackage(const EST_String name, int n) : p_name(name), p_entries(n) { --- speech-tools-2.1~release.orig/stats/dynamic_program.cc +++ speech-tools-2.1~release/stats/dynamic_program.cc @@ -42,12 +42,6 @@ #include "ling_class/EST_Utterance.h" typedef EST_TVector EST_Item_ptr_Vector; -#if defined(INSTANTIATE_TEMPLATES) -#include "../base_class/EST_TVector.cc" - -template class EST_TVector; - -#endif static EST_Item *const def_val_item_ptr = NULL; template <> EST_Item* const *EST_Item_ptr_Vector::def_val = &def_val_item_ptr; @@ -55,6 +49,13 @@ template <> EST_Item* const *EST_Item_pt static EST_Item* error_return_item_ptr = NULL; template <> EST_Item* *EST_Item_ptr_Vector::error_return = &error_return_item_ptr; +#if defined(INSTANTIATE_TEMPLATES) +#include "../base_class/EST_TVector.cc" + +template class EST_TVector; + +#endif + typedef float (*local_cost_function)(const EST_Item *item1, const EST_Item *item2); debian/patches/testsuite_correct_ch_wave_script.out.diff0000644000000000000000000000160211711053613021104 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) --- speech-tools-1.2.3.orig/testsuite/correct/ch_wave_script.out +++ speech-tools-1.2.3/testsuite/correct/ch_wave_script.out @@ -77,7 +77,7 @@ -iswap Swap bytes. (For use on an unheadered input file) -istype Sample type in an unheadered input file: - short, mulaw, byte, ascii + short, alaw, mulaw, byte, ascii -c Select a single channel (starts from 0). Waveforms can have multiple channels. This option @@ -112,7 +112,7 @@ -oswap Swap bytes when saving to output --ostype Output sample type: short, mulaw, byte or ascii +-ostype Output sample type: short, alaw, mulaw, byte or ascii -scale Scaling factor. Increase or descrease the amplitude of the whole waveform by the factor given debian/patches/config_compilers_gcc_defaults.mak.diff0000644000000000000000000000306312142706253020247 0ustar This a a Debian specific patch for Festival speech synthesis build system. --- speech-tools-2.1~release.orig/config/compilers/gcc_defaults.mak +++ speech-tools-2.1~release/config/compilers/gcc_defaults.mak @@ -39,7 +39,7 @@ ########################################################################### CC=gcc -CXX=gcc +CXX=g++ ifeq ($(OSTYPE),Darwin) CXX=g++ endif @@ -47,8 +47,9 @@ endif COMPILER_DESC=FSF gcc COMPILER_VERSION_COMMAND=$(CXX) -v 2>&1 | tail -1 | sed -e 's/^....//' -CFLAGS = $(GCC_SYSTEM_OPTIONS) $(CC_OTHER_FLAGS) -CXXFLAGS = $(GCC_SYSTEM_OPTIONS) -fno-implicit-templates $(CC_OTHER_FLAGS) +CFLAGS += $(GCC_SYSTEM_OPTIONS) $(CC_OTHER_FLAGS) $(CPPFLAGS) +CXXFLAGS += $(GCC_SYSTEM_OPTIONS) $(CC_OTHER_FLAGS) $(CPPFLAGS) +LINKFLAGS += $(LDFLAGS) DEBUG_CCFLAGS = -g DEBUG_CXXFLAGS = -g @@ -81,7 +82,7 @@ SHARED_CXXFLAGS = -fPIC SHARED_LINKFLAGS = ifndef GCC_MAKE_SHARED_LIB - MAKE_SHARED_LIB = $(CXX) -shared -fno-shared-data -o XXX + MAKE_SHARED_LIB = $(CXX) -shared -o XXX -Wl,-soname -Wl,YYY else MAKE_SHARED_LIB = $(GCC_MAKE_SHARED_LIB) endif @@ -98,9 +99,10 @@ TEMPLATE_ARGS = ## The -lgcc here is redundant - gcc does this anyway - but it ## helps java know what needs to be loaded. -COMPILERLIBS= $(COMPILER_LIBS_DIR:%=-L%) -lstdc++ -lgcc +COMPILERLIBS= $(COMPILER_LIBS_DIR:%=-L%) ## special ways of doing things, blank means default +STATIC_LINKFLAGS = -Dstatic MAKE_DEPEND_C = $(CC) -MM $(INCLUDES) $(TEMPLATES) $(TEMPLATE_SPECIFIC) MAKE_DEPEND_CXX = $(CC) -MM $(INCLUDES) $(TEMPLATES) $(TEMPLATE_SPECIFIC) debian/patches/copyright_4clausefix.diff0000644000000000000000000000400211711053613015600 0ustar This patch removes the advertising clause from the BSD project's files, as the BSD project has deprecated the 4-clause license with that clause anyway. Index: b/base_class/string/EST_strcasecmp.c =================================================================== --- a/base_class/string/EST_strcasecmp.c +++ b/base_class/string/EST_strcasecmp.c @@ -10,11 +10,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * Index: b/base_class/string/regexp.h =================================================================== --- a/base_class/string/regexp.h +++ b/base_class/string/regexp.h @@ -14,11 +14,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * debian/patches/utils_Makefile.diff0000644000000000000000000000144611711053613014407 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to comply with Filesystem Hierarchy Standard Index: b/utils/Makefile =================================================================== --- a/utils/Makefile +++ b/utils/Makefile @@ -56,5 +56,5 @@ include $(TOP)/config/common_make_rules EST_cutils.o: EST_cutils.c - $(CC_COMMAND) -DESTNAME='$(PROJECT_NAME)' -DESTDATE='$(PROJECT_DATE)' -DESTVERSION='$(PROJECT_VERSION)' -DESTLIBDIRC='$(EST_HOME)/lib' -DESTSTATE='$(PROJECT_STATE)' -DESTOSTYPE='$(SYSTEM_TYPE)' EST_cutils.c + $(CC_COMMAND) -DESTNAME='$(PROJECT_NAME)' -DESTDATE='$(PROJECT_DATE)' -DESTVERSION='$(PROJECT_VERSION)' -DESTLIBDIR=\"$(EST_HOME)/lib\" -DESTDATADIR=\"$(EST_HOME)/share\" -DESTSTATE='$(PROJECT_STATE)' -DESTOSTYPE='$(SYSTEM_TYPE)' EST_cutils.c debian/patches/config_rules_bin_process.mak.diff0000644000000000000000000000112311711053613017256 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools Index: speech-tools/config/rules/bin_process.mak =================================================================== --- speech-tools.orig/config/rules/bin_process.mak 2010-02-03 06:28:14.000000000 -0600 +++ speech-tools/config/rules/bin_process.mak 2010-07-17 08:20:19.000000000 -0500 @@ -59,6 +59,7 @@ Makefile ) : ;; \ VCLocalRules ) : ;; \ RCS|CVS ) : ;; \ + SCCS|BitKeeper ) : ;; \ * ) $(ECHO_N) " $$i"; $(RM) -f "$$i";; \ esac \ done debian/patches/include_EST_cutils.h.diff0000644000000000000000000000072211711053613015415 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to comply with Filesystem Hierarchy Standard --- speech-tools-1.2.3.orig/include/EST_cutils.h +++ speech-tools-1.2.3/include/EST_cutils.h @@ -48,6 +48,7 @@ extern const char * const est_tools_version; extern const char * const est_name; extern const char * const est_libdir; +extern const char * const est_datadir; extern const char * const est_ostype; #include "EST_walloc.h" debian/patches/include_EST_TIterator.h.diff0000644000000000000000000000154411711053613016032 0ustar This patch is for speech-tools for Debian GNU/Linux, and forces the use of the actual template rather than that which is inherits from when defining Iter typedef. Index: b/include/EST_TIterator.h =================================================================== --- a/include/EST_TIterator.h +++ b/include/EST_TIterator.h @@ -228,7 +228,7 @@ public: - typedef EST_TIterator Iter; + typedef EST_TRwIterator Iter; /// Create an iterator not associated with any specific container. EST_TRwIterator() {this->cont=NULL;} @@ -278,7 +278,7 @@ { public: - typedef EST_TIterator Iter; + typedef EST_TRwStructIterator Iter; /// Create an iterator not associated with any specific container. EST_TRwStructIterator() {this->cont=NULL;} debian/patches/series0000644000000000000000000000163112142706253012035 0ustar audio_gen_audio.cc.diff config_compilers_gcc_defaults.mak.diff config_config.diff config_config.in.diff config_project.mak.diff config_rules_bin_process.mak.diff config_rules_library.mak.diff config_rules_targets.mak.diff config_system.sh.diff configure.in.diff include_EST_cutils.h.diff include_EST_dynamic_model.h.diff include_EST_TIterator.h.diff include_EST_wave_aux.h.diff lib_siod_siod.scm.diff main_siod_main.cc.diff main_xml_parser_main.cc.diff Makefile.diff siod_slib.cc.diff speech_class_EST_wave_aux.cc.diff speech_class_EST_WaveFile.cc.diff speech_class_EST_WaveFile.h.diff speech_class_EST_wave_io.cc.diff speech_class_EST_wave_utils.cc.diff speech_class_waveP.h.diff testsuite_correct_ch_wave_script.out.diff utils_Makefile.diff utils_EST_cutils.c.diff copyright_4clausefix.diff fmt.diff lintianspell.diff unqualifiedmethods.diff templatefixes.diff dontbuildesd.diff pulseaudiosupport.diff alsasupport.diff debian/patches/config_rules_library.mak.diff0000644000000000000000000000606412142706253016431 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools Index: speech-tools/config/rules/library.mak =================================================================== --- speech-tools.orig/config/rules/library.mak 2011-02-16 11:03:11.000000000 -0600 +++ speech-tools/config/rules/library.mak 2011-02-16 20:01:11.000000000 -0600 @@ -102,15 +102,44 @@ ## ## ########################################################################### +libestools.so : libestools.a + echo Make Shared Library estools + if [ ! -d shared_space ] ; then mkdir shared_space ; else $(RM) -f shared_space/*.o ; fi + (cd shared_space ; $(AR) x ../$< ) + echo Link Shared Library estools + if [ -n "$(PROJECT_LIBRARY_NEEDS_SYSLIBS_estools)" ] ; then libs='$(JAVA_PROJECT_LIBS)' ; fi ;\ + $(subst YYY,$@.$(PROJECT_LIBRARY_VERSION_estools),\ + $(subst XXX,$@.$(PROJECT_VERSION),$(MAKE_SHARED_LIB))) \ + shared_space/*.o $(PROJECT_LIBRARY_USES_estools:%=-L. -l%) $$libs -L. -lestbase -leststring -lncurses + $(RM) -f shared_space/*.o $@ + -ln -sf $@.$(PROJECT_VERSION) $@.$(PROJECT_LIBRARY_VERSION_estools) + -ln -sf $@.$(PROJECT_LIBRARY_VERSION_estools) $@ + +libestbase.so : libestbase.a + echo Make Shared Library estbase + if [ ! -d shared_space ] ; then mkdir shared_space ; else $(RM) -f shared_space/*.o ; fi + (cd shared_space ; $(AR) x ../$< ) + echo Link Shared Library estbase + if [ -n "$(PROJECT_LIBRARY_NEEDS_SYSLIBS_estbase)" ] ; then libs='$(JAVA_PROJECT_LIBS)' ; fi ;\ + $(subst YYY,$@.$(PROJECT_LIBRARY_VERSION_estbase),\ + $(subst XXX,$@.$(PROJECT_VERSION),$(MAKE_SHARED_LIB))) \ + shared_space/*.o $(PROJECT_LIBRARY_USES_estbase:%=-L. -l%) $$libs -L. + $(RM) -f shared_space/*.o $@ + -ln -sf $@.$(PROJECT_VERSION) $@.$(PROJECT_LIBRARY_VERSION_estbase) + -ln -sf $@.$(PROJECT_LIBRARY_VERSION_estbase) $@ + lib%.so : lib%.a - @echo Make Shared Library $* - @if [ ! -d shared_space ] ; then mkdir shared_space ; else $(RM) -f shared_space/*.o ; fi - @(cd shared_space ; $(AR) x ../$< ) - @echo Link Shared Library $* + echo Make Shared Library $* + if [ ! -d shared_space ] ; then mkdir shared_space ; else $(RM) -f shared_space/*.o ; fi + (cd shared_space ; $(AR) x ../$< ) + echo Link Shared Library $* if [ -n "$(PROJECT_LIBRARY_NEEDS_SYSLIBS_$*)" ] ; then libs='$(JAVA_PROJECT_LIBS)' ; fi ;\ - $(subst XXX,$@.$(PROJECT_LIBRARY_VERSION_$*),$(MAKE_SHARED_LIB)) shared_space/*.o $(PROJECT_LIBRARY_USES_$*:%=-L. -l%) $$libs - @$(RM) -f shared_space/*.o $@ - @ln -s $@.$(PROJECT_LIBRARY_VERSION_$*) $@ + $(subst YYY,$@.$(PROJECT_LIBRARY_VERSION_$*),\ + $(subst XXX,$@.$(PROJECT_VERSION),$(MAKE_SHARED_LIB))) \ + shared_space/*.o $(PROJECT_LIBRARY_USES_$*:%=-L. -l%) $$libs + $(RM) -f shared_space/*.o $@ + -ln -sf $@.$(PROJECT_VERSION) $@.$(PROJECT_LIBRARY_VERSION_$*) + -ln -sf $@.$(PROJECT_LIBRARY_VERSION_$*) $@ ########################################################################### ## ## debian/patches/speech_class_EST_wave_aux.cc.diff0000644000000000000000000000177611711053613017112 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) --- speech-tools-1.2.3.orig/speech_class/EST_wave_aux.cc +++ speech-tools-1.2.3/speech_class/EST_wave_aux.cc @@ -287,7 +287,7 @@ " endian)\n\n" "-iswap Swap bytes. (For use on an unheadered input file)\n\n" "-istype Sample type in an unheadered input file:\n" - " short, mulaw, byte, ascii\n\n" + " short, alaw, mulaw, byte, ascii\n\n" "-c Select a single channel (starts from 0). \n" " Waveforms can have multiple channels. This option \n" " extracts a single channel for progcessing and \n" @@ -318,7 +318,7 @@ " Intel, Alpha, DEC Mips, Vax are LSB \n" " (little endian)\n\n" "-oswap Swap bytes when saving to output\n\n"+ - "-ostype Output sample type: short, mulaw, byte or ascii\n\n"; + "-ostype Output sample type: short, alaw, mulaw, byte or ascii\n\n"; } Declare_TNamedEnum(EST_sample_type_t) debian/patches/unqualifiedmethods.diff0000644000000000000000000001015311733715123015344 0ustar This patch allows compiling of festival on gcc 4.7 and clang 3.0. Both these compilers are stricter of unqualified method calls in templates than previous versions of gcc. This patch should not alter the code in a substantive way as it only qualifies method calls which were assumed in previous compilers. No copyright subsists in this patch as it is too trivial. Author: Peter Drysdale --- speech-tools-2.1~release.orig/include/EST_TIterator.h +++ speech-tools-2.1~release/include/EST_TIterator.h @@ -209,7 +209,7 @@ public: /// Create an iterator ready to run over the given container. EST_TStructIterator(const Container &over) - { begin(over); } + { this->begin(over); } const Entry *operator ->() const {return &this->current();} @@ -289,7 +289,7 @@ public: /// Create an iterator ready to run over the given container. EST_TRwStructIterator(Container &over) - { begin(over); } + { this->begin(over); } Entry *operator ->() const {return &this->current();} --- speech-tools-2.1~release.orig/base_class/EST_TSimpleVector.cc +++ speech-tools-2.1~release/base_class/EST_TSimpleVector.cc @@ -43,6 +43,7 @@ #include "EST_TSimpleVector.h" #include "EST_matrix_support.h" #include +#include #include "EST_cutils.h" template void EST_TSimpleVector::copy(const EST_TSimpleVector &a) @@ -50,7 +51,7 @@ template void EST_TSimpleVector if (this->p_column_step==1 && a.p_column_step==1) { resize(a.n(), FALSE); - memcpy((void *)(this->p_memory), (const void *)(a.p_memory), this->n() * sizeof(T)); + std::memcpy((void *)(this->p_memory), (const void *)(a.p_memory), this->n() * sizeof(T)); } else ((EST_TVector *)this)->copy(a); @@ -70,7 +71,7 @@ template void EST_TSimpleVector int old_offset = this->p_offset; unsigned int q; - just_resize(newn, &old_vals); + this->just_resize(newn, &old_vals); if (set && old_vals) { @@ -140,7 +141,7 @@ template EST_TSimpleVector & template void EST_TSimpleVector::zero() { if (this->p_column_step==1) - memset((void *)(this->p_memory), 0, this->n() * sizeof(T)); + std::memset((void *)(this->p_memory), 0, this->n() * sizeof(T)); else ((EST_TVector *)this)->fill(*this->def_val); } --- speech-tools-2.1~release.orig/include/EST_TNamedEnum.h +++ speech-tools-2.1~release/include/EST_TNamedEnum.h @@ -130,7 +130,7 @@ public: {this->initialise((const void *)defs); }; EST_TNamedEnumI(EST_TValuedEnumDefinition defs[], ENUM (*conv)(const char *)) {this->initialise((const void *)defs, conv); }; - const char *name(ENUM tok, int n=0) const {return value(tok,n); }; + const char *name(ENUM tok, int n=0) const {return this->value(tok,n); }; }; --- speech-tools-2.1~release.orig/base_class/EST_TSimpleMatrix.cc +++ speech-tools-2.1~release/base_class/EST_TSimpleMatrix.cc @@ -44,6 +44,7 @@ #include "EST_TVector.h" #include #include +#include #include "EST_cutils.h" template @@ -51,7 +52,7 @@ void EST_TSimpleMatrix::copy_data(con { if (!a.p_sub_matrix && !this->p_sub_matrix) - memcpy((void *)&this->a_no_check(0,0), + std::memcpy((void *)&this->a_no_check(0,0), (const void *)&a.a_no_check(0,0), this->num_rows()*this->num_columns()*sizeof(T) ); @@ -98,7 +98,7 @@ void EST_TSimpleMatrix::resize(int ne { int copy_r = Lof(this->num_rows(), new_rows); - just_resize(new_rows, new_cols, &old_vals); + this->just_resize(new_rows, new_cols, &old_vals); for (q=0; q<(copy_r*new_cols*sizeof(T)); q++) /* memcpy */ ((char *)this->p_memory)[q] = ((char *)old_vals)[q]; @@ -127,9 +127,9 @@ void EST_TSimpleMatrix::resize(int ne int copy_r = Lof(this->num_rows(), new_rows); int copy_c = Lof(this->num_columns(), new_cols); - just_resize(new_rows, new_cols, &old_vals); + this->just_resize(new_rows, new_cols, &old_vals); - set_values(old_vals, + this->set_values(old_vals, old_row_step, old_column_step, 0, copy_r, 0, copy_c); debian/patches/config_rules_targets.mak.diff0000644000000000000000000000104311711053613016422 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools Index: b/config/rules/targets.mak =================================================================== --- a/config/rules/targets.mak +++ b/config/rules/targets.mak @@ -71,7 +71,7 @@ @ for i in $(ALL_DIRS) ; \ do \ echo "clean in $(DIRNAME)/$$i" ;\ - $(MAKE) --no-print-directory -C $$i clean ; \ + $(MAKE) --no-print-directory -C $$i NO_DEPEND=1 clean ; \ done endif ifdef EXTRA_LIB_BUILD_DIRS debian/patches/alsasupport.diff0000644000000000000000000000362312142706256014035 0ustar This patch enables native ALSA support on speech-tools. This patch fixes two error messages and adds a warning if there are buffer underrun problems. No copyright subsists in this patch as it is too trivial. Author: Sergio Oller Index: speech-tools/config/config =================================================================== --- speech-tools.orig/config/config 2012-12-22 16:28:12.331650428 +0100 +++ speech-tools/config/config 2012-12-22 16:28:12.347650429 +0100 @@ -91,6 +91,15 @@ ## Special code to run Windows MPLAYER # INCLUDE_MODULES += MPLAYER_AUDIO +## Under Linux there may be a choice of audio support +## This is only used if we are under Linux (or a linux like system) +#LINUXAUDIO = @LINUXAUDIO@ +ifeq ($(DEB_HOST_ARCH_OS),linux) + LINUXAUDIO = alsa +else + LINUXAUDIO = none +endif + ## USER INTERFACE ## Command-line editing. This option gives command line editing and history. Index: speech-tools/audio/linux_sound.cc =================================================================== --- speech-tools.orig/audio/linux_sound.cc 2012-12-22 15:04:21.711429765 +0100 +++ speech-tools/audio/linux_sound.cc 2012-12-22 17:03:29.699743304 +0100 @@ -611,6 +611,9 @@ { if (res == -EPIPE) /* xrun */ { + EST_warning("xrun has occured. This suggests ALSA buffer is " + "underflowing. Possibly change audio output methods " + "or use a faster or more lightly loaded device"); res = snd_pcm_prepare(pcm_handle); if (res < 0) { @@ -870,14 +873,14 @@ { (void)inwave; (void)al; - cerr << "MacOS X audio support not compiled." << endl; + cerr << "ALSA audio support not compiled." << endl; return -1; } int record_linux_wave(EST_Wave &inwave, EST_Option &al) { (void)inwave; (void)al; - cerr << "MacOS X audio support not compiled." << endl; + cerr << "ALSA audio support not compiled." << endl; return -1; } debian/patches/speech_class_EST_WaveFile.h.diff0000644000000000000000000000136611711053613016632 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) --- speech-tools-1.2.3.orig/speech_class/EST_WaveFile.h +++ speech-tools-1.2.3/speech_class/EST_WaveFile.h @@ -57,7 +57,8 @@ wff_aiff, wff_riff, wff_raw, - wff_ulaw + wff_ulaw, + wff_alaw } EST_WaveFileType; class EST_WaveFile { @@ -125,6 +126,9 @@ static EST_write_status save_ulaw(SaveWave_TokenStreamArgs); static EST_read_status load_ulaw(LoadWave_TokenStreamArgs); + static EST_write_status save_alaw(SaveWave_TokenStreamArgs); + static EST_read_status load_alaw(LoadWave_TokenStreamArgs); + static EST_TNamedEnumI map; static EST_String options_supported(void); debian/patches/config_system.sh.diff0000644000000000000000000000126711711053613014735 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to provide Debian specific building of speech-tools --- speech-tools-1.2.3.orig/config/system.sh +++ speech-tools-1.2.3/config/system.sh @@ -60,8 +60,7 @@ sed -e 's/^\([^.]*\)\(\.[^-. ]*\).*/\1\2/'` # Sort out various flavours of Linux -if [ "$OSTYPE" = Linux ] - then +case "$OSTYPE" in Linux|GNU|GNU/*) if [ -f "/etc/redhat-release" ] then OSTYPE=RedHatLinux @@ -74,7 +73,8 @@ # Generic unknown GNU/Linux system. OSTYPE=Linux fi -fi +;; +esac # Make sure we actually have a .mak file for it, otherwise fall back # to sensible defaults (for example, kernel version and architecture debian/patches/utils_EST_cutils.c.diff0000644000000000000000000000160111711053613015122 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to comply with Filesystem Hierarchy Standard Index: speech-tools-2.0.95~beta/utils/EST_cutils.c =================================================================== --- speech-tools-2.0.95~beta.orig/utils/EST_cutils.c 2008-09-05 09:32:47.000000000 -0500 +++ speech-tools-2.0.95~beta/utils/EST_cutils.c 2010-07-17 09:29:38.000000000 -0500 @@ -54,12 +54,19 @@ #ifdef ESTLIBDIRC # define ESTLIBDIR STRINGIZE(ESTLIBDIRC) #endif - #ifndef ESTLIBDIR #define ESTLIBDIR "/usr/local/lib/speech_tools" #endif +#ifdef ESTDATADIRC +# define ESTDATADIR STRINGIZE(ESTDATADIRC) +#endif +#ifndef ESTDATADIR +#define ESTDATADIR "/usr/local/share/speech_tools" +#endif + const char * const est_libdir = ESTLIBDIR; +const char * const est_datadir = ESTDATADIR; const char * const est_ostype = STRINGIZE(ESTOSTYPE); debian/patches/speech_class_waveP.h.diff0000644000000000000000000000243611711053613015476 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) --- speech-tools-1.2.3.orig/speech_class/waveP.h +++ speech-tools-1.2.3/speech_class/waveP.h @@ -41,7 +41,7 @@ #include -/* The follow two (raw and ulaw) cannot be in the table as they cannot */ +/* The follow two (raw, alaw and ulaw) cannot be in the table as they cannot */ /* identify themselves from files (both are unheadered) */ enum EST_read_status load_wave_raw(EST_TokenStream &ts, short **data, int *num_samples, int *num_channels, int *word_size, int @@ -62,6 +62,15 @@ int sample_rate, enum EST_sample_type_t, int bo); +enum EST_read_status load_wave_alaw(EST_TokenStream &ts, short **data, int + *num_samples, int *num_channels, int *word_size, int + *sample_rate, enum EST_sample_type_t *sample_type, int *bo, int + offset, int length); +enum EST_write_status save_wave_alaw(FILE *fp, const short *data, int offset, + int length, int num_channels, + int sample_rate, + enum EST_sample_type_t, int bo); + enum EST_read_status load_wave_nist(EST_TokenStream &ts, short **data, int *num_samples, int *num_channels, int *word_size, int *sample_rate, enum EST_sample_type_t *sample_type, int *bo, int debian/patches/speech_class_EST_wave_utils.cc.diff0000644000000000000000000001114411711053613017443 0ustar This patch is part of a series of patches for speech-tools for Debian GNU/Linux, to allow alaw output (asterisk interoperability) Index: b/speech_class/EST_wave_utils.cc =================================================================== --- a/speech_class/EST_wave_utils.cc +++ b/speech_class/EST_wave_utils.cc @@ -53,7 +53,9 @@ #include "EST_error.h" static short st_ulaw_to_short(unsigned char ulawbyte); +static short st_alaw_to_short(unsigned char alawbyte); static unsigned char st_short_to_ulaw(short sample); +static unsigned char st_short_to_alaw(short sample); /* * This table is @@ -202,6 +204,16 @@ } +void short_to_alaw(const short *data,unsigned char *alaw,int length) +{ + /* Convert alaw to shorts */ + int i; + + for (i=0; i