diff --git a/multimedia/sound/espeak/actions.py b/multimedia/sound/espeak/actions.py new file mode 100644 index 0000000000..93a8ffd151 --- /dev/null +++ b/multimedia/sound/espeak/actions.py @@ -0,0 +1,31 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import shelltools +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import get + +WorkDir = "espeak-%s-source" % get.srcVERSION() + +def setup(): + # Build against portaudio v19 + shelltools.copy("src/portaudio19.h", "src/portaudio.h") + + # Remove binary voice dictionaries, we'll build them + shelltools.system("rm -rf espeak-data/*_dict") + +def build(): + autotools.make("-C src CXXFLAGS='%s' CFLAGS='%s' LDFLAGS='%s'" % (get.CXXFLAGS(), get.CFLAGS(), get.LDFLAGS())) + + shelltools.system("./compile-voices") + +def install(): + shelltools.cd("src") + autotools.rawInstall("DESTDIR=%s BINDIR=/usr/bin INCDIR=/usr/include/espeak LIBDIR=/usr/lib" % get.installDIR()) + shelltools.cd("..") + + pisitools.dodoc("ReadMe", "ChangeLog.txt", "License.txt") diff --git a/multimedia/sound/espeak/files/compile-voices.sh b/multimedia/sound/espeak/files/compile-voices.sh new file mode 100644 index 0000000000..6e3556547c --- /dev/null +++ b/multimedia/sound/espeak/files/compile-voices.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +cd dictsource +export ESPEAK_DATA_PATH=.. +for voice in $(../src/speak --voices | awk '{print $2}{print $5}' | egrep -v Language\|File\|/ | uniq); do \ + ../src/speak --compile=$voice; \ +done diff --git a/multimedia/sound/espeak/files/espeak-1.23-makefile_nostaticlibs.patch b/multimedia/sound/espeak/files/espeak-1.23-makefile_nostaticlibs.patch new file mode 100644 index 0000000000..2315d7351c --- /dev/null +++ b/multimedia/sound/espeak/files/espeak-1.23-makefile_nostaticlibs.patch @@ -0,0 +1,12 @@ +diff -uNr espeak-1.23-source/src/Makefile espeak-1.23-source-mod/src/Makefile +--- espeak-1.23-source/src/Makefile 2007-04-21 19:05:23.000000000 +0200 ++++ espeak-1.23-source-mod/src/Makefile 2007-04-24 07:50:46.000000000 +0200 +@@ -86,7 +86,7 @@ + # Install shared library + $(INSTALL) -m 755 $(LIB_NAME).$(LIBTAG) $(DESTDIR)$(LIBDIR) + # Install static library +- $(INSTALL) -m 755 $(STATIC_LIB_NAME) $(DESTDIR)$(LIBDIR) ++ #$(INSTALL) -m 755 $(STATIC_LIB_NAME) $(DESTDIR)$(LIBDIR) + $(LN_SF) $(LIB_NAME).$(LIBTAG) $(DESTDIR)$(LIBDIR)/$(LIB_NAME).$(LIB_VERSION) + $(LN_SF) $(LIB_NAME).$(LIB_VERSION) $(DESTDIR)$(LIBDIR)/$(LIB_NAME) + # Install development headers diff --git a/multimedia/sound/espeak/files/espeak.1 b/multimedia/sound/espeak/files/espeak.1 new file mode 100644 index 0000000000..fc8be049ab --- /dev/null +++ b/multimedia/sound/espeak/files/espeak.1 @@ -0,0 +1,102 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH ESPEAK 1 "July 25, 2007" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +espeak \- A multi-lingual software speech synthesizer. +.SH SYNOPSIS +.B espeak +.RI [ options ]\ [ "" ] +.SH DESCRIPTION +.B espeak +is a software speech synthesizer for English, and some other languages. +.SH OPTIONS +.TP +.B \-h +Show summary of options. +.TP +.B \-f +Text file to speak +.TP +.B \-\-stdin +Read text input from stdin instead of a file +.TP +If neither -f nor --stdin, are spoken, or if none then text is spoken from stdin, each line separately. +.TP +.B \-q +Quiet, don't produce any speech (may be useful with -x) +.TP +.B \-a +Amplitude, 0 to 20, default is 10 +.TP +.B \-l +Line length. If not zero (which is the default), consider +lines less than this length as and-of-clause +.TP +.B \-p +Pitch adjustment, 0 to 99, default is 50 +.TP +.B -s +Speed in words per minute, default is 160 +.TP +.B \-v +Use voice file of this name from espeak-data/voices +.TP +.B -b +Input text is 8-bit encoding +.TP +.B -m +Indicates that the text contains SSML (Speech Synthesis Markup Language) tags or other XML tags. Those SSML tags which are supported are interpreted. Other tags, including HTML, are ignored, except that some HTML tags such as

and
  • ensure a break in the speech. +.TP +.B \-w +Write output to this WAV file, rather than speaking it directly +.TP +.B \-x +Write phoneme mnemonics to stdout +.TP +.B \-X +Write phonemes mnemonics and translation trace to stdout. If rules files have been built with --compile=debug, line numbers will also be displayed. +.TP +.B \-\-stdout +Write speech output to stdout +.TP +.B \-\-compile= +Compile the pronunciation rules and dictionary in the current directory. = is optional and specifies which language +.TP +.B \-\-path= +Specifies the directory containing the espeak-data directory +.TP +.B \-\-phonout= +Write output from -x -X commands and mbrola phoneme data to this file +.TP +.B \-\-punct="" +Speak the names of punctuation characters during speaking. If = is omitted, all punctuation is spoken. +.TP +.B \-k +Indicate capital letters with: 1=sound, 2=the word "capitals", higher values = a pitch increase (try -k20). +.TP +.B \-\-voices[=] +Lists the available voices. If = is present then only those voices which are suitable for that language are listed. +.TP +.B \-\-compile=voicename +Compile the pronunciation rules and dictionary in the current directory. = is optional and specifies which language +.TP +.B \-\-compile=debug +Compile the pronunciation rules and dictionary in the current directory as above, but include line numbers, that get shown when -X is used. +.SH AUTHOR +eSpeak was written by Jonathan Duddington . The webpage for this package can be found at http://espeak.sourceforge.net/. +.PP +This manual page was written by Luke Yelavich , for the Ubuntu project (but may be used by others). diff --git a/multimedia/sound/espeak/pspec.xml b/multimedia/sound/espeak/pspec.xml new file mode 100644 index 0000000000..7474e573cd --- /dev/null +++ b/multimedia/sound/espeak/pspec.xml @@ -0,0 +1,82 @@ + + + + + espeak + http://espeak.freedesktop.org + + PisiLinux Community + admins@pisilinux.org + + GPLv3+ + library + app:console + Software speech synthesizer (text-to-speech) + espeak produces good quality English speech. It uses a different synthesis method from other open source TTS engines and sounds quite different. + http://sourceforge.net/projects/espeak/files/espeak/espeak-1.48/espeak-1.48.04-source.zip/download + + compile-voices.sh + + + coreutils + portaudio-devel + pulseaudio-libs-devel + + + espeak-1.23-makefile_nostaticlibs.patch + + + + + + espeak + + portaudio + + + /usr/bin + /usr/lib + /usr/share/espeak-data + /usr/share/man + /usr/share/doc + + + espeak.1 + + + + + espeak-devel + Development headers for espeak + + espeak + + + /usr/include + + + + + + 2014-06-01 + 1.48.04 + Version bump. + Kamil Atlı + suvarice@gmail.com + + + 2014-01-23 + 1.47.11 + Version bump. + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2012-08-29 + 1.46.02 + First release + Osman Erkan + osman.erkan@pisilinux.org + + + diff --git a/multimedia/sound/espeak/translations.xml b/multimedia/sound/espeak/translations.xml new file mode 100644 index 0000000000..24e6d764a7 --- /dev/null +++ b/multimedia/sound/espeak/translations.xml @@ -0,0 +1,13 @@ + + + + espeak + Yazılımsal konuşma sentezleyici (text-to-speech) + espeak iyi kalitede İngilizce konuşma sentezler. Diğer açık kaynaklı TTS motorlarından farklı bir sentezleme yöntemi kullandığından üretilen sesler biraz farklıdır. + + + + espeak-devel + espeak için geliştirme başlıkları + +