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

Reply via email to