- Status Unconfirmed
- Percent Complete
- Task Type Bugs
- Category Rbutil
- Assigned To No-one
- Operating System All players
- Severity Critical
- Priority Very Low
- Reported Version Release 3.14
- Due in Version Undecided
-
Due Date
Undecided
-
Votes
2
- Dominik Riebeling (2018-08-17)
- fennec (2018-05-04)
- Private
FS#13156 - Creating of talk files fails ungracefuly when encounting unspeakable text.
Rockboxutility barfs while creating talk files if it encounters unpronouncable charicters (japanese kanji) and does not continue afterwords resulting in talk files not being copied to the player.
[talkgenerator.cpp:156 INFO] voicing: "シマシマ" to "/tmp/talkfiles/952b0e2854336082e41fb0ef8ef8dc97.wav"
[ttsfestival.cpp:188 INFO] Voicing "シマシマ" → "/tmp/talkfiles/952b0e2854336082e41fb0ef8ef8dc97.wav"
[rbsettings.cpp:162 INFO] GET U: "festival-client/path" "/usr/bin/festival_client"
[ttsfestival.cpp:194 INFO] Client cmd: "/usr/bin/festival_client –server localhost –otype riff –ttw –withlisp –output \"/tmp/talkfiles/952b0e2854336082e41fb0ef8ef8dc97.wav\" –prolog \"/tmp/RockboxUtility.zowYwG\" - "
[:0 WARNING] QProcess: Destroyed while process ("/usr/bin/festival_client") is still running.
/
The result of this is an invalid wav file wich the the encoder bails out on and the process aborts.
[talkgenerator.cpp:235 INFO] encoding "/tmp/talkfiles/952b0e2854336082e41fb0ef8ef8dc97.wav" to "/tmp/talkfiles/952b0e2854336082e41fb0ef8ef8dc97.talk"
[encoderrbspeex.cpp:82 INFO] Encoding "/tmp/talkfiles/952b0e2854336082e41fb0ef8ef8dc97.wav" to "/tmp/talkfiles/952b0e2854336082e41fb0ef8ef8dc97.talk"
[encoderrbspeex.cpp:103 ERROR] Error: invalid WAV file
[ttsfestival.cpp:29 INFO] Destroying instance
I suggest ignoring failed encoded files and continuing encoding and copying the files that suceeded.
Looks like changing if(m_talkList[i].encoded on line 245 in file /rockbox/rbutil/rbutilqt/base/talkfile.cpp to true will fix the problem.