IFlySpeechSynthesizer.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. //
  2. // IFlySpeechSynthesizer.h
  3. // MSC
  4. //
  5. // Created by 侯效林 on 16-4-22.
  6. // Copyright (c) 2016年 iflytek. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "IFlySpeechSynthesizerDelegate.h"
  10. /*!
  11. * 语音合成
  12. */
  13. @interface IFlySpeechSynthesizer : NSObject
  14. /*!
  15. * 设置识别的委托对象
  16. */
  17. @property(nonatomic,assign) id<IFlySpeechSynthesizerDelegate> delegate;
  18. /*!
  19. * 返回合成对象的单例
  20. *
  21. * @return 合成对象
  22. */
  23. + (instancetype) sharedInstance;
  24. /*!
  25. * 销毁合成对象。
  26. *
  27. * @return 成功返回YES,失败返回NO.
  28. */
  29. + (BOOL) destroy;
  30. /*
  31. * | ------------- |-----------------------------------------------------------
  32. * | 参数 | 描述
  33. * | ------------- |-----------------------------------------------------------
  34. * | speed |合成语速,取值范围 0~100
  35. * | ------------- |-----------------------------------------------------------
  36. * | volume |合成的音量,取值范围 0~100
  37. * | ------------- |-----------------------------------------------------------
  38. * | voice_name |默认为”xiaoyan”;可以设置的参数列表可参考个性化发音人列表
  39. * | ------------- |-----------------------------------------------------------
  40. * | sample_rate |采样率:目前支持的采样率设置有 16000 和 8000。
  41. * | ------------- |-----------------------------------------------------------
  42. * | tts_audio_path|音频文件名 设置此参数后,将会自动保存合成的音频文件。
  43. * | |路径为Documents/(指定值)。不设置或者设置为nil,则不保存音频。
  44. * | ------------- |-----------------------------------------------------------
  45. * | params |扩展参数: 对于一些特殊的参数可在此设置。
  46. * | ------------- |-----------------------------------------------------------
  47. *
  48. */
  49. /*!
  50. * 设置合成参数
  51. *
  52. * | 参数 | 描述 |
  53. * |-----------------|----------------------------------------------------|
  54. * | speed | 合成语速,取值范围 0~100 |
  55. * | volume | 合成的音量,取值范围 0~100 |
  56. * | voice_name | 默认为”xiaoyan”;可以设置的参数列表可参考个性化发音人列表 |
  57. * | sample_rate | 采样率:目前支持的采样率设置有 16000 和 8000。 |
  58. * | tts_audio_path | 音频文件名 设置此参数后,将会自动保存合成的音频文件。<br>路径为Documents/(指定值)。不设置或者设置为nil,则不保存音频。|
  59. * | params | 扩展参数: 对于一些特殊的参数可在此设置。 |
  60. *
  61. * @param value 参数取值
  62. * @param key 合成参数
  63. *
  64. * @return 设置成功返回YES,失败返回NO
  65. */
  66. -(BOOL) setParameter:(NSString *) value forKey:(NSString*)key;
  67. /*!
  68. * 获取合成参数
  69. *
  70. * @param key 参数key
  71. *
  72. * @return 参数值
  73. */
  74. -(NSString*) parameterForKey:(NSString *)key;
  75. /*!
  76. * 开始合成(播放)<br>
  77. * 调用此函数进行合成,如果发生错误会回调错误`onCompleted`
  78. *
  79. * @param text 合成的文本,最大的字节数为1k
  80. */
  81. - (void) startSpeaking:(NSString *)text;
  82. /*!
  83. * 开始合成(不播放)<br>
  84. * 调用此函数进行合成,如果发生错误会回调错误`onCompleted`
  85. *
  86. * @param text 合成的文本,最大的字节数为1k
  87. * @param uri 合成后,保存再本地的音频路径
  88. */
  89. -(void)synthesize:(NSString *)text toUri:(NSString*)uri;
  90. /*!
  91. * 暂停播放<br>
  92. * 暂停播放之后,合成不会暂停,仍会继续,如果发生错误则会回调错误`onCompleted`
  93. */
  94. - (void) pauseSpeaking;
  95. /*!
  96. * 恢复播放
  97. */
  98. - (void) resumeSpeaking;
  99. /*!
  100. * 停止播放并停止合成
  101. */
  102. - (void) stopSpeaking;
  103. /*!
  104. * 是否正在播放
  105. */
  106. @property (nonatomic, readonly) BOOL isSpeaking;
  107. @end