Well, that's not fun. It's been a while since I tried it out, though. Well, write up some bugs, and if you have a sample app showing what you need, it'll at least get addressed. Speech is a priority although the forms of that priority might be different than we expect. And, if you are one of us going to WWDC in a couple of weeks, be ready to talk with whatever group you'll need to; that's how I found out the cause of the memory leak bug by one of the team members bringing up the source code right there. -- Gary L. Wade (Sent from my iPhone) http://www.garywade.com/
> On May 15, 2014, at 8:38 AM, "Gerriet M. Denkmann" <gerr...@mdenkmann.de> > wrote: > > >> On 15 May 2014, at 22:12, Gary L. Wade <garyw...@desisoftsystems.com> wrote: >> >> If you need the phonemes, look at the willSpeakPhoneme delegate method. You >> can use it in conjunction with the other delegates in a manner like NSString >> enumerates sentences and words―not a perfect comparison, but it should help >> you conceptually. > > Unfortunately the documentation says about > speechSynthesizer:willSpeakPhoneme: > "This method is not sent for modern voices." And this seems indeed to be the > case. > > Another problem with: speechSynthesizer:willSpeakWord:ofString: - while it > works fine for German or Chinese, it gives complete garbage for Thai. > >> >> If I recall, the feedback window solves a very narrow need, one that didn't >> help me much, so I didn't explore it, especially since the delegate methods >> gave me what I needed. >> >> I wouldn't doubt that NSSpeechSynthesizer gets deprecated in favor of the AV >> variety based on the way Apple has historically ported underlying >> technologies between platforms, but if not or you need to support older >> OSes, be careful about some of its property retrieval methods, especially >> the phoneme dictionary per voice, since in at least one OS and earlier it >> returned a retained object vs an autoreleased object against the Objective-C >> memory naming contract. >> -- >> Gary L. Wade (Sent from my iPhone) >> http://www.garywade.com/ >> >>> On May 15, 2014, at 5:53 AM, "Gerriet M. Denkmann" <gerr...@mdenkmann.de> >>> wrote: >>> >>> >>>> On 15 May 2014, at 15:53, Gary L. Wade <garyw...@desisoftsystems.com> >>>> wrote: >>>> >>>> Also, I haven’t tried this sequence myself, but I noticed in your sample >>>> code you’re >>>> calling phonemesFromText: right after startSpeakingString:. Maybe >>>> phonemesFromText: is short-circuiting the speaking? >>> >>> Right on! >>> Putting phonemesFromText: BEFORE startSpeakingString: finally gets me to >>> hear all my new voices. >>> >>> But: phonemesFromText: still returns an empty string. >>> This is a pity, because getting the phonemes is the goal of the whole >>> exercise. >>> >>> With or without delegate. >>> >>> Another thing: setUsesFeedbackWindow: YES has no visible effect whatsoever >>> with any voice. >>> >>> >>>> It’s been a while >>>> since I’ve worked on my app, but I remember some calls will stop any >>>> current speaking. >>>> -- >>>> Gary L. Wade >>>> http://www.garywade.com/ >>>> >>>> On 5/14/2014, 11:15 PM, "Gerriet M. Denkmann" <gerr...@mdenkmann.de> wrote: >>>> >>>> >>>>> >>>>>> On 15 May 2014, at 08:41, Jens Alfke <j...@mooseyard.com> wrote: >>>>>> >>>>>> On May 14, 2014, at 6:24 PM, Gerriet M. Denkmann <gerr...@mdenkmann.de> >>>>>> wrote: >>>>>> >>>>>>> But the only thing in 10.9.2 I found was NSSpeechSynthesizer, which >>>>>>> has 24 voices (which is nice) but all 24 have VoiceLanguage = >>>>>>> VoiceLocaleIdentifier = en_US (which seems rather odd). >>>>>> >>>>>> The non-English voices are optional downloads ― you can get them via >>>>>> the Dictation/Speech system pref pane. Pull down the System Voice pop-up >>>>>> and choose Customize… >>>>> >>>>> Thanks. Just did that. >>>>> >>>>> Did set System Voice to "Anna" (a German voice). >>>>> Now, when I select some (German) text and do Control-Click → Speech → >>>>> Start Speaking it just works. Very good. >>>>> >>>>> But this: >>>>> >>>>> NSString *voiceIdentifier = >>>>> @"com.apple.speech.synthesis.voice.anna.premium"; >>>>> NSString *text = @"Der Osten ist rot."; >>>>> NSSpeechSynthesizer *syn = [ [ NSSpeechSynthesizer alloc ] >>>>> initWithVoice: voiceIdentifier ]; // non-nil >>>>> BOOL ok = [ syn startSpeakingString: text ]; // returns YES, but >>>>> does >>>>> NOT speak >>>>> NSString *pp = [ syn phonemesFromText: text ]; // returns empty >>>>> string >>>>> >>>>> does not work as expected. >>>>> Same problem with all other voices I just downloaded. Only the default >>>>> (en-US) voices work as they should. >>>>> >>>>> What am I missing? >>>>> >>>>> Gerriet. > _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com