freebsd-ports/audio/festival/files/patch-long-over-float
Mikhail Teterin 9795f213f8 Update from 1.96 to 2.1. Despite being newer, the upstream release
remains uncompileable by modern compilers and substantial patches --
obtained from both Debian and NetBSD ports of the same software were
necessary.

Among the patches is a functionality-improving one, which allows the
new version to continue using voices created for 1.9x

Tested by:		bapt
2013-09-06 15:24:58 +00:00

23 lines
943 B
Text

Part of Debian's patch at:
http://patch-tracker.debian.org/patch/series/view/festival/1:2.1~release-5.1/src_modules_MultiSyn_path_fixes.diff
--- festival/src/modules/MultiSyn/TargetCostRescoring.cc 2011-02-16 10:35:34.000000000 -0600
+++ festival/src/modules/MultiSyn/TargetCostRescoring.cc 2011-02-16 10:43:23.000000000 -0600
@@ -82,7 +82,7 @@
//cerr << scores << endl;
// calculate simple mean duration of some or all of candidates
- float meandur = 0.0;
+ long meandur = 0.0;
int n = 0;
if( beam_width < 0 ){ // just average all of them
@@ -107,7 +107,7 @@
// then tweak the scores based on that
for( EST_Litem *li = scores.head(); li != 0; li = li->next() ){
- float cand_dur = scores(li)._dur;
+ long cand_dur = scores(li)._dur;
// cerr << scores(li)._cand->score << " ";
scores(li)._cand->score += (mult * abs( cand_dur - meandur ) );
// cerr << scores(li)._cand->score << endl;