mirror of
https://github.com/nims11/IPod-Shuffle-4g.git
synced 2025-12-08 00:18:01 +09:00
Only use voiceover if available
This commit is contained in:
parent
cab4d83fea
commit
b38534e6a4
1 changed files with 19 additions and 5 deletions
24
shuffle.py
24
shuffle.py
|
|
@ -60,12 +60,25 @@ class Text2Speech(object):
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def check_support():
|
def check_support():
|
||||||
|
voiceoverAvailable = False
|
||||||
|
|
||||||
|
# Check for pico2wave voiceover
|
||||||
if not exec_exists_in_path("pico2wave"):
|
if not exec_exists_in_path("pico2wave"):
|
||||||
Text2Speech.valid_tts['pico2wave'] = False
|
Text2Speech.valid_tts['pico2wave'] = False
|
||||||
print "Error executing pico2wave, voicever won't be generated using it"
|
print "Error executing pico2wave, voicever won't be generated using it."
|
||||||
|
else:
|
||||||
|
voiceoverAvailable = True
|
||||||
|
|
||||||
|
# Check for Russian RHVoice voiceover
|
||||||
if not exec_exists_in_path("RHVoice"):
|
if not exec_exists_in_path("RHVoice"):
|
||||||
Text2Speech.valid_tts['RHVoice'] = False
|
Text2Speech.valid_tts['RHVoice'] = False
|
||||||
print "Error executing RHVoice, voicever won't be generated using it"
|
print "Warning: Error executing RHVoice, Russian voicever won't be generated."
|
||||||
|
else:
|
||||||
|
voiceoverAvailable = True
|
||||||
|
|
||||||
|
# Return if we at least found one voiceover program.
|
||||||
|
# Otherwise this will result in silent voiceover for tracks and "Playlist N" for playlists.
|
||||||
|
return voiceoverAvailable
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def text2speech(out_wav_path, text):
|
def text2speech(out_wav_path, text):
|
||||||
|
|
@ -382,7 +395,7 @@ class Playlist(Record):
|
||||||
def set_master(self, tracks):
|
def set_master(self, tracks):
|
||||||
# By default use "All Songs" builtin voiceover (dbid all zero)
|
# By default use "All Songs" builtin voiceover (dbid all zero)
|
||||||
# Else generate alternative "All Songs" to fit the speaker voice of other playlists
|
# Else generate alternative "All Songs" to fit the speaker voice of other playlists
|
||||||
if self.voiceover:
|
if self.voiceover and Text2Speech.valid_tts['pico2wave']:
|
||||||
self["dbid"] = hashlib.md5("masterlist").digest()[:8] #pylint: disable-msg=E1101
|
self["dbid"] = hashlib.md5("masterlist").digest()[:8] #pylint: disable-msg=E1101
|
||||||
self.text_to_speech("All songs", self["dbid"], True)
|
self.text_to_speech("All songs", self["dbid"], True)
|
||||||
self["listtype"] = 1
|
self["listtype"] = 1
|
||||||
|
|
@ -567,8 +580,9 @@ if __name__ == '__main__':
|
||||||
if result.rename_unicode:
|
if result.rename_unicode:
|
||||||
check_unicode(result.path)
|
check_unicode(result.path)
|
||||||
|
|
||||||
if not result.disable_voiceover:
|
if not result.disable_voiceover and not Text2Speech.check_support():
|
||||||
Text2Speech.check_support()
|
print "Error: Did not find any voiceover program. Voiceover disabled."
|
||||||
|
result.disable_voiceover = True
|
||||||
|
|
||||||
shuffle = Shuffler(result.path, voiceover=not result.disable_voiceover, rename=result.rename_unicode, trackgain=result.track_gain)
|
shuffle = Shuffler(result.path, voiceover=not result.disable_voiceover, rename=result.rename_unicode, trackgain=result.track_gain)
|
||||||
shuffle.initialize()
|
shuffle.initialize()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue