Commit 165aee05 authored by Samuel Thibault's avatar Samuel Thibault

Import Debian changes 3.01h-1

mbrola (3.01h-1) unstable; urgency=low

  * Initial release (Closes: #509517).
parent ae3a1b1e
Mbrola package
--------------
The mbrola package provides the code part of the mbrola speech synthesizer.
To make it work, you need to install voice packages according to the desired
languages and quality, these are called mbrola-xyn where xyn is the mbrola voice
identifier, the same as in the upstream database:
http://tcts.fpms.ac.be/synthesis/
Voice packages also provide the virtual package mbrola-voice-<lang>
where <lang> is the iso code of the language), and sometimes also
mbrola-voice-<lang>-<territory> where the additional <territory> is the
territory of the language.
Since synthesizes wave speech from phonemes, you also need a text to phoneme
converter, such as espeak or cicero, and a player such as sox. For instance, to
use the fr4 voice, you can run
echo 'Bonjour, monde !' | espeak -v mb-fr4 --stdin | mbrola -e /usr/share/mbrola/voices/fr4 - -.au | play -t .au -
Not all mbrola voices are packaged, because they take a lot of space and require
text to phoneme support. If you need to package a particular mbrola voice, you
should probably just use the debian/mbrola-voice-package-generate script from
the /usr/share/doc/mbrola/examples.
-- Samuel Thibault <samuel.thibault@ens-lyon.org> Sun, 18 Jan 2009 22:31:59 +0100
mbrola (3.01h-1) unstable; urgency=low
* Initial release (Closes: #509517).
-- Samuel Thibault <samuel.thibault@ens-lyon.org> Sun, 18 Jan 2009 22:32:09 +0100
Source: mbrola
Section: non-free/sound
Priority: optional
Maintainer: Samuel Thibault <samuel.thibault@ens-lyon.org>
DM-Upload-Allowed: yes
Build-Depends: debhelper (>= 5), unzip, libc6-i386 [amd64]
Standards-Version: 3.8.0
Homepage: http://tcts.fpms.ac.be/synthesis/
Package: mbrola
Architecture: i386 alpha powerpc sparc arm armel amd64
Depends: ${shlibs:Depends}
Suggests: mbrola-voice, espeak, cicero
Description: Multilingual software speech synthesizer
Mbrola is Thierry Dutoit's phonemizer for multilingual speech synthesis. The
various diphone databases are distributed on separate packages, but they
must be used with and only with Mbrola because of license matters. Read the
copyright for details.
.
Mbrola itself doesn't provide full TTS. It is a speech synthesizer based on
the concatenation of diphones. It takes a list of phonemes as input,
together with prosodic information (duration of phonemes and a piecewise linear
description of pitch), and produces speech samples on 16 bits (linear),
at the sampling frequency of the diphone database.
.
Use Mbrola along with Freephone, cicero or espeak to have a complete
text-to-speech in English.
This package was debianized by Samuel Thibault <samuel.thibault@ens-lyon.org>
on Sun, 28 Dec 2008 00:15:04 +0100, based on the packaging from the Oralux
distribution (Igor B. Poretsky <master@goga.energo.ru> and Gilles Casse
<gcasse@oralux.org>)
It was downloaded from http://tcts.fpms.ac.be/synthesis/
Upstream Author: Dr Thierry Dutoit <thierry.dutoit@fpms.ac.be>
Copyright:
Copyright (C) 1996-2008 Dr Thierry Dutoit <thierry.dutoit@fpms.ac.be>
License:
This program and object code is being provided to "you", the licensee,
by Thierry Dutoit, the "author", under the following license, which
applies to any program, object code or other work which contains a
notice placed by the copyright holder saying it may be distributed
under the terms of this license. The "program", below, refers to any
such program, object code or work.
By obtaining, using and/or copying this program, you agree that you
have read, understood, and will comply with these terms and
conditions:
Terms and conditions for the distribution of the program
--------------------------------------------------------
This program may not be sold or incorporated into any product which is
sold without prior permission from the author.
When no charge is made, this program may be copied and distributed
freely, provided that this notice is copied and distributed with
it. Each time you redistribute the program (or any work based on the
program), the recipient automatically receives a license from the
original licensor to copy or distribute the program subject to these
terms and conditions. You may not impose any further restrictions on
the recipients' exercise of the rights granted herein. You are not
responsible for enforcing compliance by third parties to this License.
If you wish to incorporate the program into other free programs whose
distribution conditions are different, write to the author to ask for
permission.
If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this license, they do not
excuse you from the conditions of this license. If you cannot
distribute so as to satisfy simultaneously your obligations under this
license and any other pertinent obligations, then as a consequence you
may not distribute the program at all. For example, if a patent
license would not permit royalty-free redistribution of the program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this license would be to
refrain entirely from distribution of the program.
Terms and conditions on the use of the program
----------------------------------------------
Permission is granted to use this software for non-commercial,
non-military purposes, with and only with the voice and language
databases made available by the author from the MBROLA project www
homepage:
http://tcts.fpms.ac.be/synthesis
In return, the author asks you to mention the MBROLA reference paper:
T. DUTOIT, V. PAGEL, N. PIERRET, F. BATAILLE, O. VAN DER VRECKEN
"The MBROLA Project: Towards a Set of High-Quality Speech
Synthesizers Free of Use for Non-Commercial Purposes"
Proc. ICSLP'96, Philadelphia, vol. 3, pp. 1393-1396.
or, for a more general reference to Text-To-Speech synthesis, the
book:
An Introduction to Text-To-Speech Synthesis,
T. DUTOIT, Kluwer Academic Publishers, Dordrecht
Hardbound, ISBN 0-7923-4498-7
April 1997, 312 pp.
in any scientific publication referring to work for which this program
has been used.
Disclaimer
----------
THIS SOFTWARE CARRIES NO WARRANTY, EXPRESSED OR IMPLIED. THE USER
ASSUMES ALL RISKS, KNOWN OR UNKNOWN, DIRECT OR INDIRECT, WHICH INVOLVE
THIS SOFTWARE IN ANY WAY. IN PARTICULAR, THE AUTHOR DOES NOT TAKE ANY
COMMITMENT IN VIEW OF ANY POSSIBLE THIRD PARTY RIGHTS.
Note:
On 22nd Dec. 2008, Thierry Dutoit mailed he was OK with Debian distributing
mbrola in its non-free category.
unpacked/readme.txt
debian/mbrola-voice-package-generate
debian/mbrola.1
#!/bin/bash
shopt -s nocaseglob nullglob
me="Samuel Thibault <samuel.thibault@ens-lyon.org>"
debug() {
:
echo "$@"
}
if [ "$#" -lt 4 ]
then
echo "Usage: $0 code version language locale"
echo "for instance, $0 ca1 0.1 \"Canadian French\" fr_CA"
exit 1
fi
code="$1"
version="$2"
language="$3"
language="$(echo $language | sed -e 's/^\(.\)/\u\1/')"
locale="$4"
locale_lang="${locale/%_*/}"
locale_territory=
[ -z "${locale/*_*}" ] && locale_territory="${locale/#*_/}"
territory="$(echo $locale_territory | tr 'A-Z' 'a-z')"
a_language="a $language"
case $language in
A*|E*|I*|O*)
a_language="an $language"
esac
debug "code=\"$code\""
debug "version=\"$version\""
debug "language=\"$language\""
debug "locale=\"$locale\""
debug "lang=\"$locale_lang\""
debug "territory=\"$territory\""
debug "a language=\"$a_language\""
#
#
debug \# Check the cwd
#
#
license=
[ -r license.txt ] && license=license.txt
[ -r licence.txt ] && license=licence.txt
if [ -z "$license" ]
then
echo "missing license file, are you within the unzipped archive?"
exit 1
fi
#
#
debug \# check voice file
#
#
voice=
[ -r "$code" ] && voice="$code"
if [ -z "$voice" ];
then
echo "Could not find voice"
exit 1
fi
#
#
debug \# check help file
#
#
help=
[ -r "$code.txt" ] && help="$code.txt"
[ -r "$code.info" ] && help="$code.info"
try=$(echo $code | tr 'a-z' 'A-Z')
[ -r "$try.txt" ] && help="$try.txt"
[ -r "$try.info" ] && help="$try.info"
try=$(echo $code | sed -e 's/^\(.\)/\u\1/')
[ -r "$try.txt" ] && help="$try.txt"
[ -r "$try.info" ] && help="$try.info"
if [ -z "$help" ];
then
echo "Could not find help file"
exit 1
fi
debug "help=\"$help\""
#
#
debug \# detect gender
#
#
gender=male
grep -q -i female $help && gender=female
debug "gender=\"$gender\""
#
#
debug \# Look for a test
#
#
testdir=
[ -d "TEST" ] && testdir="TEST"
[ -d "test" ] && testdir="test"
[ -d "Test" ] && testdir="Test"
if [ -z "$testdir" ];
then
echo "Could not find testdir"
exit 1
fi
debug "testdir=\"$testdir\""
cd "$testdir"
testpho=$(ls -S *.pho *.Pho *.PHO | head -n 1)
cd - > /dev/null
if [ -z "$testpho" ];
then
echo "Could not find phoneme test file"
exit 1
fi
debug "testpho=\"$testpho\""
#
#
debug \# Try it
mbrola -e $voice $testdir/$testpho -.au | play -t .au - &
#
#
#
#
debug \# Ok, go !
#
#
tar czf ../mbrola-${code}_$version.orig.tar.gz --exclude=debian --transform "s/^\./mbrola-$code-$version/" .
mkdir -p debian
cat > debian/changelog << EOF
mbrola-$code ($version-1) UNRELEASED; urgency=low
* Initial release (Closes: #XXX).
-- $me $(date -R)
EOF
cat > debian/compat << EOF
5
EOF
provides="mbrola-voice-$locale_lang, mbrola-voice"
[ -n "$territory" ] && provides="mbrola-voice-$locale_lang-$territory, $provides"
cat > debian/control << EOF
Source: mbrola-$code
Section: non-free/sound
Priority: optional
Maintainer: $me
DM-Upload-Allowed: yes
Build-Depends: debhelper (>= 5)
Standards-Version: 3.8.0
Homepage: http://tcts.fpms.ac.be/synthesis/
Package: mbrola-$code
Architecture: all
Depends: mbrola
Provides: $provides
Description: $language $gender voice for Mbrola
This package contains $a_language diphone database provided in the context
of the MBROLA project see: http://tcts.fpms.ac.be/synthesis/
.
It provides $a_language $gender voice to be used with the MBROLA program.
EOF
cat > debian/copyright << EOF
This package was debianized by $me
on $(date -R), based on the packageing from the Oralux
distribution (Igor B. Poretsky <master@goga.energo.ru> and Gilles Casse
<gcasse@oralux.org>)
It was downloaded from http://tcts.fpms.ac.be/synthesis/
Upstream Author: Faculte Polytechnique de Mons - mbrola team <mbrola@tcts.fpm
s.ac.be>
Copyright:
Copyright (C) 1996-2008 Faculte Polytechnique de Mons - mbrola team <mbrola@tcts.fpms.ac.be>
$(tr -d ' ' < $license | iconv -f latin1 -t utf-8)
EOF
cat > debian/docs << EOF
$help
EOF
[ -r sampa.txt ] && echo sampa.txt >> debian/docs
[ -r label.txt ] && echo label.txt >> debian/docs
cat > debian/examples << EOF
$testdir/*
EOF
cat > debian/README.Debian << EOF
mbrola-$code for Debian
---------------------
This package installs the diphone database into /usr/share/mbrola/voices/$code .
All examples go to /usr/share/doc/mbrola-$code/examples .
You can test your installation by running:
mbrola /usr/share/mbrola/voices/$code /usr/share/doc/mbrola-$code/examples/$testpho ${testpho/.pho}.wav
which will create ${testpho/.pho}.wav in the current directory.
If you have Sox installed, you can run:
mbrola /usr/share/mbrola/voices/$code /usr/share/doc/mbrola-$code/examples/$testpho -.au | play -t .au -
to play it on the fly.
-- $me $(date -R)
EOF
cat > debian/rules << EOF
#!/usr/bin/make -f
build:
binary-arch:
binary-indep:
dh_testdir
dh_testroot
dh_prep
dh_install $code usr/share/mbrola/voices
dh_installdocs
dh_installchangelogs
dh_installexamples
dh_compress -X.pho
dh_fixperms
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep
clean:
dh_testdir
dh_clean
EOF
cat > ../ITP-mbrola-$code << EOF
Owner: $me
Subject: ITP: mbrola-$code -- $language $gender voice for Mbrola
Package: wnpp
Version: N/A; reported $(date +%Y-%m-%d)
Severity: wishlist
* Package name : mbrola-$code
Version : $version-1
Upstream Author : Faculte Polytechnique de Mons - mbrola team <mbrola@tcts.fpms.ac.be>
* URL : http://tcts.fpms.ac.be/synthesis
* License : see the file readme.txt in the source zip: non-free as in
without source code, and for non-commercial, non-military
purposes, with and only with the mbrola package made
available by the author.
Description : $language $gender voice for Mbrola
This package contains $a_language diphone database provided in the context
of the MBROLA project see: http://tcts.fpms.ac.be/synthesis/
.
It provides $a_language $gender voice to be used with the MBROLA
program.
EOF
wait
echo Warning: check that the gender was really $gender, or check on http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html as the readme is sometimes bogus
.\" Hey, EMACS: -*- nroff -*-
.TH MBROLA 1 "May 17, 2005"
.SH NAME
mbrola \- multilingual software speech synthesizer
.SH SYNOPSIS
.B mbrola
.RI [ options ] <voice_database> <pho_file>... <output_file>
.SH DESCRIPTION
.PP
\fBmbrola\fP is a speech synthesizer based on the concatenation of
diphones. It takes a list of phonemes as input, together with prosodic
information (duration of phonemes and a piecewise linear description
of pitch), and produces speech samples on 16 bits (linear), at the
sampling frequency of the diphone database.
.PP
It is therefore NOT a Text-To-Speech (TTS) synthesizer, since it does
not accept raw text as input. In order to obtain a full TTS system,
you need to use this synthesizer in combination with a text processing
system that produces phonetic and prosodic commands.
For instance, you may use package \fBfreephone\fP to obtain complete
English TTS.
.PP
A `\-' instead of pho_file or output_file means stdin or stdout.
Extension of output_file ( raw, au, wav, aiff ) tells the wanted audio format.
.SH OPTIONS
\fBmbrola\fP understands following command line options.
.TP
.B \-h
.br
Show summary of options.
.TP
.B \-i
.br
Display the database information if any.
.TP
.B \-e
.br
Ignore fatal errors on unkown diphone.
.TP
.B \-c comment_char
Set COMMENT char (escape sequence in pho files).
.TP
.B \-F flush_command
Set FLUSH command name.
.TP
.B \-v volume
Volume ratio. Float ratio applied to output samples.
.TP
.B \-f freq_ratio
Frequency ratio. Float ratio applied to pitch points.
.TP
.B \-t time_ratio
Time ratio. Float ratio applied to phone durations.
.TP
.B \-l voice_freq
Voice frequency. Target frequency for voice quality in Hz.
.TP
.B \-R rename_list
Phoneme rename list of the form: `a A b B ...'
.TP
.B \-C clone_list
Phoneme clone list of the form: `a A b B ...'
.TP
.B \-I file
Initialization file containing one command per line.
\fBCLONE\fP, \fBRENAME\fP, \fBVOICE\fP, \fBTIME\fP, \fBFREQ\fP, \fBVOLUME\fP, \fBFLUSH\fP, \fBCOMMENT\fP,
and \fBIGNORE\fP are available.
.SH SEE ALSO
.BR freephone (1),
.BR sox (1).
.br
See /usr/share/doc/mbrola/readme.txt for more info.
.SH AUTHOR
.nh
mbrola was written by Dr Thierry Dutoit <dutoit@tcts.fpms.ac.be>
.PP
This manual page was written by Igor B. Poretsky <master@goga.energo.ru>,
for the Debian project (but may be used by others).
#!/usr/bin/make -f
DEB_HOST_ARCH?=$(shell dpkg-architecture -qDEB_HOST_ARCH)
README_ZIPBALL=mbr301h_i386-ppc-alpha-ultra.zip
ifeq ($(DEB_HOST_ARCH),i386)
ZIPBALL=mbr301h_i386-ppc-alpha-ultra.zip
FILENAME=mbrola-linux-i386
endif
ifeq ($(DEB_HOST_ARCH),amd64)
ZIPBALL=mbr301h_i386-ppc-alpha-ultra.zip
FILENAME=mbrola-linux-i386
endif
ifeq ($(DEB_HOST_ARCH),alpha)
ZIPBALL=mbr301h_i386-ppc-alpha-ultra.zip
FILENAME=mbrola-linux-alpha
endif
ifeq ($(DEB_HOST_ARCH),powerpc)
ZIPBALL=mbr301h_i386-ppc-alpha-ultra.zip
FILENAME=mbrola302b-linux-ppc
endif
ifeq ($(DEB_HOST_ARCH),sparc)
ZIPBALL=mbr301h_i386-ppc-alpha-ultra.zip
FILENAME=mbrola-SuSElinux-ultra1.dat
endif
ifeq ($(DEB_HOST_ARCH),arm)
ZIPBALL=mbr301h_arm.zip
FILENAME=mbrola-linux-strongarm2
endif
ifeq ($(DEB_HOST_ARCH),armel)
ZIPBALL=mbr301h_arm.zip
FILENAME=mbrola-linux-strongarm2-static
endif
unpack:
unzip -u -d unpacked zipballs/$(ZIPBALL)
mbrola: unpack
cp -f unpacked/$(FILENAME) mbrola
chmod +x mbrola
build-arch: mbrola
build: build-arch
binary-arch: build-arch
dh_testdir
dh_testroot
dh_prep
dh_install mbrola usr/bin
dh_installdocs
dh_installman
dh_installchangelogs
dh_installexamples
dh_shlibdeps
dh_compress
dh_fixperms
dh_gencontrol
dh_md5sums
dh_builddeb
binary-indep:
binary: binary-arch
clean:
dh_testdir
dh_clean
rm -f mbrola
rm -fr unpacked
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment