Es ist möglich, Text als Audiodatei zu speichern, wie im Screenshot gezeigt. Jetzt ist meine Frage, wie man das gleiche programmatisch macht. Text programmgesteuert in Audiodatei speichern
Jede Hilfe sehr geschätzt.
Es ist möglich, Text als Audiodatei zu speichern, wie im Screenshot gezeigt. Jetzt ist meine Frage, wie man das gleiche programmatisch macht. Text programmgesteuert in Audiodatei speichern
Jede Hilfe sehr geschätzt.
NSSpeechSynthesizer
macht diesen Job.
Sagen wir die Eigenschaft haben:
@property NSSpeechSynthesizer *synth;
, die wir wie folgt initialisieren:
synth = [[NSSpeechSynthesizer alloc] initWithVoice:nil];
wir tun können:
NSURL *saveURL = [NSURL fileURLWithPath:[@"~/Desktop/SpokenText.aiff" stringByExpandingTildeInPath]];
[synth startSpeakingString:@"A spoken short text" toURL:saveURL];
Vor dem Speichern wir wahrscheinlich das ändern wollen Stimme oder das Volumen:
[synth setVolume:0.5f];
[synth setVoice:voiceID];
wobei der value for volume
in Fließkomma-Einheiten von 0.0 bis 1.0 und voiceID
ist ein voice identifier
ausgedrückt wird.
Um alle verfügbaren Sprachkennungen finden Sie unter:
NSArray *voiceIdentifiers = [NSSpeechSynthesizer availableVoices];
NSLog(@"%li %@",voiceIdentifiers.count,voiceIdentifiers);
Ausgabe auf OS X 10.10.3
mit allen installierten Stimmen:
101 (
"com.apple.speech.synthesis.voice.Agnes",
"com.apple.speech.synthesis.voice.Albert",
"com.apple.speech.synthesis.voice.Alex",
"com.apple.speech.synthesis.voice.alice.premium",
"com.apple.speech.synthesis.voice.allison.premium",
"com.apple.speech.synthesis.voice.alva.premium",
"com.apple.speech.synthesis.voice.amelie.premium",
"com.apple.speech.synthesis.voice.angelica.premium",
"com.apple.speech.synthesis.voice.anna.premium",
"com.apple.speech.synthesis.voice.audrey.premium",
"com.apple.speech.synthesis.voice.aurelie.premium",
"com.apple.speech.synthesis.voice.ava.premium",
"com.apple.speech.synthesis.voice.BadNews",
"com.apple.speech.synthesis.voice.Bahh",
"com.apple.speech.synthesis.voice.Bells",
"com.apple.speech.synthesis.voice.Boing",
"com.apple.speech.synthesis.voice.Bruce",
"com.apple.speech.synthesis.voice.Bubbles",
"com.apple.speech.synthesis.voice.carlos.premium",
"com.apple.speech.synthesis.voice.carmit.premium",
"com.apple.speech.synthesis.voice.catarina.premium",
"com.apple.speech.synthesis.voice.Cellos",
"com.apple.speech.synthesis.voice.cem.premium",
"com.apple.speech.synthesis.voice.chantal.premium",
"com.apple.speech.synthesis.voice.claire.premium",
"com.apple.speech.synthesis.voice.damayanti.premium",
"com.apple.speech.synthesis.voice.daniel.premium",
"com.apple.speech.synthesis.voice.Deranged",
"com.apple.speech.synthesis.voice.diego.premium",
"com.apple.speech.synthesis.voice.ellen.premium",
"com.apple.speech.synthesis.voice.ewa.premium",
"com.apple.speech.synthesis.voice.federica.premium",
"com.apple.speech.synthesis.voice.felipe.premium",
"com.apple.speech.synthesis.voice.fiona.premium",
"com.apple.speech.synthesis.voice.Fred",
"com.apple.speech.synthesis.voice.GoodNews",
"com.apple.speech.synthesis.voice.henrik.premium",
"com.apple.speech.synthesis.voice.Hysterical",
"com.apple.speech.synthesis.voice.ioana.premium",
"com.apple.speech.synthesis.voice.iveta.premium",
"com.apple.speech.synthesis.voice.joana.premium",
"com.apple.speech.synthesis.voice.jorge.premium",
"com.apple.speech.synthesis.voice.juan.premium",
"com.apple.speech.synthesis.voice.Junior",
"com.apple.speech.synthesis.voice.kanya.premium",
"com.apple.speech.synthesis.voice.karen.premium",
"com.apple.speech.synthesis.voice.kate.premium",
"com.apple.speech.synthesis.voice.Kathy",
"com.apple.speech.synthesis.voice.katya.premium",
"com.apple.speech.synthesis.voice.klara.premium",
"com.apple.speech.synthesis.voice.kyoko.premium",
"com.apple.speech.synthesis.voice.laura.premium",
"com.apple.speech.synthesis.voice.lee.premium",
"com.apple.speech.synthesis.voice.lekha.premium",
"com.apple.speech.synthesis.voice.luca.premium",
"com.apple.speech.synthesis.voice.luciana.premium",
"com.apple.speech.synthesis.voice.magnus.premium",
"com.apple.speech.synthesis.voice.mariska.premium",
"com.apple.speech.synthesis.voice.markus.premium",
"com.apple.speech.synthesis.voice.mei-jia.premium",
"com.apple.speech.synthesis.voice.melina.premium",
"com.apple.speech.synthesis.voice.milena.premium",
"com.apple.speech.synthesis.voice.moira.premium",
"com.apple.speech.synthesis.voice.monica.premium",
"com.apple.speech.synthesis.voice.nicolas.premium",
"com.apple.speech.synthesis.voice.nikos.premium",
"com.apple.speech.synthesis.voice.nora.premium",
"com.apple.speech.synthesis.voice.oliver.premium",
"com.apple.speech.synthesis.voice.oskar.premium",
"com.apple.speech.synthesis.voice.otoya.premium",
"com.apple.speech.synthesis.voice.paola.premium",
"com.apple.speech.synthesis.voice.paulina.premium",
"com.apple.speech.synthesis.voice.petra.premium",
"com.apple.speech.synthesis.voice.Organ",
"com.apple.speech.synthesis.voice.Princess",
"com.apple.speech.synthesis.voice.Ralph",
"com.apple.speech.synthesis.voice.samantha.premium",
"com.apple.speech.synthesis.voice.sara.premium",
"com.apple.speech.synthesis.voice.satu.premium",
"com.apple.speech.synthesis.voice.serena.premium",
"com.apple.speech.synthesis.voice.sin-ji.premium",
"com.apple.speech.synthesis.voice.soledad.premium",
"com.apple.speech.synthesis.voice.susan.premium",
"com.apple.speech.synthesis.voice.tarik.premium",
"com.apple.speech.synthesis.voice.tessa.premium",
"com.apple.speech.synthesis.voice.thomas.premium",
"com.apple.speech.synthesis.voice.ting-ting.premium",
"com.apple.speech.synthesis.voice.tom.premium",
"com.apple.speech.synthesis.voice.Trinoids",
"com.apple.speech.synthesis.voice.veena.premium",
"com.apple.speech.synthesis.voice.Vicki",
"com.apple.speech.synthesis.voice.Victoria",
"com.apple.speech.synthesis.voice.Whisper",
"com.apple.speech.synthesis.voice.xander.premium",
"com.apple.speech.synthesis.voice.yannick.premium",
"com.apple.speech.synthesis.voice.yelda.premium",
"com.apple.speech.synthesis.voice.yuna.premium",
"com.apple.speech.synthesis.voice.yuri.premium",
"com.apple.speech.synthesis.voice.Zarvox",
"com.apple.speech.synthesis.voice.zosia.premium",
"com.apple.speech.synthesis.voice.zuzana.premium"
)
von iOS Ab 7 Apple die folgenden API bietet ...
Sehen Sie diese Antwort https://stackoverflow.com/a/17465494/215748
#import <AVFoundation/AVFoundation.h>
…
AVSpeechUtterance *utterance = [AVSpeechUtterance
speechUtteranceWithString:@"Hello world"];
AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];
[synth speakUtterance:utterance];
Habe es versucht bool b = [synthesizer startSpeakingString: @ "Ich habe angefangen zu sprechen" toURL: [NSURL URLWithString: @ "/ Desktop"]]; gibt true zurück, kann aber die Datei – Rajesh
mit initFileURLWithPath nicht finden :) Tnx @Zero – Rajesh
Cool, danke. Ich habe die URL-Erstellung auch dem Code hinzugefügt, so dass die Antwort klarer ist. –