这里介绍的是iOS API关于语音合成(Synthesizer)的相关说明,点击右侧目录可快速找到相应文件。
IFlySpeechSynthesizer Class Reference
Inherits from: NSObject
Declared in: IFlySpeechSynthesizer.h
语音合成
设置识别的委托对象
@property (nonatomic, assign) id<IFlySpeechSynthesizerDelegate> delegate
Declared In
IFlySpeechSynthesizer.h
返回合成对象的单例
+ (instancetype)sharedInstance
Return Value
合成对象
Declared In
IFlySpeechSynthesizer.h
销毁合成对象。
+ (BOOL)destroy
Return Value
成功返回YES,失败返回NO.
Declared In
IFlySpeechSynthesizer.h
设置合成参数
- (BOOL)setParameter:(NSString *)value forKey:(NSString *)key
Parameters
value | 参数取值 |
---|---|
key | 合成参数 |
Return Value
设置成功返回YES,失败返回NO
Discussion
参数 | 描述 |
---|---|
speed | 合成语速,取值范围 0~100 |
volume | 合成的音量,取值范围 0~100 |
voice_name | 默认为”xiaoyan”;可以设置的参数列表可参考个性化发音人列表 |
sample_rate | 采样率:目前支持的采样率设置有 16000 和 8000(高品质离线合成暂不支持)。 |
tts_audio_path | 音频文件名 设置此参数后,将会自动保存合成的音频文件。 路径为Documents/(指定值)。不设置或者设置为nil,则不保存音频。 |
params | 扩展参数: 对于一些特殊的参数可在此设置。 |
Declared In
IFlySpeechSynthesizer.h
获取合成参数
- (NSString *)parameterForKey:(NSString *)key
Parameters:
key | 参数key |
---|
Return Value
参数值
Declared In
IFlySpeechSynthesizer.h
开始合成(播放) 调用此函数进行合成,如果发生错误会回调错误onCompleted
- (void)startSpeaking:(NSString *)text
Parameters
text | 合成的文本,最大的字节数为1k |
---|
Declared In
IFlySpeechSynthesizer.h
开始合成(不播放)
调用此函数进行合成,如果发生错误会回调错误onCompleted
- (void)synthesize:(NSString *)text toUri:(NSString *)uri
Parameters
text | 合成的文本,最大的字节数为1k |
---|---|
uri | 合成后,保存再本地的音频路径 |
Declared In
IFlySpeechSynthesizer.h
暂停播放
暂停播放之后,合成不会暂停,仍会继续,如果发生错误则会回调错误onCompleted
- (void)pauseSpeaking
Declared In
IFlySpeechSynthesizer.h
恢复播放
- (void)resumeSpeaking
Declared In
IFlySpeechSynthesizer.h
停止播放并停止合成
- (void)stopSpeaking
Declared In
IFlySpeechSynthesizer.h
是否正在播放
@property (nonatomic, readonly) BOOL isSpeaking
Declared In IFlySpeechSynthesizer.h
Conforms to | NSObject |
---|---|
Declared in | IFlySpeechSynthesizerDelegate.h |
语音合成回调
– onCompleted: required method 结束回调 当整个合成结束之后会回调此函数
- (void)onCompleted:(IFlySpeechError *)error
Parameters
error | 错误码 |
---|
Declared In
IFlySpeechSynthesizerDelegate.h
开始合成回调
- (void)onSpeakBegin
Declared In
IFlySpeechSynthesizerDelegate.h
缓冲进度回调
- (void)onBufferProgress:(int)progress message:(NSString *)msg
Parameters
progress | 缓冲进度,0-100 |
---|---|
msg | 附件信息,此版本为nil |
Declared In
IFlySpeechSynthesizerDelegate.h
播放进度回调
- (void)onSpeakProgress:(int)progress beginPos:(int)beginPos endPos:(int)endPos
Parameters
progress | 当前播放进度,0-100 |
---|---|
beginPos | 当前播放文本的起始位置(按照字节计算),对于汉字(2字节)需/2处理 |
endPos | 当前播放文本的结束位置(按照字节计算),对于汉字(2字节)需/2处理 |
Declared In
IFlySpeechSynthesizerDelegate.h
暂停播放回调
- (void)onSpeakPaused
Declared In
IFlySpeechSynthesizerDelegate.h
恢复播放回调
注意:此回调方法SDK内部不执行,播放恢复全部在onSpeakBegin中执行
- (void)onSpeakResumed
Declared In
IFlySpeechSynthesizerDelegate.h
正在取消回调
注意:此回调方法SDK内部不执行
- (void)onSpeakCancel
Declared In
IFlySpeechSynthesizerDelegate.h
扩展事件回调
根据事件类型返回额外的数据
- (void)onEvent:(int)eventType arg0:(int)arg0 arg1:(int)arg1 data:(NSData *)eventData
Parameters
eventType | 事件类型,具体参见IFlySpeechEventType枚举。目前只支持EVENT_TTS_BUFFER也就是实时返回合成音频。 |
---|---|
arg0 | arg0 |
arg1 | arg1 |
eventData | 事件数据 |
Declared In
IFlySpeechSynthesizerDelegate.h