TXBeautyManager.h 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. //
  2. // TXBeautyManager.h
  3. // TXLiteAVSDK
  4. //
  5. // Created by cui on 2019/10/24.
  6. // Copyright © 2019 Tencent. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. NS_ASSUME_NONNULL_BEGIN
  10. /// @defgroup TXBeautyManager_ios TXBeautyManager
  11. /// 美颜及动效参数管理
  12. /// @{
  13. /**
  14. * 美颜(磨皮)算法
  15. * SDK 内置了多种不同的磨皮算法,您可以选择最适合您产品定位的方案。
  16. */
  17. typedef NS_ENUM(NSInteger, TXBeautyStyle) {
  18. TXBeautyStyleSmooth = 0, ///< 光滑,适用于美女秀场,效果比较明显。
  19. TXBeautyStyleNature = 1, ///< 自然,磨皮算法更多地保留了面部细节,主观感受上会更加自然。
  20. TXBeautyStylePitu = 2 ///< 企业版美颜算法(企业版有效,其它版本设置此参数无效)
  21. };
  22. /// 美颜及动效参数管理
  23. @interface TXBeautyManager : NSObject
  24. /**
  25. * 设置美颜(磨皮)算法
  26. *
  27. * SDK 内部集成了两套风格不同的磨皮算法,一套我们取名叫“光滑”,适用于美女秀场,效果比较明显。
  28. * 另一套我们取名“自然”,磨皮算法更多地保留了面部细节,主观感受上会更加自然。
  29. *
  30. * @param beautyStyle 美颜风格,光滑或者自然,光滑风格磨皮更加明显,适合娱乐场景。
  31. */
  32. - (void)setBeautyStyle:(TXBeautyStyle)beautyStyle;
  33. /**
  34. * 设置美颜级别
  35. * @param level 美颜级别,取值范围0 - 9; 0表示关闭,1 - 9值越大,效果越明显。
  36. */
  37. - (void)setBeautyLevel:(float)level;
  38. /**
  39. * 设置美白级别
  40. *
  41. * @param level 美白级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  42. */
  43. - (void)setWhitenessLevel:(float)level;
  44. /**
  45. * 设置红润级别
  46. *
  47. * @param level 红润级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  48. */
  49. - (void)setRuddyLevel:(float)level;
  50. #if TARGET_OS_IPHONE
  51. /**
  52. * 设置大眼级别(企业版有效,其它版本设置此参数无效)
  53. *
  54. * @param level 大眼级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  55. */
  56. - (void)setEyeScaleLevel:(float)level;
  57. /**
  58. * 设置瘦脸级别(企业版有效,其它版本设置此参数无效)
  59. *
  60. * @param level 瘦脸级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  61. */
  62. - (void)setFaceSlimLevel:(float)level;
  63. /**
  64. * 设置V脸级别(企业版有效,其它版本设置此参数无效)
  65. *
  66. * @param level V脸级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  67. */
  68. - (void)setFaceVLevel:(float)level;
  69. /**
  70. * 设置下巴拉伸或收缩(企业版有效,其它版本设置此参数无效)
  71. *
  72. * @param level 下巴拉伸或收缩级别,取值范围-9 - 9;0 表示关闭,小于0表示收缩,大于0表示拉伸。
  73. */
  74. - (void)setChinLevel:(float)level;
  75. /**
  76. * 设置短脸级别(企业版有效,其它版本设置此参数无效)
  77. *
  78. * @param level 短脸级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  79. */
  80. - (void)setFaceShortLevel:(float)level;
  81. /**
  82. * 设置瘦鼻级别(企业版有效,其它版本设置此参数无效)
  83. *
  84. * @param level 瘦鼻级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  85. */
  86. - (void)setNoseSlimLevel:(float)level;
  87. /**
  88. * 设置亮眼 (企业版有效,其它版本设置此参数无效)
  89. *
  90. * @param level 亮眼级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  91. */
  92. - (void)setEyeLightenLevel:(float)level;
  93. /**
  94. * 设置白牙 (企业版有效,其它版本设置此参数无效)
  95. *
  96. * @param level 白牙级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  97. */
  98. - (void)setToothWhitenLevel:(float)level;
  99. /**
  100. * 设置祛皱 (企业版有效,其它版本设置此参数无效)
  101. *
  102. * @param level 祛皱级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  103. */
  104. - (void)setWrinkleRemoveLevel:(float)level;
  105. /**
  106. * 设置祛眼袋 (企业版有效,其它版本设置此参数无效)
  107. *
  108. * @param level 祛眼袋级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  109. */
  110. - (void)setPounchRemoveLevel:(float)level;
  111. /**
  112. * 设置法令纹 (企业版有效,其它版本设置此参数无效)
  113. *
  114. * @param level 法令纹级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  115. */
  116. - (void)setSmileLinesRemoveLevel:(float)level;
  117. /**
  118. * 设置发际线 (企业版有效,其它版本设置此参数无效)
  119. *
  120. * @param level 发际线级别,取值范围-9 - 9;0表示关闭,小于0表示抬高,大于0表示降低。
  121. */
  122. - (void)setForeheadLevel:(float)level;
  123. /**
  124. * 设置眼距 (企业版有效,其它版本设置此参数无效)
  125. *
  126. * @param level 眼距级别,取值范围-9 - 9;0表示关闭,小于0表示拉伸,大于0表示收缩。
  127. */
  128. - (void)setEyeDistanceLevel:(float)level;
  129. /**
  130. * 设置眼角 (企业版有效,其它版本设置此参数无效)
  131. *
  132. * @param level 眼角级别,取值范围-9 - 9;0表示关闭,小于0表示降低,大于0表示抬高。
  133. */
  134. - (void)setEyeAngleLevel:(float)level;
  135. /**
  136. * 设置嘴型 (企业版有效,其它版本设置此参数无效)
  137. *
  138. * @param level 嘴型级别,取值范围-9 - 9;0表示关闭,小于0表示拉伸,大于0表示收缩。
  139. */
  140. - (void)setMouthShapeLevel:(float)level;
  141. /**
  142. * 设置鼻翼 (企业版有效,其它版本设置此参数无效)
  143. *
  144. * @param level 鼻翼级别,取值范围-9 - 9;0表示关闭,小于0表示拉伸,大于0表示收缩。
  145. */
  146. - (void)setNoseWingLevel:(float)level;
  147. /**
  148. * 设置鼻子位置 (企业版有效,其它版本设置此参数无效)
  149. * @param level 鼻子位置级别,取值范围-9 - 9;0表示关闭,小于0表示抬高,大于0表示降低。
  150. */
  151. - (void)setNosePositionLevel:(float)level;
  152. /**
  153. * 设置嘴唇厚度 (企业版有效,其它版本设置此参数无效)
  154. * @param level 嘴唇厚度级别,取值范围-9 - 9;0表示关闭,小于0表示拉伸,大于0表示收缩。
  155. */
  156. - (void)setLipsThicknessLevel:(float)level;
  157. /**
  158. * 设置脸型(企业版有效,其它版本设置此参数无效)
  159. * @param level 美型级别,取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显。
  160. */
  161. - (void)setFaceBeautyLevel:(float)level;
  162. /**
  163. * 选择 AI 动效挂件(企业版有效,其它版本设置此参数无效)
  164. *
  165. * @param tmplName 动效名称
  166. * @param tmplDir 动效所在目录
  167. */
  168. - (void)setMotionTmpl:(nullable NSString *)tmplName inDir:(nullable NSString *)tmplDir;
  169. /**
  170. * 设置动效静音(企业版有效,其它版本设置此参数无效)
  171. *
  172. * 有些挂件本身会有声音特效,通过此 API 可以关闭这些特效播放时所带的声音效果。
  173. *
  174. * @param motionMute YES:静音;NO:不静音。
  175. */
  176. - (void)setMotionMute:(BOOL)motionMute;
  177. #endif
  178. @end
  179. /// @}
  180. NS_ASSUME_NONNULL_END