Ver código fonte

Release AddFaceVideoTemplate DeleteFaceVideoTemplate QueryFaceVideoTemplate MergeVideoModelFace.

sdk-team 5 anos atrás
pai
commit
97286a49ca
45 arquivos alterados com 1178 adições e 24 exclusões
  1. 3 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 0 0
      videoenhan/2020-03-20/AbstractEcommerceVideo.xml
  4. 0 0
      videoenhan/2020-03-20/AbstractFilmVideo.xml
  5. 0 0
      videoenhan/2020-03-20/AddFaceVideoTemplate.xml
  6. 0 0
      videoenhan/2020-03-20/AdjustVideoColor.xml
  7. 0 0
      videoenhan/2020-03-20/ChangeVideoSize.xml
  8. 0 0
      videoenhan/2020-03-20/ConvertHdrVideo.xml
  9. 0 0
      videoenhan/2020-03-20/DeleteFaceVideoTemplate.xml
  10. 0 0
      videoenhan/2020-03-20/EnhanceVideoQuality.xml
  11. 0 0
      videoenhan/2020-03-20/EraseVideoLogo.xml
  12. 0 0
      videoenhan/2020-03-20/EraseVideoSubtitles.xml
  13. 0 0
      videoenhan/2020-03-20/GenerateVideo.xml
  14. 0 0
      videoenhan/2020-03-20/GetAsyncJobResult.xml
  15. 0 0
      videoenhan/2020-03-20/InterpolateVideoFrame.xml
  16. 0 0
      videoenhan/2020-03-20/MergeVideoFace.xml
  17. 0 0
      videoenhan/2020-03-20/MergeVideoModelFace.xml
  18. 0 0
      videoenhan/2020-03-20/QueryFaceVideoTemplate.xml
  19. 0 0
      videoenhan/2020-03-20/SuperResolveVideo.xml
  20. 0 0
      videoenhan/2020-03-20/ToneSdrVideo.xml
  21. 16 0
      videoenhan/CMakeLists.txt
  22. 32 0
      videoenhan/include/alibabacloud/videoenhan/VideoenhanClient.h
  23. 54 0
      videoenhan/include/alibabacloud/videoenhan/model/AddFaceVideoTemplateRequest.h
  24. 59 0
      videoenhan/include/alibabacloud/videoenhan/model/AddFaceVideoTemplateResult.h
  25. 3 3
      videoenhan/include/alibabacloud/videoenhan/model/AdjustVideoColorRequest.h
  26. 51 0
      videoenhan/include/alibabacloud/videoenhan/model/DeleteFaceVideoTemplateRequest.h
  27. 53 0
      videoenhan/include/alibabacloud/videoenhan/model/DeleteFaceVideoTemplateResult.h
  28. 3 3
      videoenhan/include/alibabacloud/videoenhan/model/GetAsyncJobResultRequest.h
  29. 57 0
      videoenhan/include/alibabacloud/videoenhan/model/MergeVideoModelFaceRequest.h
  30. 59 0
      videoenhan/include/alibabacloud/videoenhan/model/MergeVideoModelFaceResult.h
  31. 51 0
      videoenhan/include/alibabacloud/videoenhan/model/QueryFaceVideoTemplateRequest.h
  32. 67 0
      videoenhan/include/alibabacloud/videoenhan/model/QueryFaceVideoTemplateResult.h
  33. 144 0
      videoenhan/src/VideoenhanClient.cc
  34. 62 0
      videoenhan/src/model/AddFaceVideoTemplateRequest.cc
  35. 66 0
      videoenhan/src/model/AddFaceVideoTemplateResult.cc
  36. 3 3
      videoenhan/src/model/AdjustVideoColorRequest.cc
  37. 51 0
      videoenhan/src/model/DeleteFaceVideoTemplateRequest.cc
  38. 58 0
      videoenhan/src/model/DeleteFaceVideoTemplateResult.cc
  39. 10 10
      videoenhan/src/model/GetAsyncJobResultRequest.cc
  40. 4 4
      videoenhan/src/model/GetAsyncJobResultResult.cc
  41. 73 0
      videoenhan/src/model/MergeVideoModelFaceRequest.cc
  42. 66 0
      videoenhan/src/model/MergeVideoModelFaceResult.cc
  43. 51 0
      videoenhan/src/model/QueryFaceVideoTemplateRequest.cc
  44. 80 0
      videoenhan/src/model/QueryFaceVideoTemplateResult.cc
  45. 1 0
      videoenhan/version-2020-03-20.xml

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2021-04-13 Version: 1.36.677
+- Release AddFaceVideoTemplate DeleteFaceVideoTemplate QueryFaceVideoTemplate MergeVideoModelFace.
+
 2021-04-12 Version: 1.36.676
 - Export config api.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.676
+1.36.677

Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/AbstractEcommerceVideo.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/AbstractFilmVideo.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/AddFaceVideoTemplate.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/AdjustVideoColor.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/ChangeVideoSize.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/ConvertHdrVideo.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/DeleteFaceVideoTemplate.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/EnhanceVideoQuality.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/EraseVideoLogo.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/EraseVideoSubtitles.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/GenerateVideo.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/GetAsyncJobResult.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/InterpolateVideoFrame.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/MergeVideoFace.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/MergeVideoModelFace.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/QueryFaceVideoTemplate.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/SuperResolveVideo.xml


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
videoenhan/2020-03-20/ToneSdrVideo.xml


+ 16 - 0
videoenhan/CMakeLists.txt

@@ -25,12 +25,16 @@ set(videoenhan_public_header_model
 	include/alibabacloud/videoenhan/model/AbstractEcommerceVideoResult.h
 	include/alibabacloud/videoenhan/model/AbstractFilmVideoRequest.h
 	include/alibabacloud/videoenhan/model/AbstractFilmVideoResult.h
+	include/alibabacloud/videoenhan/model/AddFaceVideoTemplateRequest.h
+	include/alibabacloud/videoenhan/model/AddFaceVideoTemplateResult.h
 	include/alibabacloud/videoenhan/model/AdjustVideoColorRequest.h
 	include/alibabacloud/videoenhan/model/AdjustVideoColorResult.h
 	include/alibabacloud/videoenhan/model/ChangeVideoSizeRequest.h
 	include/alibabacloud/videoenhan/model/ChangeVideoSizeResult.h
 	include/alibabacloud/videoenhan/model/ConvertHdrVideoRequest.h
 	include/alibabacloud/videoenhan/model/ConvertHdrVideoResult.h
+	include/alibabacloud/videoenhan/model/DeleteFaceVideoTemplateRequest.h
+	include/alibabacloud/videoenhan/model/DeleteFaceVideoTemplateResult.h
 	include/alibabacloud/videoenhan/model/EnhanceVideoQualityRequest.h
 	include/alibabacloud/videoenhan/model/EnhanceVideoQualityResult.h
 	include/alibabacloud/videoenhan/model/EraseVideoLogoRequest.h
@@ -45,6 +49,10 @@ set(videoenhan_public_header_model
 	include/alibabacloud/videoenhan/model/InterpolateVideoFrameResult.h
 	include/alibabacloud/videoenhan/model/MergeVideoFaceRequest.h
 	include/alibabacloud/videoenhan/model/MergeVideoFaceResult.h
+	include/alibabacloud/videoenhan/model/MergeVideoModelFaceRequest.h
+	include/alibabacloud/videoenhan/model/MergeVideoModelFaceResult.h
+	include/alibabacloud/videoenhan/model/QueryFaceVideoTemplateRequest.h
+	include/alibabacloud/videoenhan/model/QueryFaceVideoTemplateResult.h
 	include/alibabacloud/videoenhan/model/SuperResolveVideoRequest.h
 	include/alibabacloud/videoenhan/model/SuperResolveVideoResult.h
 	include/alibabacloud/videoenhan/model/ToneSdrVideoRequest.h
@@ -56,12 +64,16 @@ set(videoenhan_src
 	src/model/AbstractEcommerceVideoResult.cc
 	src/model/AbstractFilmVideoRequest.cc
 	src/model/AbstractFilmVideoResult.cc
+	src/model/AddFaceVideoTemplateRequest.cc
+	src/model/AddFaceVideoTemplateResult.cc
 	src/model/AdjustVideoColorRequest.cc
 	src/model/AdjustVideoColorResult.cc
 	src/model/ChangeVideoSizeRequest.cc
 	src/model/ChangeVideoSizeResult.cc
 	src/model/ConvertHdrVideoRequest.cc
 	src/model/ConvertHdrVideoResult.cc
+	src/model/DeleteFaceVideoTemplateRequest.cc
+	src/model/DeleteFaceVideoTemplateResult.cc
 	src/model/EnhanceVideoQualityRequest.cc
 	src/model/EnhanceVideoQualityResult.cc
 	src/model/EraseVideoLogoRequest.cc
@@ -76,6 +88,10 @@ set(videoenhan_src
 	src/model/InterpolateVideoFrameResult.cc
 	src/model/MergeVideoFaceRequest.cc
 	src/model/MergeVideoFaceResult.cc
+	src/model/MergeVideoModelFaceRequest.cc
+	src/model/MergeVideoModelFaceResult.cc
+	src/model/QueryFaceVideoTemplateRequest.cc
+	src/model/QueryFaceVideoTemplateResult.cc
 	src/model/SuperResolveVideoRequest.cc
 	src/model/SuperResolveVideoResult.cc
 	src/model/ToneSdrVideoRequest.cc

+ 32 - 0
videoenhan/include/alibabacloud/videoenhan/VideoenhanClient.h

@@ -26,12 +26,16 @@
 #include "model/AbstractEcommerceVideoResult.h"
 #include "model/AbstractFilmVideoRequest.h"
 #include "model/AbstractFilmVideoResult.h"
+#include "model/AddFaceVideoTemplateRequest.h"
+#include "model/AddFaceVideoTemplateResult.h"
 #include "model/AdjustVideoColorRequest.h"
 #include "model/AdjustVideoColorResult.h"
 #include "model/ChangeVideoSizeRequest.h"
 #include "model/ChangeVideoSizeResult.h"
 #include "model/ConvertHdrVideoRequest.h"
 #include "model/ConvertHdrVideoResult.h"
+#include "model/DeleteFaceVideoTemplateRequest.h"
+#include "model/DeleteFaceVideoTemplateResult.h"
 #include "model/EnhanceVideoQualityRequest.h"
 #include "model/EnhanceVideoQualityResult.h"
 #include "model/EraseVideoLogoRequest.h"
@@ -46,6 +50,10 @@
 #include "model/InterpolateVideoFrameResult.h"
 #include "model/MergeVideoFaceRequest.h"
 #include "model/MergeVideoFaceResult.h"
+#include "model/MergeVideoModelFaceRequest.h"
+#include "model/MergeVideoModelFaceResult.h"
+#include "model/QueryFaceVideoTemplateRequest.h"
+#include "model/QueryFaceVideoTemplateResult.h"
 #include "model/SuperResolveVideoRequest.h"
 #include "model/SuperResolveVideoResult.h"
 #include "model/ToneSdrVideoRequest.h"
@@ -65,6 +73,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::AbstractFilmVideoResult> AbstractFilmVideoOutcome;
 			typedef std::future<AbstractFilmVideoOutcome> AbstractFilmVideoOutcomeCallable;
 			typedef std::function<void(const VideoenhanClient*, const Model::AbstractFilmVideoRequest&, const AbstractFilmVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AbstractFilmVideoAsyncHandler;
+			typedef Outcome<Error, Model::AddFaceVideoTemplateResult> AddFaceVideoTemplateOutcome;
+			typedef std::future<AddFaceVideoTemplateOutcome> AddFaceVideoTemplateOutcomeCallable;
+			typedef std::function<void(const VideoenhanClient*, const Model::AddFaceVideoTemplateRequest&, const AddFaceVideoTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddFaceVideoTemplateAsyncHandler;
 			typedef Outcome<Error, Model::AdjustVideoColorResult> AdjustVideoColorOutcome;
 			typedef std::future<AdjustVideoColorOutcome> AdjustVideoColorOutcomeCallable;
 			typedef std::function<void(const VideoenhanClient*, const Model::AdjustVideoColorRequest&, const AdjustVideoColorOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AdjustVideoColorAsyncHandler;
@@ -74,6 +85,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ConvertHdrVideoResult> ConvertHdrVideoOutcome;
 			typedef std::future<ConvertHdrVideoOutcome> ConvertHdrVideoOutcomeCallable;
 			typedef std::function<void(const VideoenhanClient*, const Model::ConvertHdrVideoRequest&, const ConvertHdrVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ConvertHdrVideoAsyncHandler;
+			typedef Outcome<Error, Model::DeleteFaceVideoTemplateResult> DeleteFaceVideoTemplateOutcome;
+			typedef std::future<DeleteFaceVideoTemplateOutcome> DeleteFaceVideoTemplateOutcomeCallable;
+			typedef std::function<void(const VideoenhanClient*, const Model::DeleteFaceVideoTemplateRequest&, const DeleteFaceVideoTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteFaceVideoTemplateAsyncHandler;
 			typedef Outcome<Error, Model::EnhanceVideoQualityResult> EnhanceVideoQualityOutcome;
 			typedef std::future<EnhanceVideoQualityOutcome> EnhanceVideoQualityOutcomeCallable;
 			typedef std::function<void(const VideoenhanClient*, const Model::EnhanceVideoQualityRequest&, const EnhanceVideoQualityOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> EnhanceVideoQualityAsyncHandler;
@@ -95,6 +109,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::MergeVideoFaceResult> MergeVideoFaceOutcome;
 			typedef std::future<MergeVideoFaceOutcome> MergeVideoFaceOutcomeCallable;
 			typedef std::function<void(const VideoenhanClient*, const Model::MergeVideoFaceRequest&, const MergeVideoFaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MergeVideoFaceAsyncHandler;
+			typedef Outcome<Error, Model::MergeVideoModelFaceResult> MergeVideoModelFaceOutcome;
+			typedef std::future<MergeVideoModelFaceOutcome> MergeVideoModelFaceOutcomeCallable;
+			typedef std::function<void(const VideoenhanClient*, const Model::MergeVideoModelFaceRequest&, const MergeVideoModelFaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MergeVideoModelFaceAsyncHandler;
+			typedef Outcome<Error, Model::QueryFaceVideoTemplateResult> QueryFaceVideoTemplateOutcome;
+			typedef std::future<QueryFaceVideoTemplateOutcome> QueryFaceVideoTemplateOutcomeCallable;
+			typedef std::function<void(const VideoenhanClient*, const Model::QueryFaceVideoTemplateRequest&, const QueryFaceVideoTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryFaceVideoTemplateAsyncHandler;
 			typedef Outcome<Error, Model::SuperResolveVideoResult> SuperResolveVideoOutcome;
 			typedef std::future<SuperResolveVideoOutcome> SuperResolveVideoOutcomeCallable;
 			typedef std::function<void(const VideoenhanClient*, const Model::SuperResolveVideoRequest&, const SuperResolveVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SuperResolveVideoAsyncHandler;
@@ -112,6 +132,9 @@ namespace AlibabaCloud
 			AbstractFilmVideoOutcome abstractFilmVideo(const Model::AbstractFilmVideoRequest &request)const;
 			void abstractFilmVideoAsync(const Model::AbstractFilmVideoRequest& request, const AbstractFilmVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AbstractFilmVideoOutcomeCallable abstractFilmVideoCallable(const Model::AbstractFilmVideoRequest& request) const;
+			AddFaceVideoTemplateOutcome addFaceVideoTemplate(const Model::AddFaceVideoTemplateRequest &request)const;
+			void addFaceVideoTemplateAsync(const Model::AddFaceVideoTemplateRequest& request, const AddFaceVideoTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AddFaceVideoTemplateOutcomeCallable addFaceVideoTemplateCallable(const Model::AddFaceVideoTemplateRequest& request) const;
 			AdjustVideoColorOutcome adjustVideoColor(const Model::AdjustVideoColorRequest &request)const;
 			void adjustVideoColorAsync(const Model::AdjustVideoColorRequest& request, const AdjustVideoColorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AdjustVideoColorOutcomeCallable adjustVideoColorCallable(const Model::AdjustVideoColorRequest& request) const;
@@ -121,6 +144,9 @@ namespace AlibabaCloud
 			ConvertHdrVideoOutcome convertHdrVideo(const Model::ConvertHdrVideoRequest &request)const;
 			void convertHdrVideoAsync(const Model::ConvertHdrVideoRequest& request, const ConvertHdrVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ConvertHdrVideoOutcomeCallable convertHdrVideoCallable(const Model::ConvertHdrVideoRequest& request) const;
+			DeleteFaceVideoTemplateOutcome deleteFaceVideoTemplate(const Model::DeleteFaceVideoTemplateRequest &request)const;
+			void deleteFaceVideoTemplateAsync(const Model::DeleteFaceVideoTemplateRequest& request, const DeleteFaceVideoTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteFaceVideoTemplateOutcomeCallable deleteFaceVideoTemplateCallable(const Model::DeleteFaceVideoTemplateRequest& request) const;
 			EnhanceVideoQualityOutcome enhanceVideoQuality(const Model::EnhanceVideoQualityRequest &request)const;
 			void enhanceVideoQualityAsync(const Model::EnhanceVideoQualityRequest& request, const EnhanceVideoQualityAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			EnhanceVideoQualityOutcomeCallable enhanceVideoQualityCallable(const Model::EnhanceVideoQualityRequest& request) const;
@@ -142,6 +168,12 @@ namespace AlibabaCloud
 			MergeVideoFaceOutcome mergeVideoFace(const Model::MergeVideoFaceRequest &request)const;
 			void mergeVideoFaceAsync(const Model::MergeVideoFaceRequest& request, const MergeVideoFaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			MergeVideoFaceOutcomeCallable mergeVideoFaceCallable(const Model::MergeVideoFaceRequest& request) const;
+			MergeVideoModelFaceOutcome mergeVideoModelFace(const Model::MergeVideoModelFaceRequest &request)const;
+			void mergeVideoModelFaceAsync(const Model::MergeVideoModelFaceRequest& request, const MergeVideoModelFaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			MergeVideoModelFaceOutcomeCallable mergeVideoModelFaceCallable(const Model::MergeVideoModelFaceRequest& request) const;
+			QueryFaceVideoTemplateOutcome queryFaceVideoTemplate(const Model::QueryFaceVideoTemplateRequest &request)const;
+			void queryFaceVideoTemplateAsync(const Model::QueryFaceVideoTemplateRequest& request, const QueryFaceVideoTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			QueryFaceVideoTemplateOutcomeCallable queryFaceVideoTemplateCallable(const Model::QueryFaceVideoTemplateRequest& request) const;
 			SuperResolveVideoOutcome superResolveVideo(const Model::SuperResolveVideoRequest &request)const;
 			void superResolveVideoAsync(const Model::SuperResolveVideoRequest& request, const SuperResolveVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SuperResolveVideoOutcomeCallable superResolveVideoCallable(const Model::SuperResolveVideoRequest& request) const;

+ 54 - 0
videoenhan/include/alibabacloud/videoenhan/model/AddFaceVideoTemplateRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_ADDFACEVIDEOTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_ADDFACEVIDEOTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT AddFaceVideoTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				AddFaceVideoTemplateRequest();
+				~AddFaceVideoTemplateRequest();
+
+				std::string getUserId()const;
+				void setUserId(const std::string& userId);
+				bool getAsync()const;
+				void setAsync(bool async);
+				std::string getVideoURL()const;
+				void setVideoURL(const std::string& videoURL);
+
+            private:
+				std::string userId_;
+				bool async_;
+				std::string videoURL_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_ADDFACEVIDEOTEMPLATEREQUEST_H_

+ 59 - 0
videoenhan/include/alibabacloud/videoenhan/model/AddFaceVideoTemplateResult.h

@@ -0,0 +1,59 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_ADDFACEVIDEOTEMPLATERESULT_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_ADDFACEVIDEOTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT AddFaceVideoTemplateResult : public ServiceResult
+			{
+			public:
+				struct Date
+				{
+					std::string templateId;
+				};
+
+
+				AddFaceVideoTemplateResult();
+				explicit AddFaceVideoTemplateResult(const std::string &payload);
+				~AddFaceVideoTemplateResult();
+				std::string getMessage()const;
+				std::string getCode()const;
+				Date getDate()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string code_;
+				Date date_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_ADDFACEVIDEOTEMPLATERESULT_H_

+ 3 - 3
videoenhan/include/alibabacloud/videoenhan/model/AdjustVideoColorRequest.h

@@ -41,8 +41,8 @@ namespace AlibabaCloud
 				void setAsync(bool async);
 				std::string getVideoUrl()const;
 				void setVideoUrl(const std::string& videoUrl);
-				std::string getVideoBitrate()const;
-				void setVideoBitrate(const std::string& videoBitrate);
+				long getVideoBitrate()const;
+				void setVideoBitrate(long videoBitrate);
 				std::string getVideoCodec()const;
 				void setVideoCodec(const std::string& videoCodec);
 				std::string getVideoFormat()const;
@@ -52,7 +52,7 @@ namespace AlibabaCloud
 				std::string mode_;
 				bool async_;
 				std::string videoUrl_;
-				std::string videoBitrate_;
+				long videoBitrate_;
 				std::string videoCodec_;
 				std::string videoFormat_;
 

+ 51 - 0
videoenhan/include/alibabacloud/videoenhan/model/DeleteFaceVideoTemplateRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_DELETEFACEVIDEOTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_DELETEFACEVIDEOTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT DeleteFaceVideoTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteFaceVideoTemplateRequest();
+				~DeleteFaceVideoTemplateRequest();
+
+				std::string getUserId()const;
+				void setUserId(const std::string& userId);
+				std::string getTemplateId()const;
+				void setTemplateId(const std::string& templateId);
+
+            private:
+				std::string userId_;
+				std::string templateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_DELETEFACEVIDEOTEMPLATEREQUEST_H_

+ 53 - 0
videoenhan/include/alibabacloud/videoenhan/model/DeleteFaceVideoTemplateResult.h

@@ -0,0 +1,53 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_DELETEFACEVIDEOTEMPLATERESULT_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_DELETEFACEVIDEOTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT DeleteFaceVideoTemplateResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteFaceVideoTemplateResult();
+				explicit DeleteFaceVideoTemplateResult(const std::string &payload);
+				~DeleteFaceVideoTemplateResult();
+				std::string getMessage()const;
+				std::string getCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string code_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_DELETEFACEVIDEOTEMPLATERESULT_H_

+ 3 - 3
videoenhan/include/alibabacloud/videoenhan/model/GetAsyncJobResultRequest.h

@@ -35,14 +35,14 @@ namespace AlibabaCloud
 				GetAsyncJobResultRequest();
 				~GetAsyncJobResultRequest();
 
-				bool getAsync()const;
-				void setAsync(bool async);
 				std::string getJobId()const;
 				void setJobId(const std::string& jobId);
+				bool getAsync()const;
+				void setAsync(bool async);
 
             private:
-				bool async_;
 				std::string jobId_;
+				bool async_;
 
 			};
 		}

+ 57 - 0
videoenhan/include/alibabacloud/videoenhan/model/MergeVideoModelFaceRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_MERGEVIDEOMODELFACEREQUEST_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_MERGEVIDEOMODELFACEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT MergeVideoModelFaceRequest : public RpcServiceRequest
+			{
+
+			public:
+				MergeVideoModelFaceRequest();
+				~MergeVideoModelFaceRequest();
+
+				std::string getFaceImageURL()const;
+				void setFaceImageURL(const std::string& faceImageURL);
+				std::string getUserId()const;
+				void setUserId(const std::string& userId);
+				std::string getTemplateId()const;
+				void setTemplateId(const std::string& templateId);
+				std::string getAsync()const;
+				void setAsync(const std::string& async);
+
+            private:
+				std::string faceImageURL_;
+				std::string userId_;
+				std::string templateId_;
+				std::string async_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_MERGEVIDEOMODELFACEREQUEST_H_

+ 59 - 0
videoenhan/include/alibabacloud/videoenhan/model/MergeVideoModelFaceResult.h

@@ -0,0 +1,59 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_MERGEVIDEOMODELFACERESULT_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_MERGEVIDEOMODELFACERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT MergeVideoModelFaceResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string videoURL;
+				};
+
+
+				MergeVideoModelFaceResult();
+				explicit MergeVideoModelFaceResult(const std::string &payload);
+				~MergeVideoModelFaceResult();
+				std::string getMessage()const;
+				Data getData()const;
+				std::string getCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				Data data_;
+				std::string code_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_MERGEVIDEOMODELFACERESULT_H_

+ 51 - 0
videoenhan/include/alibabacloud/videoenhan/model/QueryFaceVideoTemplateRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_QUERYFACEVIDEOTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_QUERYFACEVIDEOTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT QueryFaceVideoTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				QueryFaceVideoTemplateRequest();
+				~QueryFaceVideoTemplateRequest();
+
+				std::string getUserId()const;
+				void setUserId(const std::string& userId);
+				std::string getTemplateId()const;
+				void setTemplateId(const std::string& templateId);
+
+            private:
+				std::string userId_;
+				std::string templateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_QUERYFACEVIDEOTEMPLATEREQUEST_H_

+ 67 - 0
videoenhan/include/alibabacloud/videoenhan/model/QueryFaceVideoTemplateResult.h

@@ -0,0 +1,67 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VIDEOENHAN_MODEL_QUERYFACEVIDEOTEMPLATERESULT_H_
+#define ALIBABACLOUD_VIDEOENHAN_MODEL_QUERYFACEVIDEOTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/videoenhan/VideoenhanExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Videoenhan
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VIDEOENHAN_EXPORT QueryFaceVideoTemplateResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct ElementsItem
+					{
+						std::string templateURL;
+						std::string userId;
+						std::string createTime;
+						std::string updateTime;
+						std::string templateId;
+					};
+					std::vector<ElementsItem> elements;
+				};
+
+
+				QueryFaceVideoTemplateResult();
+				explicit QueryFaceVideoTemplateResult(const std::string &payload);
+				~QueryFaceVideoTemplateResult();
+				std::string getMessage()const;
+				Data getData()const;
+				std::string getCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				Data data_;
+				std::string code_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VIDEOENHAN_MODEL_QUERYFACEVIDEOTEMPLATERESULT_H_

+ 144 - 0
videoenhan/src/VideoenhanClient.cc

@@ -123,6 +123,42 @@ VideoenhanClient::AbstractFilmVideoOutcomeCallable VideoenhanClient::abstractFil
 	return task->get_future();
 }
 
+VideoenhanClient::AddFaceVideoTemplateOutcome VideoenhanClient::addFaceVideoTemplate(const AddFaceVideoTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddFaceVideoTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddFaceVideoTemplateOutcome(AddFaceVideoTemplateResult(outcome.result()));
+	else
+		return AddFaceVideoTemplateOutcome(outcome.error());
+}
+
+void VideoenhanClient::addFaceVideoTemplateAsync(const AddFaceVideoTemplateRequest& request, const AddFaceVideoTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addFaceVideoTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VideoenhanClient::AddFaceVideoTemplateOutcomeCallable VideoenhanClient::addFaceVideoTemplateCallable(const AddFaceVideoTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddFaceVideoTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->addFaceVideoTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VideoenhanClient::AdjustVideoColorOutcome VideoenhanClient::adjustVideoColor(const AdjustVideoColorRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -231,6 +267,42 @@ VideoenhanClient::ConvertHdrVideoOutcomeCallable VideoenhanClient::convertHdrVid
 	return task->get_future();
 }
 
+VideoenhanClient::DeleteFaceVideoTemplateOutcome VideoenhanClient::deleteFaceVideoTemplate(const DeleteFaceVideoTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteFaceVideoTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteFaceVideoTemplateOutcome(DeleteFaceVideoTemplateResult(outcome.result()));
+	else
+		return DeleteFaceVideoTemplateOutcome(outcome.error());
+}
+
+void VideoenhanClient::deleteFaceVideoTemplateAsync(const DeleteFaceVideoTemplateRequest& request, const DeleteFaceVideoTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteFaceVideoTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VideoenhanClient::DeleteFaceVideoTemplateOutcomeCallable VideoenhanClient::deleteFaceVideoTemplateCallable(const DeleteFaceVideoTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteFaceVideoTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteFaceVideoTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VideoenhanClient::EnhanceVideoQualityOutcome VideoenhanClient::enhanceVideoQuality(const EnhanceVideoQualityRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -483,6 +555,78 @@ VideoenhanClient::MergeVideoFaceOutcomeCallable VideoenhanClient::mergeVideoFace
 	return task->get_future();
 }
 
+VideoenhanClient::MergeVideoModelFaceOutcome VideoenhanClient::mergeVideoModelFace(const MergeVideoModelFaceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return MergeVideoModelFaceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return MergeVideoModelFaceOutcome(MergeVideoModelFaceResult(outcome.result()));
+	else
+		return MergeVideoModelFaceOutcome(outcome.error());
+}
+
+void VideoenhanClient::mergeVideoModelFaceAsync(const MergeVideoModelFaceRequest& request, const MergeVideoModelFaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, mergeVideoModelFace(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VideoenhanClient::MergeVideoModelFaceOutcomeCallable VideoenhanClient::mergeVideoModelFaceCallable(const MergeVideoModelFaceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<MergeVideoModelFaceOutcome()>>(
+			[this, request]()
+			{
+			return this->mergeVideoModelFace(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+VideoenhanClient::QueryFaceVideoTemplateOutcome VideoenhanClient::queryFaceVideoTemplate(const QueryFaceVideoTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return QueryFaceVideoTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return QueryFaceVideoTemplateOutcome(QueryFaceVideoTemplateResult(outcome.result()));
+	else
+		return QueryFaceVideoTemplateOutcome(outcome.error());
+}
+
+void VideoenhanClient::queryFaceVideoTemplateAsync(const QueryFaceVideoTemplateRequest& request, const QueryFaceVideoTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, queryFaceVideoTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VideoenhanClient::QueryFaceVideoTemplateOutcomeCallable VideoenhanClient::queryFaceVideoTemplateCallable(const QueryFaceVideoTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<QueryFaceVideoTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->queryFaceVideoTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VideoenhanClient::SuperResolveVideoOutcome VideoenhanClient::superResolveVideo(const SuperResolveVideoRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 62 - 0
videoenhan/src/model/AddFaceVideoTemplateRequest.cc

@@ -0,0 +1,62 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/AddFaceVideoTemplateRequest.h>
+
+using AlibabaCloud::Videoenhan::Model::AddFaceVideoTemplateRequest;
+
+AddFaceVideoTemplateRequest::AddFaceVideoTemplateRequest() :
+	RpcServiceRequest("videoenhan", "2020-03-20", "AddFaceVideoTemplate")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+AddFaceVideoTemplateRequest::~AddFaceVideoTemplateRequest()
+{}
+
+std::string AddFaceVideoTemplateRequest::getUserId()const
+{
+	return userId_;
+}
+
+void AddFaceVideoTemplateRequest::setUserId(const std::string& userId)
+{
+	userId_ = userId;
+	setBodyParameter("UserId", userId);
+}
+
+bool AddFaceVideoTemplateRequest::getAsync()const
+{
+	return async_;
+}
+
+void AddFaceVideoTemplateRequest::setAsync(bool async)
+{
+	async_ = async;
+	setBodyParameter("Async", async ? "true" : "false");
+}
+
+std::string AddFaceVideoTemplateRequest::getVideoURL()const
+{
+	return videoURL_;
+}
+
+void AddFaceVideoTemplateRequest::setVideoURL(const std::string& videoURL)
+{
+	videoURL_ = videoURL;
+	setBodyParameter("VideoURL", videoURL);
+}
+

+ 66 - 0
videoenhan/src/model/AddFaceVideoTemplateResult.cc

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/AddFaceVideoTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Videoenhan;
+using namespace AlibabaCloud::Videoenhan::Model;
+
+AddFaceVideoTemplateResult::AddFaceVideoTemplateResult() :
+	ServiceResult()
+{}
+
+AddFaceVideoTemplateResult::AddFaceVideoTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AddFaceVideoTemplateResult::~AddFaceVideoTemplateResult()
+{}
+
+void AddFaceVideoTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dateNode = value["Date"];
+	if(!dateNode["TemplateId"].isNull())
+		date_.templateId = dateNode["TemplateId"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+
+}
+
+std::string AddFaceVideoTemplateResult::getMessage()const
+{
+	return message_;
+}
+
+std::string AddFaceVideoTemplateResult::getCode()const
+{
+	return code_;
+}
+
+AddFaceVideoTemplateResult::Date AddFaceVideoTemplateResult::getDate()const
+{
+	return date_;
+}
+

+ 3 - 3
videoenhan/src/model/AdjustVideoColorRequest.cc

@@ -60,15 +60,15 @@ void AdjustVideoColorRequest::setVideoUrl(const std::string& videoUrl)
 	setBodyParameter("VideoUrl", videoUrl);
 }
 
-std::string AdjustVideoColorRequest::getVideoBitrate()const
+long AdjustVideoColorRequest::getVideoBitrate()const
 {
 	return videoBitrate_;
 }
 
-void AdjustVideoColorRequest::setVideoBitrate(const std::string& videoBitrate)
+void AdjustVideoColorRequest::setVideoBitrate(long videoBitrate)
 {
 	videoBitrate_ = videoBitrate;
-	setBodyParameter("VideoBitrate", videoBitrate);
+	setBodyParameter("VideoBitrate", std::to_string(videoBitrate));
 }
 
 std::string AdjustVideoColorRequest::getVideoCodec()const

+ 51 - 0
videoenhan/src/model/DeleteFaceVideoTemplateRequest.cc

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/DeleteFaceVideoTemplateRequest.h>
+
+using AlibabaCloud::Videoenhan::Model::DeleteFaceVideoTemplateRequest;
+
+DeleteFaceVideoTemplateRequest::DeleteFaceVideoTemplateRequest() :
+	RpcServiceRequest("videoenhan", "2020-03-20", "DeleteFaceVideoTemplate")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+DeleteFaceVideoTemplateRequest::~DeleteFaceVideoTemplateRequest()
+{}
+
+std::string DeleteFaceVideoTemplateRequest::getUserId()const
+{
+	return userId_;
+}
+
+void DeleteFaceVideoTemplateRequest::setUserId(const std::string& userId)
+{
+	userId_ = userId;
+	setBodyParameter("UserId", userId);
+}
+
+std::string DeleteFaceVideoTemplateRequest::getTemplateId()const
+{
+	return templateId_;
+}
+
+void DeleteFaceVideoTemplateRequest::setTemplateId(const std::string& templateId)
+{
+	templateId_ = templateId;
+	setBodyParameter("TemplateId", templateId);
+}
+

+ 58 - 0
videoenhan/src/model/DeleteFaceVideoTemplateResult.cc

@@ -0,0 +1,58 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/DeleteFaceVideoTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Videoenhan;
+using namespace AlibabaCloud::Videoenhan::Model;
+
+DeleteFaceVideoTemplateResult::DeleteFaceVideoTemplateResult() :
+	ServiceResult()
+{}
+
+DeleteFaceVideoTemplateResult::DeleteFaceVideoTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteFaceVideoTemplateResult::~DeleteFaceVideoTemplateResult()
+{}
+
+void DeleteFaceVideoTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+
+}
+
+std::string DeleteFaceVideoTemplateResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DeleteFaceVideoTemplateResult::getCode()const
+{
+	return code_;
+}
+

+ 10 - 10
videoenhan/src/model/GetAsyncJobResultRequest.cc

@@ -27,25 +27,25 @@ GetAsyncJobResultRequest::GetAsyncJobResultRequest() :
 GetAsyncJobResultRequest::~GetAsyncJobResultRequest()
 {}
 
-bool GetAsyncJobResultRequest::getAsync()const
+std::string GetAsyncJobResultRequest::getJobId()const
 {
-	return async_;
+	return jobId_;
 }
 
-void GetAsyncJobResultRequest::setAsync(bool async)
+void GetAsyncJobResultRequest::setJobId(const std::string& jobId)
 {
-	async_ = async;
-	setBodyParameter("Async", async ? "true" : "false");
+	jobId_ = jobId;
+	setBodyParameter("JobId", jobId);
 }
 
-std::string GetAsyncJobResultRequest::getJobId()const
+bool GetAsyncJobResultRequest::getAsync()const
 {
-	return jobId_;
+	return async_;
 }
 
-void GetAsyncJobResultRequest::setJobId(const std::string& jobId)
+void GetAsyncJobResultRequest::setAsync(bool async)
 {
-	jobId_ = jobId;
-	setBodyParameter("JobId", jobId);
+	async_ = async;
+	setBodyParameter("Async", async ? "true" : "false");
 }
 

+ 4 - 4
videoenhan/src/model/GetAsyncJobResultResult.cc

@@ -40,16 +40,16 @@ void GetAsyncJobResultResult::parse(const std::string &payload)
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
 	auto dataNode = value["Data"];
-	if(!dataNode["JobId"].isNull())
-		data_.jobId = dataNode["JobId"].asString();
 	if(!dataNode["Status"].isNull())
 		data_.status = dataNode["Status"].asString();
-	if(!dataNode["Result"].isNull())
-		data_.result = dataNode["Result"].asString();
 	if(!dataNode["ErrorCode"].isNull())
 		data_.errorCode = dataNode["ErrorCode"].asString();
 	if(!dataNode["ErrorMessage"].isNull())
 		data_.errorMessage = dataNode["ErrorMessage"].asString();
+	if(!dataNode["JobId"].isNull())
+		data_.jobId = dataNode["JobId"].asString();
+	if(!dataNode["Result"].isNull())
+		data_.result = dataNode["Result"].asString();
 
 }
 

+ 73 - 0
videoenhan/src/model/MergeVideoModelFaceRequest.cc

@@ -0,0 +1,73 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/MergeVideoModelFaceRequest.h>
+
+using AlibabaCloud::Videoenhan::Model::MergeVideoModelFaceRequest;
+
+MergeVideoModelFaceRequest::MergeVideoModelFaceRequest() :
+	RpcServiceRequest("videoenhan", "2020-03-20", "MergeVideoModelFace")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+MergeVideoModelFaceRequest::~MergeVideoModelFaceRequest()
+{}
+
+std::string MergeVideoModelFaceRequest::getFaceImageURL()const
+{
+	return faceImageURL_;
+}
+
+void MergeVideoModelFaceRequest::setFaceImageURL(const std::string& faceImageURL)
+{
+	faceImageURL_ = faceImageURL;
+	setBodyParameter("FaceImageURL", faceImageURL);
+}
+
+std::string MergeVideoModelFaceRequest::getUserId()const
+{
+	return userId_;
+}
+
+void MergeVideoModelFaceRequest::setUserId(const std::string& userId)
+{
+	userId_ = userId;
+	setBodyParameter("UserId", userId);
+}
+
+std::string MergeVideoModelFaceRequest::getTemplateId()const
+{
+	return templateId_;
+}
+
+void MergeVideoModelFaceRequest::setTemplateId(const std::string& templateId)
+{
+	templateId_ = templateId;
+	setBodyParameter("TemplateId", templateId);
+}
+
+std::string MergeVideoModelFaceRequest::getAsync()const
+{
+	return async_;
+}
+
+void MergeVideoModelFaceRequest::setAsync(const std::string& async)
+{
+	async_ = async;
+	setBodyParameter("Async", async);
+}
+

+ 66 - 0
videoenhan/src/model/MergeVideoModelFaceResult.cc

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/MergeVideoModelFaceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Videoenhan;
+using namespace AlibabaCloud::Videoenhan::Model;
+
+MergeVideoModelFaceResult::MergeVideoModelFaceResult() :
+	ServiceResult()
+{}
+
+MergeVideoModelFaceResult::MergeVideoModelFaceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+MergeVideoModelFaceResult::~MergeVideoModelFaceResult()
+{}
+
+void MergeVideoModelFaceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["VideoURL"].isNull())
+		data_.videoURL = dataNode["VideoURL"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+
+}
+
+std::string MergeVideoModelFaceResult::getMessage()const
+{
+	return message_;
+}
+
+MergeVideoModelFaceResult::Data MergeVideoModelFaceResult::getData()const
+{
+	return data_;
+}
+
+std::string MergeVideoModelFaceResult::getCode()const
+{
+	return code_;
+}
+

+ 51 - 0
videoenhan/src/model/QueryFaceVideoTemplateRequest.cc

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/QueryFaceVideoTemplateRequest.h>
+
+using AlibabaCloud::Videoenhan::Model::QueryFaceVideoTemplateRequest;
+
+QueryFaceVideoTemplateRequest::QueryFaceVideoTemplateRequest() :
+	RpcServiceRequest("videoenhan", "2020-03-20", "QueryFaceVideoTemplate")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+QueryFaceVideoTemplateRequest::~QueryFaceVideoTemplateRequest()
+{}
+
+std::string QueryFaceVideoTemplateRequest::getUserId()const
+{
+	return userId_;
+}
+
+void QueryFaceVideoTemplateRequest::setUserId(const std::string& userId)
+{
+	userId_ = userId;
+	setParameter("UserId", userId);
+}
+
+std::string QueryFaceVideoTemplateRequest::getTemplateId()const
+{
+	return templateId_;
+}
+
+void QueryFaceVideoTemplateRequest::setTemplateId(const std::string& templateId)
+{
+	templateId_ = templateId;
+	setParameter("TemplateId", templateId);
+}
+

+ 80 - 0
videoenhan/src/model/QueryFaceVideoTemplateResult.cc

@@ -0,0 +1,80 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/videoenhan/model/QueryFaceVideoTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Videoenhan;
+using namespace AlibabaCloud::Videoenhan::Model;
+
+QueryFaceVideoTemplateResult::QueryFaceVideoTemplateResult() :
+	ServiceResult()
+{}
+
+QueryFaceVideoTemplateResult::QueryFaceVideoTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+QueryFaceVideoTemplateResult::~QueryFaceVideoTemplateResult()
+{}
+
+void QueryFaceVideoTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	auto allElementsNode = dataNode["Elements"]["ElementsItem"];
+	for (auto dataNodeElementsElementsItem : allElementsNode)
+	{
+		Data::ElementsItem elementsItemObject;
+		if(!dataNodeElementsElementsItem["TemplateURL"].isNull())
+			elementsItemObject.templateURL = dataNodeElementsElementsItem["TemplateURL"].asString();
+		if(!dataNodeElementsElementsItem["UserId"].isNull())
+			elementsItemObject.userId = dataNodeElementsElementsItem["UserId"].asString();
+		if(!dataNodeElementsElementsItem["CreateTime"].isNull())
+			elementsItemObject.createTime = dataNodeElementsElementsItem["CreateTime"].asString();
+		if(!dataNodeElementsElementsItem["UpdateTime"].isNull())
+			elementsItemObject.updateTime = dataNodeElementsElementsItem["UpdateTime"].asString();
+		if(!dataNodeElementsElementsItem["TemplateId"].isNull())
+			elementsItemObject.templateId = dataNodeElementsElementsItem["TemplateId"].asString();
+		data_.elements.push_back(elementsItemObject);
+	}
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+
+}
+
+std::string QueryFaceVideoTemplateResult::getMessage()const
+{
+	return message_;
+}
+
+QueryFaceVideoTemplateResult::Data QueryFaceVideoTemplateResult::getData()const
+{
+	return data_;
+}
+
+std::string QueryFaceVideoTemplateResult::getCode()const
+{
+	return code_;
+}
+

+ 1 - 0
videoenhan/version-2020-03-20.xml

@@ -0,0 +1 @@
+<?xml version='1.0' encoding='UTF-8'?><Version product="videoenhan" apiStyle="RPC" name="2020-03-20" isolationType="outer"><ErrorMapping exceptionExpress=""><ErrorCodes /></ErrorMapping><Apis><Api name="QueryFaceVideoTemplate" /><Api name="MergeVideoModelFace" /><Api name="AddFaceVideoTemplate" /><Api name="DeleteFaceVideoTemplate" /><Api name="ConvertHdrVideo" /><Api name="InterpolateVideoFrame" /><Api name="ToneSdrVideo" /><Api name="EnhanceVideoQuality" /><Api name="MergeVideoFace" /><Api name="ChangeVideoSize" /><Api name="GenerateVideo" /><Api name="GetAsyncJobResult" /><Api name="SuperResolveVideo" /><Api name="EraseVideoLogo" /><Api name="EraseVideoSubtitles" /><Api name="AbstractEcommerceVideo" /><Api name="AbstractFilmVideo" /><Api name="AdjustVideoColor" /></Apis></Version>

Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff