diff --git a/text2speech/espeak/espeak-1.45.04-use-system-portaudio-header.patch b/text2speech/espeak/espeak-1.45.04-use-system-portaudio-header.patch new file mode 100644 index 000000000..7ec2de372 --- /dev/null +++ b/text2speech/espeak/espeak-1.45.04-use-system-portaudio-header.patch @@ -0,0 +1,498 @@ +# --- SDE-COPYRIGHT-NOTE-BEGIN --- +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# +# Filename: package/.../espeak/espeak-1.45.04-use-system-portaudio-header.patch +# Copyright (C) 2011 The OpenSDE Project +# +# More information can be found in the files COPYING and README. +# +# This patch file is dual-licensed. It is available under the license the +# patched project is licensed under, as long as it is an OpenSource license +# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms +# of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# --- SDE-COPYRIGHT-NOTE-END --- + +diff -ruN espeak-1.45.04-source-orig/src/portaudio.h espeak-1.45.04-source/src/portaudio.h +--- espeak-1.45.04-source-orig/src/portaudio.h 2011-04-25 18:22:27.000000000 +0200 ++++ espeak-1.45.04-source/src/portaudio.h 1970-01-01 01:00:00.000000000 +0100 +@@ -1,466 +0,0 @@ +-// NOTE: Copy this file to portaudio.h in order to compile with V18 portaudio +- +- +-#ifndef PORT_AUDIO_H +-#define PORT_AUDIO_H +- +-#ifdef __cplusplus +-extern "C" +-{ +-#endif /* __cplusplus */ +- +-/* +- * $Id: portaudio.h,v 1.5 2002/03/26 18:04:22 philburk Exp $ +- * PortAudio Portable Real-Time Audio Library +- * PortAudio API Header File +- * Latest version available at: http://www.audiomulch.com/portaudio/ +- * +- * Copyright (c) 1999-2000 Ross Bencina and Phil Burk +- * +- * Permission is hereby granted, free of charge, to any person obtaining +- * a copy of this software and associated documentation files +- * (the "Software"), to deal in the Software without restriction, +- * including without limitation the rights to use, copy, modify, merge, +- * publish, distribute, sublicense, and/or sell copies of the Software, +- * and to permit persons to whom the Software is furnished to do so, +- * subject to the following conditions: +- * +- * The above copyright notice and this permission notice shall be +- * included in all copies or substantial portions of the Software. +- * +- * Any person wishing to distribute modifications to the Software is +- * requested to send the modifications to the original developer so that +- * they can be incorporated into the canonical version. +- * +- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF +- * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +- * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +- * +- */ +- +-typedef int PaError; +-typedef enum { +- paNoError = 0, +- +- paHostError = -10000, +- paInvalidChannelCount, +- paInvalidSampleRate, +- paInvalidDeviceId, +- paInvalidFlag, +- paSampleFormatNotSupported, +- paBadIODeviceCombination, +- paInsufficientMemory, +- paBufferTooBig, +- paBufferTooSmall, +- paNullCallback, +- paBadStreamPtr, +- paTimedOut, +- paInternalError, +- paDeviceUnavailable +-} PaErrorNum; +- +-/* +- Pa_Initialize() is the library initialisation function - call this before +- using the library. +- +-*/ +- +-PaError Pa_Initialize( void ); +- +-/* +- Pa_Terminate() is the library termination function - call this after +- using the library. +- +-*/ +- +-PaError Pa_Terminate( void ); +- +-/* +- Pa_GetHostError() returns a host specific error code. +- This can be called after receiving a PortAudio error code of paHostError. +- +-*/ +- +-long Pa_GetHostError( void ); +- +-/* +- Pa_GetErrorText() translates the supplied PortAudio error number +- into a human readable message. +- +-*/ +- +-const char *Pa_GetErrorText( PaError errnum ); +- +-/* +- Sample formats +- +- These are formats used to pass sound data between the callback and the +- stream. Each device has a "native" format which may be used when optimum +- efficiency or control over conversion is required. +- +- Formats marked "always available" are supported (emulated) by all +- PortAudio implementations. +- +- The floating point representation (paFloat32) uses +1.0 and -1.0 as the +- maximum and minimum respectively. +- +- paUInt8 is an unsigned 8 bit format where 128 is considered "ground" +- +-*/ +- +-typedef unsigned long PaSampleFormat; +-#define paFloat32 ((PaSampleFormat) (1<<0)) /*always available*/ +-#define paInt16 ((PaSampleFormat) (1<<1)) /*always available*/ +-#define paInt32 ((PaSampleFormat) (1<<2)) /*always available*/ +-#define paInt24 ((PaSampleFormat) (1<<3)) +-#define paPackedInt24 ((PaSampleFormat) (1<<4)) +-#define paInt8 ((PaSampleFormat) (1<<5)) +-#define paUInt8 ((PaSampleFormat) (1<<6)) +-#define paCustomFormat ((PaSampleFormat) (1<<16)) +- +-/* +- Device enumeration mechanism. +- +- Device ids range from 0 to Pa_CountDevices()-1. +- +- Devices may support input, output or both. +- +-*/ +- +-typedef int PaDeviceID; +-#define paNoDevice -1 +- +-int Pa_CountDevices( void ); +- +-typedef struct +-{ +- int structVersion; +- const char *name; +- int maxInputChannels; +- int maxOutputChannels; +- /* Number of discrete rates, or -1 if range supported. */ +- int numSampleRates; +- /* Array of supported sample rates, or {min,max} if range supported. */ +- const double *sampleRates; +- PaSampleFormat nativeSampleFormats; +-} +-PaDeviceInfo; +- +-/* +- Pa_GetDefaultInputDeviceID(), Pa_GetDefaultOutputDeviceID() return the +- default device ids for input and output respectively, or paNoDevice if +- no device is available. +- The result can be passed to Pa_OpenStream(). +- +- On the PC, the user can specify a default device by +- setting an environment variable. For example, to use device #1. +- +- set PA_RECOMMENDED_OUTPUT_DEVICE=1 +- +- The user should first determine the available device ids by using +- the supplied application "pa_devs". +- +-*/ +- +-PaDeviceID Pa_GetDefaultInputDeviceID( void ); +-PaDeviceID Pa_GetDefaultOutputDeviceID( void ); +- +- +- +-/* +- Pa_GetDeviceInfo() returns a pointer to an immutable PaDeviceInfo structure +- for the device specified. +- If the device parameter is out of range the function returns NULL. +- +- PortAudio manages the memory referenced by the returned pointer, the client +- must not manipulate or free the memory. The pointer is only guaranteed to be +- valid between calls to Pa_Initialize() and Pa_Terminate(). +- +-*/ +- +-const PaDeviceInfo* Pa_GetDeviceInfo( PaDeviceID device ); +- +-/* +- PaTimestamp is used to represent a continuous sample clock with arbitrary +- start time that can be used for syncronization. The type is used for the +- outTime argument to the PortAudioCallback and as the result of Pa_StreamTime() +- +-*/ +- +-typedef double PaTimestamp; +- +-/* +- PortAudioCallback is implemented by PortAudio clients. +- +- inputBuffer and outputBuffer are arrays of interleaved samples, +- the format, packing and number of channels used by the buffers are +- determined by parameters to Pa_OpenStream() (see below). +- +- framesPerBuffer is the number of sample frames to be processed by the callback. +- +- outTime is the time in samples when the buffer(s) processed by +- this callback will begin being played at the audio output. +- See also Pa_StreamTime() +- +- userData is the value of a user supplied pointer passed to Pa_OpenStream() +- intended for storing synthesis data etc. +- +- return value: +- The callback can return a non-zero value to stop the stream. This may be +- useful in applications such as soundfile players where a specific duration +- of output is required. However, it is not necessary to utilise this mechanism +- as StopStream() will also terminate the stream. A callback returning a +- non-zero value must fill the entire outputBuffer. +- +- NOTE: None of the other stream functions may be called from within the +- callback function except for Pa_GetCPULoad(). +- +-*/ +- +-typedef int (PortAudioCallback)( +- void *inputBuffer, void *outputBuffer, +- unsigned long framesPerBuffer, +- PaTimestamp outTime, void *userData ); +- +- +-/* +- Stream flags +- +- These flags may be supplied (ored together) in the streamFlags argument to +- the Pa_OpenStream() function. +- +-*/ +- +-#define paNoFlag (0) +-#define paClipOff (1<<0) /* disable default clipping of out of range samples */ +-#define paDitherOff (1<<1) /* disable default dithering */ +-#define paPlatformSpecificFlags (0x00010000) +-typedef unsigned long PaStreamFlags; +- +-/* +- A single PortAudioStream provides multiple channels of real-time +- input and output audio streaming to a client application. +- Pointers to PortAudioStream objects are passed between PortAudio functions. +-*/ +- +-typedef void PortAudioStream; +-#define PaStream PortAudioStream +- +-/* +- Pa_OpenStream() opens a stream for either input, output or both. +- +- stream is the address of a PortAudioStream pointer which will receive +- a pointer to the newly opened stream. +- +- inputDevice is the id of the device used for input (see PaDeviceID above.) +- inputDevice may be paNoDevice to indicate that an input device is not required. +- +- numInputChannels is the number of channels of sound to be delivered to the +- callback. It can range from 1 to the value of maxInputChannels in the +- PaDeviceInfo record for the device specified by the inputDevice parameter. +- If inputDevice is paNoDevice numInputChannels is ignored. +- +- inputSampleFormat is the sample format of inputBuffer provided to the callback +- function. inputSampleFormat may be any of the formats described by the +- PaSampleFormat enumeration (see above). PortAudio guarantees support for +- the device's native formats (nativeSampleFormats in the device info record) +- and additionally 16 and 32 bit integer and 32 bit floating point formats. +- Support for other formats is implementation defined. +- +- inputDriverInfo is a pointer to an optional driver specific data structure +- containing additional information for device setup or stream processing. +- inputDriverInfo is never required for correct operation. If not used +- inputDriverInfo should be NULL. +- +- outputDevice is the id of the device used for output (see PaDeviceID above.) +- outputDevice may be paNoDevice to indicate that an output device is not required. +- +- numOutputChannels is the number of channels of sound to be supplied by the +- callback. See the definition of numInputChannels above for more details. +- +- outputSampleFormat is the sample format of the outputBuffer filled by the +- callback function. See the definition of inputSampleFormat above for more +- details. +- +- outputDriverInfo is a pointer to an optional driver specific data structure +- containing additional information for device setup or stream processing. +- outputDriverInfo is never required for correct operation. If not used +- outputDriverInfo should be NULL. +- +- sampleRate is the desired sampleRate. For full-duplex streams it is the +- sample rate for both input and output +- +- framesPerBuffer is the length in sample frames of all internal sample buffers +- used for communication with platform specific audio routines. Wherever +- possible this corresponds to the framesPerBuffer parameter passed to the +- callback function. +- +- numberOfBuffers is the number of buffers used for multibuffered communication +- with the platform specific audio routines. If you pass zero, then an optimum +- value will be chosen for you internally. This parameter is provided only +- as a guide - and does not imply that an implementation must use multibuffered +- i/o when reliable double buffering is available (such as SndPlayDoubleBuffer() +- on the Macintosh.) +- +- streamFlags may contain a combination of flags ORed together. +- These flags modify the behaviour of the streaming process. Some flags may only +- be relevant to certain buffer formats. +- +- callback is a pointer to a client supplied function that is responsible +- for processing and filling input and output buffers (see above for details.) +- +- userData is a client supplied pointer which is passed to the callback +- function. It could for example, contain a pointer to instance data necessary +- for processing the audio buffers. +- +- return value: +- Upon success Pa_OpenStream() returns PaNoError and places a pointer to a +- valid PortAudioStream in the stream argument. The stream is inactive (stopped). +- If a call to Pa_OpenStream() fails a non-zero error code is returned (see +- PaError above) and the value of stream is invalid. +- +-*/ +- +-PaError Pa_OpenStream( PortAudioStream** stream, +- PaDeviceID inputDevice, +- int numInputChannels, +- PaSampleFormat inputSampleFormat, +- void *inputDriverInfo, +- PaDeviceID outputDevice, +- int numOutputChannels, +- PaSampleFormat outputSampleFormat, +- void *outputDriverInfo, +- double sampleRate, +- unsigned long framesPerBuffer, +- unsigned long numberOfBuffers, +- PaStreamFlags streamFlags, +- PortAudioCallback *callback, +- void *userData ); +- +- +-/* +- Pa_OpenDefaultStream() is a simplified version of Pa_OpenStream() that opens +- the default input and/or output devices. Most parameters have identical meaning +- to their Pa_OpenStream() counterparts, with the following exceptions: +- +- If either numInputChannels or numOutputChannels is 0 the respective device +- is not opened. This has the same effect as passing paNoDevice in the device +- arguments to Pa_OpenStream(). +- +- sampleFormat applies to both the input and output buffers. +- +-*/ +- +-PaError Pa_OpenDefaultStream( PortAudioStream** stream, +- int numInputChannels, +- int numOutputChannels, +- PaSampleFormat sampleFormat, +- double sampleRate, +- unsigned long framesPerBuffer, +- unsigned long numberOfBuffers, +- PortAudioCallback *callback, +- void *userData ); +- +-/* +- Pa_CloseStream() closes an audio stream, flushing any pending buffers. +- +-*/ +- +-PaError Pa_CloseStream( PortAudioStream* ); +- +-/* +- Pa_StartStream() and Pa_StopStream() begin and terminate audio processing. +- Pa_StopStream() waits until all pending audio buffers have been played. +- Pa_AbortStream() stops playing immediately without waiting for pending +- buffers to complete. +- +-*/ +- +-PaError Pa_StartStream( PortAudioStream *stream ); +- +-PaError Pa_StopStream( PortAudioStream *stream ); +- +-PaError Pa_AbortStream( PortAudioStream *stream ); +- +-/* +- Pa_StreamActive() returns one (1) when the stream is active (ie playing +- or recording audio), zero (0) when not playing, or a negative error number +- if the stream is invalid. +- The stream is active between calls to Pa_StartStream() and Pa_StopStream(), +- but may also become inactive if the callback returns a non-zero value. +- In the latter case, the stream is considered inactive after the last +- buffer has finished playing. +- +-*/ +- +-PaError Pa_StreamActive( PortAudioStream *stream ); +- +-/* +- Pa_StreamTime() returns the current output time in samples for the stream. +- This time may be used as a time reference (for example synchronizing audio to +- MIDI). +- +-*/ +- +-PaTimestamp Pa_StreamTime( PortAudioStream *stream ); +- +-/* +- Pa_GetCPULoad() returns the CPU Load for the stream. +- The "CPU Load" is a fraction of total CPU time consumed by the stream's +- audio processing routines including, but not limited to the client supplied +- callback. +- A value of 0.5 would imply that PortAudio and the sound generating +- callback was consuming roughly 50% of the available CPU time. +- This function may be called from the callback function or the application. +- +-*/ +- +-double Pa_GetCPULoad( PortAudioStream* stream ); +- +-/* +- Pa_GetMinNumBuffers() returns the minimum number of buffers required by +- the current host based on minimum latency. +- On the PC, for the DirectSound implementation, latency can be optionally set +- by user by setting an environment variable. +- For example, to set latency to 200 msec, put: +- +- set PA_MIN_LATENCY_MSEC=200 +- +- in the AUTOEXEC.BAT file and reboot. +- If the environment variable is not set, then the latency will be determined +- based on the OS. Windows NT has higher latency than Win95. +- +-*/ +- +-int Pa_GetMinNumBuffers( int framesPerBuffer, double sampleRate ); +- +-/* +- Pa_Sleep() puts the caller to sleep for at least 'msec' milliseconds. +- You may sleep longer than the requested time so don't rely on this for +- accurate musical timing. +- +- Pa_Sleep() is provided as a convenience for authors of portable code (such as +- the tests and examples in the PortAudio distribution.) +- +-*/ +- +-void Pa_Sleep( long msec ); +- +-/* +- Pa_GetSampleSize() returns the size in bytes of a single sample in the +- supplied PaSampleFormat, or paSampleFormatNotSupported if the format is +- no supported. +- +-*/ +- +-PaError Pa_GetSampleSize( PaSampleFormat format ); +- +- +-#ifdef __cplusplus +-} +-#endif /* __cplusplus */ +-#endif /* PORT_AUDIO_H */ +diff -ruN espeak-1.45.04-source-orig/src/wavegen.cpp espeak-1.45.04-source/src/wavegen.cpp +--- espeak-1.45.04-source-orig/src/wavegen.cpp 2011-05-27 15:49:38.376003719 +0200 ++++ espeak-1.45.04-source/src/wavegen.cpp 2011-05-27 15:40:41.372005925 +0200 +@@ -39,7 +39,7 @@ + //#undef INCLUDE_KLATT + + #ifdef USE_PORTAUDIO +-#include "portaudio.h" ++#include + #undef USE_PORTAUDIO + // determine portaudio version by looking for a #define which is not in V18 + #ifdef paNeverDropInput diff --git a/text2speech/espeak/espeak.cache b/text2speech/espeak/espeak.cache new file mode 100644 index 000000000..13d0a0f22 --- /dev/null +++ b/text2speech/espeak/espeak.cache @@ -0,0 +1,24 @@ + +[TIMESTAMP] 1306926740 Wed Jun 1 13:12:20 2011 +[BUILDTIME] 10 (5) +[SIZE] 2.07 MB, 225 files + +[DEP] alsa-lib +[DEP] bash +[DEP] binutils +[DEP] coreutils +[DEP] diffutils +[DEP] fhs +[DEP] findutils +[DEP] gawk +[DEP] gcc +[DEP] glibc +[DEP] grep +[DEP] jack +[DEP] linux-header +[DEP] make +[DEP] patch +[DEP] portaudio +[DEP] sed +[DEP] sysfiles +[DEP] unzip diff --git a/text2speech/espeak/espeak.conf b/text2speech/espeak/espeak.conf new file mode 100644 index 000000000..aa46a848f --- /dev/null +++ b/text2speech/espeak/espeak.conf @@ -0,0 +1,16 @@ +# --- SDE-COPYRIGHT-NOTE-BEGIN --- +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# +# Filename: package/.../espeak/espeak.conf +# Copyright (C) 2011 The OpenSDE Project +# +# More information can be found in the files COPYING and README. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. A copy of the +# GNU General Public License can be found in the file COPYING. +# --- SDE-COPYRIGHT-NOTE-END --- + +# no toplevel Makefile +hook_add preconf 9 'cd src' diff --git a/text2speech/espeak/espeak.desc b/text2speech/espeak/espeak.desc new file mode 100644 index 000000000..475b27c6c --- /dev/null +++ b/text2speech/espeak/espeak.desc @@ -0,0 +1,35 @@ +[COPY] --- SDE-COPYRIGHT-NOTE-BEGIN --- +[COPY] This copyright note is auto-generated by ./scripts/Create-CopyPatch. +[COPY] +[COPY] Filename: package/.../espeak/espeak.desc +[COPY] Copyright (C) 2011 The OpenSDE Project +[COPY] +[COPY] More information can be found in the files COPYING and README. +[COPY] +[COPY] This program is free software; you can redistribute it and/or modify +[COPY] it under the terms of the GNU General Public License as published by +[COPY] the Free Software Foundation; version 2 of the License. A copy of the +[COPY] GNU General Public License can be found in the file COPYING. +[COPY] --- SDE-COPYRIGHT-NOTE-END --- + +[I] A Software speech synthesizer (text-to-speech) + +[T] eSpeak is a compact open source software speech synthesizer for English and +[T] other languages. eSpeak uses a "formant synthesis" method. This allows many +[T] languages to be provided in a small size. The speech is clear, and can be +[T] used at high speeds, but is not as natural or smooth as larger synthesizers +[T] which are based on human speech recordings. + +[U] http://espeak.sourceforge.net/ + +[A] John +[M] The OpenSDE Community + +[C] extra/audio + +[L] GPL +[S] Stable +[V] 1.45.04 +[P] X -----5---9 171.000 + +[D] 0 espeak-1.45.04-source.zip http://dl.sourceforge.net/sourceforge/espeak/