Hallo,
Ik ben al een tijdje aan het experimenteren met de text-to-speech synthesizer espeak (1.43.03), onder Opensuse 12.1 met XAMPP 1.7.7.
Via de shell gaat het verloopt het vlekkeloos, maar ik krijg deze applicatie via PHP, niet aan de praat.
Code:
Het volgende heb ik de volgende gevonden mogelijke oplossingen getest:
Ik ben al een tijdje aan het experimenteren met de text-to-speech synthesizer espeak (1.43.03), onder Opensuse 12.1 met XAMPP 1.7.7.
Via de shell gaat het verloopt het vlekkeloos, maar ik krijg deze applicatie via PHP, niet aan de praat.
Code:
PHP:
1
2
3
4
| <?php //Espeak aanroepen, een tekst uitspreken en dan wegschrijven exec('/usr/bin/espeak hallo -w /opt/lampp/htdocs/hallo.wav'); ?> |
Het volgende heb ik de volgende gevonden mogelijke oplossingen getest:
- system(), passtrhu() krijgen espeak ook niet aan de praat.
- schrijfrechten controleren: deze zullen goed staan omdat ik fwrite een bestanden weg kan schrijven onder nobody - nogroup.
- via php, bash- & perl-scripts uitvoeren die op hun beurt espeak aanroepen: commando's worden netjes uitgevoerd, maar espeak weer niet. (zie het ook niet in processenlijst verschijnen)
- met use nobody, espeak uit laten voeren: doet hij goed.
- Verschillende oplossingen (inclusief boven aangegeven) getest, aangegeven op het forum van espeak op sourceforge.net
- php-speak: lukte mij niet om het te compileren. (heb hier ook nog niet zoveel ervaring in)
- Ik wil best naar een andere tts voor linux kijken. Het liefst een met mbrola ondersteuning.