Browse Source

Support Digital Watermark.

sdk-team 2 years ago
parent
commit
b6d2db14fe
30 changed files with 1373 additions and 1 deletions
  1. 1 1
      VERSION
  2. 16 0
      vod/CMakeLists.txt
  3. 32 0
      vod/include/alibabacloud/vod/VodClient.h
  4. 63 0
      vod/include/alibabacloud/vod/model/AddEditingProjectMaterialsRequest.h
  5. 71 0
      vod/include/alibabacloud/vod/model/AddEditingProjectMaterialsResult.h
  6. 63 0
      vod/include/alibabacloud/vod/model/DeleteEditingProjectMaterialsRequest.h
  7. 49 0
      vod/include/alibabacloud/vod/model/DeleteEditingProjectMaterialsResult.h
  8. 3 0
      vod/include/alibabacloud/vod/model/DeleteVodSpecificConfigRequest.h
  9. 63 0
      vod/include/alibabacloud/vod/model/GetDigitalWatermarkExtractResultRequest.h
  10. 60 0
      vod/include/alibabacloud/vod/model/GetDigitalWatermarkExtractResultResult.h
  11. 6 0
      vod/include/alibabacloud/vod/model/GetPlayInfoRequest.h
  12. 2 0
      vod/include/alibabacloud/vod/model/GetPlayInfoResult.h
  13. 2 0
      vod/include/alibabacloud/vod/model/GetTranscodeTemplateGroupResult.h
  14. 60 0
      vod/include/alibabacloud/vod/model/SubmitDigitalWatermarkExtractJobRequest.h
  15. 51 0
      vod/include/alibabacloud/vod/model/SubmitDigitalWatermarkExtractJobResult.h
  16. 3 0
      vod/include/alibabacloud/vod/model/UploadMediaByURLRequest.h
  17. 144 0
      vod/src/VodClient.cc
  18. 99 0
      vod/src/model/AddEditingProjectMaterialsRequest.cc
  19. 91 0
      vod/src/model/AddEditingProjectMaterialsResult.cc
  20. 99 0
      vod/src/model/DeleteEditingProjectMaterialsRequest.cc
  21. 44 0
      vod/src/model/DeleteEditingProjectMaterialsResult.cc
  22. 9 0
      vod/src/model/DeleteVodSpecificConfigRequest.cc
  23. 99 0
      vod/src/model/GetDigitalWatermarkExtractResultRequest.cc
  24. 67 0
      vod/src/model/GetDigitalWatermarkExtractResultResult.cc
  25. 18 0
      vod/src/model/GetPlayInfoRequest.cc
  26. 4 0
      vod/src/model/GetPlayInfoResult.cc
  27. 4 0
      vod/src/model/GetTranscodeTemplateGroupResult.cc
  28. 90 0
      vod/src/model/SubmitDigitalWatermarkExtractJobRequest.cc
  29. 51 0
      vod/src/model/SubmitDigitalWatermarkExtractJobResult.cc
  30. 9 0
      vod/src/model/UploadMediaByURLRequest.cc

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1783
+1.36.1784

+ 16 - 0
vod/CMakeLists.txt

@@ -27,6 +27,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/AddCategoryResult.h
 	include/alibabacloud/vod/model/AddCategoryResult.h
 	include/alibabacloud/vod/model/AddEditingProjectRequest.h
 	include/alibabacloud/vod/model/AddEditingProjectRequest.h
 	include/alibabacloud/vod/model/AddEditingProjectResult.h
 	include/alibabacloud/vod/model/AddEditingProjectResult.h
+	include/alibabacloud/vod/model/AddEditingProjectMaterialsRequest.h
+	include/alibabacloud/vod/model/AddEditingProjectMaterialsResult.h
 	include/alibabacloud/vod/model/AddTranscodeTemplateGroupRequest.h
 	include/alibabacloud/vod/model/AddTranscodeTemplateGroupRequest.h
 	include/alibabacloud/vod/model/AddTranscodeTemplateGroupResult.h
 	include/alibabacloud/vod/model/AddTranscodeTemplateGroupResult.h
 	include/alibabacloud/vod/model/AddVodDomainRequest.h
 	include/alibabacloud/vod/model/AddVodDomainRequest.h
@@ -71,6 +73,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/DeleteDynamicImageResult.h
 	include/alibabacloud/vod/model/DeleteDynamicImageResult.h
 	include/alibabacloud/vod/model/DeleteEditingProjectRequest.h
 	include/alibabacloud/vod/model/DeleteEditingProjectRequest.h
 	include/alibabacloud/vod/model/DeleteEditingProjectResult.h
 	include/alibabacloud/vod/model/DeleteEditingProjectResult.h
+	include/alibabacloud/vod/model/DeleteEditingProjectMaterialsRequest.h
+	include/alibabacloud/vod/model/DeleteEditingProjectMaterialsResult.h
 	include/alibabacloud/vod/model/DeleteImageRequest.h
 	include/alibabacloud/vod/model/DeleteImageRequest.h
 	include/alibabacloud/vod/model/DeleteImageResult.h
 	include/alibabacloud/vod/model/DeleteImageResult.h
 	include/alibabacloud/vod/model/DeleteMessageCallbackRequest.h
 	include/alibabacloud/vod/model/DeleteMessageCallbackRequest.h
@@ -157,6 +161,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/GetCategoriesResult.h
 	include/alibabacloud/vod/model/GetCategoriesResult.h
 	include/alibabacloud/vod/model/GetDefaultAITemplateRequest.h
 	include/alibabacloud/vod/model/GetDefaultAITemplateRequest.h
 	include/alibabacloud/vod/model/GetDefaultAITemplateResult.h
 	include/alibabacloud/vod/model/GetDefaultAITemplateResult.h
+	include/alibabacloud/vod/model/GetDigitalWatermarkExtractResultRequest.h
+	include/alibabacloud/vod/model/GetDigitalWatermarkExtractResultResult.h
 	include/alibabacloud/vod/model/GetEditingProjectRequest.h
 	include/alibabacloud/vod/model/GetEditingProjectRequest.h
 	include/alibabacloud/vod/model/GetEditingProjectResult.h
 	include/alibabacloud/vod/model/GetEditingProjectResult.h
 	include/alibabacloud/vod/model/GetEditingProjectMaterialsRequest.h
 	include/alibabacloud/vod/model/GetEditingProjectMaterialsRequest.h
@@ -275,6 +281,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/SubmitAIJobResult.h
 	include/alibabacloud/vod/model/SubmitAIJobResult.h
 	include/alibabacloud/vod/model/SubmitAIMediaAuditJobRequest.h
 	include/alibabacloud/vod/model/SubmitAIMediaAuditJobRequest.h
 	include/alibabacloud/vod/model/SubmitAIMediaAuditJobResult.h
 	include/alibabacloud/vod/model/SubmitAIMediaAuditJobResult.h
+	include/alibabacloud/vod/model/SubmitDigitalWatermarkExtractJobRequest.h
+	include/alibabacloud/vod/model/SubmitDigitalWatermarkExtractJobResult.h
 	include/alibabacloud/vod/model/SubmitDynamicImageJobRequest.h
 	include/alibabacloud/vod/model/SubmitDynamicImageJobRequest.h
 	include/alibabacloud/vod/model/SubmitDynamicImageJobResult.h
 	include/alibabacloud/vod/model/SubmitDynamicImageJobResult.h
 	include/alibabacloud/vod/model/SubmitMediaDNADeleteJobRequest.h
 	include/alibabacloud/vod/model/SubmitMediaDNADeleteJobRequest.h
@@ -328,6 +336,8 @@ set(vod_src
 	src/model/AddCategoryResult.cc
 	src/model/AddCategoryResult.cc
 	src/model/AddEditingProjectRequest.cc
 	src/model/AddEditingProjectRequest.cc
 	src/model/AddEditingProjectResult.cc
 	src/model/AddEditingProjectResult.cc
+	src/model/AddEditingProjectMaterialsRequest.cc
+	src/model/AddEditingProjectMaterialsResult.cc
 	src/model/AddTranscodeTemplateGroupRequest.cc
 	src/model/AddTranscodeTemplateGroupRequest.cc
 	src/model/AddTranscodeTemplateGroupResult.cc
 	src/model/AddTranscodeTemplateGroupResult.cc
 	src/model/AddVodDomainRequest.cc
 	src/model/AddVodDomainRequest.cc
@@ -372,6 +382,8 @@ set(vod_src
 	src/model/DeleteDynamicImageResult.cc
 	src/model/DeleteDynamicImageResult.cc
 	src/model/DeleteEditingProjectRequest.cc
 	src/model/DeleteEditingProjectRequest.cc
 	src/model/DeleteEditingProjectResult.cc
 	src/model/DeleteEditingProjectResult.cc
+	src/model/DeleteEditingProjectMaterialsRequest.cc
+	src/model/DeleteEditingProjectMaterialsResult.cc
 	src/model/DeleteImageRequest.cc
 	src/model/DeleteImageRequest.cc
 	src/model/DeleteImageResult.cc
 	src/model/DeleteImageResult.cc
 	src/model/DeleteMessageCallbackRequest.cc
 	src/model/DeleteMessageCallbackRequest.cc
@@ -458,6 +470,8 @@ set(vod_src
 	src/model/GetCategoriesResult.cc
 	src/model/GetCategoriesResult.cc
 	src/model/GetDefaultAITemplateRequest.cc
 	src/model/GetDefaultAITemplateRequest.cc
 	src/model/GetDefaultAITemplateResult.cc
 	src/model/GetDefaultAITemplateResult.cc
+	src/model/GetDigitalWatermarkExtractResultRequest.cc
+	src/model/GetDigitalWatermarkExtractResultResult.cc
 	src/model/GetEditingProjectRequest.cc
 	src/model/GetEditingProjectRequest.cc
 	src/model/GetEditingProjectResult.cc
 	src/model/GetEditingProjectResult.cc
 	src/model/GetEditingProjectMaterialsRequest.cc
 	src/model/GetEditingProjectMaterialsRequest.cc
@@ -576,6 +590,8 @@ set(vod_src
 	src/model/SubmitAIJobResult.cc
 	src/model/SubmitAIJobResult.cc
 	src/model/SubmitAIMediaAuditJobRequest.cc
 	src/model/SubmitAIMediaAuditJobRequest.cc
 	src/model/SubmitAIMediaAuditJobResult.cc
 	src/model/SubmitAIMediaAuditJobResult.cc
+	src/model/SubmitDigitalWatermarkExtractJobRequest.cc
+	src/model/SubmitDigitalWatermarkExtractJobResult.cc
 	src/model/SubmitDynamicImageJobRequest.cc
 	src/model/SubmitDynamicImageJobRequest.cc
 	src/model/SubmitDynamicImageJobResult.cc
 	src/model/SubmitDynamicImageJobResult.cc
 	src/model/SubmitMediaDNADeleteJobRequest.cc
 	src/model/SubmitMediaDNADeleteJobRequest.cc

+ 32 - 0
vod/include/alibabacloud/vod/VodClient.h

@@ -28,6 +28,8 @@
 #include "model/AddCategoryResult.h"
 #include "model/AddCategoryResult.h"
 #include "model/AddEditingProjectRequest.h"
 #include "model/AddEditingProjectRequest.h"
 #include "model/AddEditingProjectResult.h"
 #include "model/AddEditingProjectResult.h"
+#include "model/AddEditingProjectMaterialsRequest.h"
+#include "model/AddEditingProjectMaterialsResult.h"
 #include "model/AddTranscodeTemplateGroupRequest.h"
 #include "model/AddTranscodeTemplateGroupRequest.h"
 #include "model/AddTranscodeTemplateGroupResult.h"
 #include "model/AddTranscodeTemplateGroupResult.h"
 #include "model/AddVodDomainRequest.h"
 #include "model/AddVodDomainRequest.h"
@@ -72,6 +74,8 @@
 #include "model/DeleteDynamicImageResult.h"
 #include "model/DeleteDynamicImageResult.h"
 #include "model/DeleteEditingProjectRequest.h"
 #include "model/DeleteEditingProjectRequest.h"
 #include "model/DeleteEditingProjectResult.h"
 #include "model/DeleteEditingProjectResult.h"
+#include "model/DeleteEditingProjectMaterialsRequest.h"
+#include "model/DeleteEditingProjectMaterialsResult.h"
 #include "model/DeleteImageRequest.h"
 #include "model/DeleteImageRequest.h"
 #include "model/DeleteImageResult.h"
 #include "model/DeleteImageResult.h"
 #include "model/DeleteMessageCallbackRequest.h"
 #include "model/DeleteMessageCallbackRequest.h"
@@ -158,6 +162,8 @@
 #include "model/GetCategoriesResult.h"
 #include "model/GetCategoriesResult.h"
 #include "model/GetDefaultAITemplateRequest.h"
 #include "model/GetDefaultAITemplateRequest.h"
 #include "model/GetDefaultAITemplateResult.h"
 #include "model/GetDefaultAITemplateResult.h"
+#include "model/GetDigitalWatermarkExtractResultRequest.h"
+#include "model/GetDigitalWatermarkExtractResultResult.h"
 #include "model/GetEditingProjectRequest.h"
 #include "model/GetEditingProjectRequest.h"
 #include "model/GetEditingProjectResult.h"
 #include "model/GetEditingProjectResult.h"
 #include "model/GetEditingProjectMaterialsRequest.h"
 #include "model/GetEditingProjectMaterialsRequest.h"
@@ -276,6 +282,8 @@
 #include "model/SubmitAIJobResult.h"
 #include "model/SubmitAIJobResult.h"
 #include "model/SubmitAIMediaAuditJobRequest.h"
 #include "model/SubmitAIMediaAuditJobRequest.h"
 #include "model/SubmitAIMediaAuditJobResult.h"
 #include "model/SubmitAIMediaAuditJobResult.h"
+#include "model/SubmitDigitalWatermarkExtractJobRequest.h"
+#include "model/SubmitDigitalWatermarkExtractJobResult.h"
 #include "model/SubmitDynamicImageJobRequest.h"
 #include "model/SubmitDynamicImageJobRequest.h"
 #include "model/SubmitDynamicImageJobResult.h"
 #include "model/SubmitDynamicImageJobResult.h"
 #include "model/SubmitMediaDNADeleteJobRequest.h"
 #include "model/SubmitMediaDNADeleteJobRequest.h"
@@ -338,6 +346,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::AddEditingProjectResult> AddEditingProjectOutcome;
 			typedef Outcome<Error, Model::AddEditingProjectResult> AddEditingProjectOutcome;
 			typedef std::future<AddEditingProjectOutcome> AddEditingProjectOutcomeCallable;
 			typedef std::future<AddEditingProjectOutcome> AddEditingProjectOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::AddEditingProjectRequest&, const AddEditingProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddEditingProjectAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::AddEditingProjectRequest&, const AddEditingProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddEditingProjectAsyncHandler;
+			typedef Outcome<Error, Model::AddEditingProjectMaterialsResult> AddEditingProjectMaterialsOutcome;
+			typedef std::future<AddEditingProjectMaterialsOutcome> AddEditingProjectMaterialsOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::AddEditingProjectMaterialsRequest&, const AddEditingProjectMaterialsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddEditingProjectMaterialsAsyncHandler;
 			typedef Outcome<Error, Model::AddTranscodeTemplateGroupResult> AddTranscodeTemplateGroupOutcome;
 			typedef Outcome<Error, Model::AddTranscodeTemplateGroupResult> AddTranscodeTemplateGroupOutcome;
 			typedef std::future<AddTranscodeTemplateGroupOutcome> AddTranscodeTemplateGroupOutcomeCallable;
 			typedef std::future<AddTranscodeTemplateGroupOutcome> AddTranscodeTemplateGroupOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::AddTranscodeTemplateGroupRequest&, const AddTranscodeTemplateGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddTranscodeTemplateGroupAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::AddTranscodeTemplateGroupRequest&, const AddTranscodeTemplateGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddTranscodeTemplateGroupAsyncHandler;
@@ -404,6 +415,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteEditingProjectResult> DeleteEditingProjectOutcome;
 			typedef Outcome<Error, Model::DeleteEditingProjectResult> DeleteEditingProjectOutcome;
 			typedef std::future<DeleteEditingProjectOutcome> DeleteEditingProjectOutcomeCallable;
 			typedef std::future<DeleteEditingProjectOutcome> DeleteEditingProjectOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DeleteEditingProjectRequest&, const DeleteEditingProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteEditingProjectAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::DeleteEditingProjectRequest&, const DeleteEditingProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteEditingProjectAsyncHandler;
+			typedef Outcome<Error, Model::DeleteEditingProjectMaterialsResult> DeleteEditingProjectMaterialsOutcome;
+			typedef std::future<DeleteEditingProjectMaterialsOutcome> DeleteEditingProjectMaterialsOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::DeleteEditingProjectMaterialsRequest&, const DeleteEditingProjectMaterialsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteEditingProjectMaterialsAsyncHandler;
 			typedef Outcome<Error, Model::DeleteImageResult> DeleteImageOutcome;
 			typedef Outcome<Error, Model::DeleteImageResult> DeleteImageOutcome;
 			typedef std::future<DeleteImageOutcome> DeleteImageOutcomeCallable;
 			typedef std::future<DeleteImageOutcome> DeleteImageOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DeleteImageRequest&, const DeleteImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteImageAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::DeleteImageRequest&, const DeleteImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteImageAsyncHandler;
@@ -533,6 +547,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetDefaultAITemplateResult> GetDefaultAITemplateOutcome;
 			typedef Outcome<Error, Model::GetDefaultAITemplateResult> GetDefaultAITemplateOutcome;
 			typedef std::future<GetDefaultAITemplateOutcome> GetDefaultAITemplateOutcomeCallable;
 			typedef std::future<GetDefaultAITemplateOutcome> GetDefaultAITemplateOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetDefaultAITemplateRequest&, const GetDefaultAITemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDefaultAITemplateAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::GetDefaultAITemplateRequest&, const GetDefaultAITemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDefaultAITemplateAsyncHandler;
+			typedef Outcome<Error, Model::GetDigitalWatermarkExtractResultResult> GetDigitalWatermarkExtractResultOutcome;
+			typedef std::future<GetDigitalWatermarkExtractResultOutcome> GetDigitalWatermarkExtractResultOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::GetDigitalWatermarkExtractResultRequest&, const GetDigitalWatermarkExtractResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDigitalWatermarkExtractResultAsyncHandler;
 			typedef Outcome<Error, Model::GetEditingProjectResult> GetEditingProjectOutcome;
 			typedef Outcome<Error, Model::GetEditingProjectResult> GetEditingProjectOutcome;
 			typedef std::future<GetEditingProjectOutcome> GetEditingProjectOutcomeCallable;
 			typedef std::future<GetEditingProjectOutcome> GetEditingProjectOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetEditingProjectRequest&, const GetEditingProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetEditingProjectAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::GetEditingProjectRequest&, const GetEditingProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetEditingProjectAsyncHandler;
@@ -710,6 +727,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::SubmitAIMediaAuditJobResult> SubmitAIMediaAuditJobOutcome;
 			typedef Outcome<Error, Model::SubmitAIMediaAuditJobResult> SubmitAIMediaAuditJobOutcome;
 			typedef std::future<SubmitAIMediaAuditJobOutcome> SubmitAIMediaAuditJobOutcomeCallable;
 			typedef std::future<SubmitAIMediaAuditJobOutcome> SubmitAIMediaAuditJobOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SubmitAIMediaAuditJobRequest&, const SubmitAIMediaAuditJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitAIMediaAuditJobAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::SubmitAIMediaAuditJobRequest&, const SubmitAIMediaAuditJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitAIMediaAuditJobAsyncHandler;
+			typedef Outcome<Error, Model::SubmitDigitalWatermarkExtractJobResult> SubmitDigitalWatermarkExtractJobOutcome;
+			typedef std::future<SubmitDigitalWatermarkExtractJobOutcome> SubmitDigitalWatermarkExtractJobOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::SubmitDigitalWatermarkExtractJobRequest&, const SubmitDigitalWatermarkExtractJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitDigitalWatermarkExtractJobAsyncHandler;
 			typedef Outcome<Error, Model::SubmitDynamicImageJobResult> SubmitDynamicImageJobOutcome;
 			typedef Outcome<Error, Model::SubmitDynamicImageJobResult> SubmitDynamicImageJobOutcome;
 			typedef std::future<SubmitDynamicImageJobOutcome> SubmitDynamicImageJobOutcomeCallable;
 			typedef std::future<SubmitDynamicImageJobOutcome> SubmitDynamicImageJobOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SubmitDynamicImageJobRequest&, const SubmitDynamicImageJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitDynamicImageJobAsyncHandler;
 			typedef std::function<void(const VodClient*, const Model::SubmitDynamicImageJobRequest&, const SubmitDynamicImageJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitDynamicImageJobAsyncHandler;
@@ -790,6 +810,9 @@ namespace AlibabaCloud
 			AddEditingProjectOutcome addEditingProject(const Model::AddEditingProjectRequest &request)const;
 			AddEditingProjectOutcome addEditingProject(const Model::AddEditingProjectRequest &request)const;
 			void addEditingProjectAsync(const Model::AddEditingProjectRequest& request, const AddEditingProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void addEditingProjectAsync(const Model::AddEditingProjectRequest& request, const AddEditingProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AddEditingProjectOutcomeCallable addEditingProjectCallable(const Model::AddEditingProjectRequest& request) const;
 			AddEditingProjectOutcomeCallable addEditingProjectCallable(const Model::AddEditingProjectRequest& request) const;
+			AddEditingProjectMaterialsOutcome addEditingProjectMaterials(const Model::AddEditingProjectMaterialsRequest &request)const;
+			void addEditingProjectMaterialsAsync(const Model::AddEditingProjectMaterialsRequest& request, const AddEditingProjectMaterialsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AddEditingProjectMaterialsOutcomeCallable addEditingProjectMaterialsCallable(const Model::AddEditingProjectMaterialsRequest& request) const;
 			AddTranscodeTemplateGroupOutcome addTranscodeTemplateGroup(const Model::AddTranscodeTemplateGroupRequest &request)const;
 			AddTranscodeTemplateGroupOutcome addTranscodeTemplateGroup(const Model::AddTranscodeTemplateGroupRequest &request)const;
 			void addTranscodeTemplateGroupAsync(const Model::AddTranscodeTemplateGroupRequest& request, const AddTranscodeTemplateGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void addTranscodeTemplateGroupAsync(const Model::AddTranscodeTemplateGroupRequest& request, const AddTranscodeTemplateGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AddTranscodeTemplateGroupOutcomeCallable addTranscodeTemplateGroupCallable(const Model::AddTranscodeTemplateGroupRequest& request) const;
 			AddTranscodeTemplateGroupOutcomeCallable addTranscodeTemplateGroupCallable(const Model::AddTranscodeTemplateGroupRequest& request) const;
@@ -856,6 +879,9 @@ namespace AlibabaCloud
 			DeleteEditingProjectOutcome deleteEditingProject(const Model::DeleteEditingProjectRequest &request)const;
 			DeleteEditingProjectOutcome deleteEditingProject(const Model::DeleteEditingProjectRequest &request)const;
 			void deleteEditingProjectAsync(const Model::DeleteEditingProjectRequest& request, const DeleteEditingProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void deleteEditingProjectAsync(const Model::DeleteEditingProjectRequest& request, const DeleteEditingProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteEditingProjectOutcomeCallable deleteEditingProjectCallable(const Model::DeleteEditingProjectRequest& request) const;
 			DeleteEditingProjectOutcomeCallable deleteEditingProjectCallable(const Model::DeleteEditingProjectRequest& request) const;
+			DeleteEditingProjectMaterialsOutcome deleteEditingProjectMaterials(const Model::DeleteEditingProjectMaterialsRequest &request)const;
+			void deleteEditingProjectMaterialsAsync(const Model::DeleteEditingProjectMaterialsRequest& request, const DeleteEditingProjectMaterialsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteEditingProjectMaterialsOutcomeCallable deleteEditingProjectMaterialsCallable(const Model::DeleteEditingProjectMaterialsRequest& request) const;
 			DeleteImageOutcome deleteImage(const Model::DeleteImageRequest &request)const;
 			DeleteImageOutcome deleteImage(const Model::DeleteImageRequest &request)const;
 			void deleteImageAsync(const Model::DeleteImageRequest& request, const DeleteImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void deleteImageAsync(const Model::DeleteImageRequest& request, const DeleteImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteImageOutcomeCallable deleteImageCallable(const Model::DeleteImageRequest& request) const;
 			DeleteImageOutcomeCallable deleteImageCallable(const Model::DeleteImageRequest& request) const;
@@ -985,6 +1011,9 @@ namespace AlibabaCloud
 			GetDefaultAITemplateOutcome getDefaultAITemplate(const Model::GetDefaultAITemplateRequest &request)const;
 			GetDefaultAITemplateOutcome getDefaultAITemplate(const Model::GetDefaultAITemplateRequest &request)const;
 			void getDefaultAITemplateAsync(const Model::GetDefaultAITemplateRequest& request, const GetDefaultAITemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void getDefaultAITemplateAsync(const Model::GetDefaultAITemplateRequest& request, const GetDefaultAITemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetDefaultAITemplateOutcomeCallable getDefaultAITemplateCallable(const Model::GetDefaultAITemplateRequest& request) const;
 			GetDefaultAITemplateOutcomeCallable getDefaultAITemplateCallable(const Model::GetDefaultAITemplateRequest& request) const;
+			GetDigitalWatermarkExtractResultOutcome getDigitalWatermarkExtractResult(const Model::GetDigitalWatermarkExtractResultRequest &request)const;
+			void getDigitalWatermarkExtractResultAsync(const Model::GetDigitalWatermarkExtractResultRequest& request, const GetDigitalWatermarkExtractResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetDigitalWatermarkExtractResultOutcomeCallable getDigitalWatermarkExtractResultCallable(const Model::GetDigitalWatermarkExtractResultRequest& request) const;
 			GetEditingProjectOutcome getEditingProject(const Model::GetEditingProjectRequest &request)const;
 			GetEditingProjectOutcome getEditingProject(const Model::GetEditingProjectRequest &request)const;
 			void getEditingProjectAsync(const Model::GetEditingProjectRequest& request, const GetEditingProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void getEditingProjectAsync(const Model::GetEditingProjectRequest& request, const GetEditingProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetEditingProjectOutcomeCallable getEditingProjectCallable(const Model::GetEditingProjectRequest& request) const;
 			GetEditingProjectOutcomeCallable getEditingProjectCallable(const Model::GetEditingProjectRequest& request) const;
@@ -1162,6 +1191,9 @@ namespace AlibabaCloud
 			SubmitAIMediaAuditJobOutcome submitAIMediaAuditJob(const Model::SubmitAIMediaAuditJobRequest &request)const;
 			SubmitAIMediaAuditJobOutcome submitAIMediaAuditJob(const Model::SubmitAIMediaAuditJobRequest &request)const;
 			void submitAIMediaAuditJobAsync(const Model::SubmitAIMediaAuditJobRequest& request, const SubmitAIMediaAuditJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void submitAIMediaAuditJobAsync(const Model::SubmitAIMediaAuditJobRequest& request, const SubmitAIMediaAuditJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SubmitAIMediaAuditJobOutcomeCallable submitAIMediaAuditJobCallable(const Model::SubmitAIMediaAuditJobRequest& request) const;
 			SubmitAIMediaAuditJobOutcomeCallable submitAIMediaAuditJobCallable(const Model::SubmitAIMediaAuditJobRequest& request) const;
+			SubmitDigitalWatermarkExtractJobOutcome submitDigitalWatermarkExtractJob(const Model::SubmitDigitalWatermarkExtractJobRequest &request)const;
+			void submitDigitalWatermarkExtractJobAsync(const Model::SubmitDigitalWatermarkExtractJobRequest& request, const SubmitDigitalWatermarkExtractJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SubmitDigitalWatermarkExtractJobOutcomeCallable submitDigitalWatermarkExtractJobCallable(const Model::SubmitDigitalWatermarkExtractJobRequest& request) const;
 			SubmitDynamicImageJobOutcome submitDynamicImageJob(const Model::SubmitDynamicImageJobRequest &request)const;
 			SubmitDynamicImageJobOutcome submitDynamicImageJob(const Model::SubmitDynamicImageJobRequest &request)const;
 			void submitDynamicImageJobAsync(const Model::SubmitDynamicImageJobRequest& request, const SubmitDynamicImageJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void submitDynamicImageJobAsync(const Model::SubmitDynamicImageJobRequest& request, const SubmitDynamicImageJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SubmitDynamicImageJobOutcomeCallable submitDynamicImageJobCallable(const Model::SubmitDynamicImageJobRequest& request) const;
 			SubmitDynamicImageJobOutcomeCallable submitDynamicImageJobCallable(const Model::SubmitDynamicImageJobRequest& request) const;

+ 63 - 0
vod/include/alibabacloud/vod/model/AddEditingProjectMaterialsRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_VOD_MODEL_ADDEDITINGPROJECTMATERIALSREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_ADDEDITINGPROJECTMATERIALSREQUEST_H_
+
+#include <alibabacloud/vod/VodExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Vod {
+namespace Model {
+class ALIBABACLOUD_VOD_EXPORT AddEditingProjectMaterialsRequest : public RpcServiceRequest {
+public:
+	AddEditingProjectMaterialsRequest();
+	~AddEditingProjectMaterialsRequest();
+	std::string getResourceOwnerId() const;
+	void setResourceOwnerId(const std::string &resourceOwnerId);
+	std::string getAccessKeyId() const;
+	void setAccessKeyId(const std::string &accessKeyId);
+	std::string getMaterialType() const;
+	void setMaterialType(const std::string &materialType);
+	std::string getProjectId() const;
+	void setProjectId(const std::string &projectId);
+	std::string getResourceOwnerAccount() const;
+	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
+	std::string getOwnerAccount() const;
+	void setOwnerAccount(const std::string &ownerAccount);
+	std::string getOwnerId() const;
+	void setOwnerId(const std::string &ownerId);
+	std::string getMaterialIds() const;
+	void setMaterialIds(const std::string &materialIds);
+
+private:
+	std::string resourceOwnerId_;
+	std::string accessKeyId_;
+	std::string materialType_;
+	std::string projectId_;
+	std::string resourceOwnerAccount_;
+	std::string ownerAccount_;
+	std::string ownerId_;
+	std::string materialIds_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_ADDEDITINGPROJECTMATERIALSREQUEST_H_

+ 71 - 0
vod/include/alibabacloud/vod/model/AddEditingProjectMaterialsResult.h

@@ -0,0 +1,71 @@
+/*
+ * 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_VOD_MODEL_ADDEDITINGPROJECTMATERIALSRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_ADDEDITINGPROJECTMATERIALSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT AddEditingProjectMaterialsResult : public ServiceResult
+			{
+			public:
+				struct Material
+				{
+					std::string status;
+					std::string modifyTime;
+					std::string materialId;
+					std::string description;
+					long size;
+					std::string createTime;
+					std::string spriteConfig;
+					std::string title;
+					float duration;
+					int cateId;
+					std::string cateName;
+					long customerId;
+					std::string materialType;
+					std::vector<std::string> sprites;
+					std::string coverURL;
+					std::vector<std::string> snapshots;
+					std::string tags;
+				};
+
+
+				AddEditingProjectMaterialsResult();
+				explicit AddEditingProjectMaterialsResult(const std::string &payload);
+				~AddEditingProjectMaterialsResult();
+				std::vector<Material> getMaterialList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Material> materialList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_ADDEDITINGPROJECTMATERIALSRESULT_H_

+ 63 - 0
vod/include/alibabacloud/vod/model/DeleteEditingProjectMaterialsRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_VOD_MODEL_DELETEEDITINGPROJECTMATERIALSREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_DELETEEDITINGPROJECTMATERIALSREQUEST_H_
+
+#include <alibabacloud/vod/VodExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Vod {
+namespace Model {
+class ALIBABACLOUD_VOD_EXPORT DeleteEditingProjectMaterialsRequest : public RpcServiceRequest {
+public:
+	DeleteEditingProjectMaterialsRequest();
+	~DeleteEditingProjectMaterialsRequest();
+	std::string getResourceOwnerId() const;
+	void setResourceOwnerId(const std::string &resourceOwnerId);
+	std::string getAccessKeyId() const;
+	void setAccessKeyId(const std::string &accessKeyId);
+	std::string getMaterialType() const;
+	void setMaterialType(const std::string &materialType);
+	std::string getProjectId() const;
+	void setProjectId(const std::string &projectId);
+	std::string getResourceOwnerAccount() const;
+	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
+	std::string getOwnerAccount() const;
+	void setOwnerAccount(const std::string &ownerAccount);
+	std::string getOwnerId() const;
+	void setOwnerId(const std::string &ownerId);
+	std::string getMaterialIds() const;
+	void setMaterialIds(const std::string &materialIds);
+
+private:
+	std::string resourceOwnerId_;
+	std::string accessKeyId_;
+	std::string materialType_;
+	std::string projectId_;
+	std::string resourceOwnerAccount_;
+	std::string ownerAccount_;
+	std::string ownerId_;
+	std::string materialIds_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_DELETEEDITINGPROJECTMATERIALSREQUEST_H_

+ 49 - 0
vod/include/alibabacloud/vod/model/DeleteEditingProjectMaterialsResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_VOD_MODEL_DELETEEDITINGPROJECTMATERIALSRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_DELETEEDITINGPROJECTMATERIALSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT DeleteEditingProjectMaterialsResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteEditingProjectMaterialsResult();
+				explicit DeleteEditingProjectMaterialsResult(const std::string &payload);
+				~DeleteEditingProjectMaterialsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DELETEEDITINGPROJECTMATERIALSRESULT_H_

+ 3 - 0
vod/include/alibabacloud/vod/model/DeleteVodSpecificConfigRequest.h

@@ -34,6 +34,8 @@ public:
 	void setDomainName(const std::string &domainName);
 	void setDomainName(const std::string &domainName);
 	long getOwnerId() const;
 	long getOwnerId() const;
 	void setOwnerId(long ownerId);
 	void setOwnerId(long ownerId);
+	std::string getEnv() const;
+	void setEnv(const std::string &env);
 	std::string getSecurityToken() const;
 	std::string getSecurityToken() const;
 	void setSecurityToken(const std::string &securityToken);
 	void setSecurityToken(const std::string &securityToken);
 	std::string getConfigId() const;
 	std::string getConfigId() const;
@@ -42,6 +44,7 @@ public:
 private:
 private:
 	std::string domainName_;
 	std::string domainName_;
 	long ownerId_;
 	long ownerId_;
+	std::string env_;
 	std::string securityToken_;
 	std::string securityToken_;
 	std::string configId_;
 	std::string configId_;
 };
 };

+ 63 - 0
vod/include/alibabacloud/vod/model/GetDigitalWatermarkExtractResultRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_VOD_MODEL_GETDIGITALWATERMARKEXTRACTRESULTREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_GETDIGITALWATERMARKEXTRACTRESULTREQUEST_H_
+
+#include <alibabacloud/vod/VodExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Vod {
+namespace Model {
+class ALIBABACLOUD_VOD_EXPORT GetDigitalWatermarkExtractResultRequest : public RpcServiceRequest {
+public:
+	GetDigitalWatermarkExtractResultRequest();
+	~GetDigitalWatermarkExtractResultRequest();
+	std::string getResourceOwnerId() const;
+	void setResourceOwnerId(const std::string &resourceOwnerId);
+	std::string getExtractType() const;
+	void setExtractType(const std::string &extractType);
+	std::string getAccessKeyId() const;
+	void setAccessKeyId(const std::string &accessKeyId);
+	std::string getJobId() const;
+	void setJobId(const std::string &jobId);
+	std::string getResourceOwnerAccount() const;
+	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
+	std::string getOwnerAccount() const;
+	void setOwnerAccount(const std::string &ownerAccount);
+	std::string getOwnerId() const;
+	void setOwnerId(const std::string &ownerId);
+	std::string getMediaId() const;
+	void setMediaId(const std::string &mediaId);
+
+private:
+	std::string resourceOwnerId_;
+	std::string extractType_;
+	std::string accessKeyId_;
+	std::string jobId_;
+	std::string resourceOwnerAccount_;
+	std::string ownerAccount_;
+	std::string ownerId_;
+	std::string mediaId_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_GETDIGITALWATERMARKEXTRACTRESULTREQUEST_H_

+ 60 - 0
vod/include/alibabacloud/vod/model/GetDigitalWatermarkExtractResultResult.h

@@ -0,0 +1,60 @@
+/*
+ * 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_VOD_MODEL_GETDIGITALWATERMARKEXTRACTRESULTRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_GETDIGITALWATERMARKEXTRACTRESULTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetDigitalWatermarkExtractResultResult : public ServiceResult
+			{
+			public:
+				struct AiExtractResult
+				{
+					std::string status;
+					std::string modifyTime;
+					std::string waterMarkText;
+					std::string createTime;
+					std::string errorMessage;
+					std::string jobId;
+				};
+
+
+				GetDigitalWatermarkExtractResultResult();
+				explicit GetDigitalWatermarkExtractResultResult(const std::string &payload);
+				~GetDigitalWatermarkExtractResultResult();
+				std::vector<AiExtractResult> getAiExtractResultList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<AiExtractResult> aiExtractResultList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETDIGITALWATERMARKEXTRACTRESULTRESULT_H_

+ 6 - 0
vod/include/alibabacloud/vod/model/GetPlayInfoRequest.h

@@ -34,10 +34,14 @@ public:
 	void setFormats(const std::string &formats);
 	void setFormats(const std::string &formats);
 	std::string getChannel() const;
 	std::string getChannel() const;
 	void setChannel(const std::string &channel);
 	void setChannel(const std::string &channel);
+	std::string getDigitalWatermarkType() const;
+	void setDigitalWatermarkType(const std::string &digitalWatermarkType);
 	std::string getPlayerVersion() const;
 	std::string getPlayerVersion() const;
 	void setPlayerVersion(const std::string &playerVersion);
 	void setPlayerVersion(const std::string &playerVersion);
 	std::string getRand() const;
 	std::string getRand() const;
 	void setRand(const std::string &rand);
 	void setRand(const std::string &rand);
+	std::string getTrace() const;
+	void setTrace(const std::string &trace);
 	std::string getReAuthInfo() const;
 	std::string getReAuthInfo() const;
 	void setReAuthInfo(const std::string &reAuthInfo);
 	void setReAuthInfo(const std::string &reAuthInfo);
 	std::string getPlayConfig() const;
 	std::string getPlayConfig() const;
@@ -62,8 +66,10 @@ public:
 private:
 private:
 	std::string formats_;
 	std::string formats_;
 	std::string channel_;
 	std::string channel_;
+	std::string digitalWatermarkType_;
 	std::string playerVersion_;
 	std::string playerVersion_;
 	std::string rand_;
 	std::string rand_;
+	std::string trace_;
 	std::string reAuthInfo_;
 	std::string reAuthInfo_;
 	std::string playConfig_;
 	std::string playConfig_;
 	std::string outputType_;
 	std::string outputType_;

+ 2 - 0
vod/include/alibabacloud/vod/model/GetPlayInfoResult.h

@@ -61,6 +61,7 @@ namespace AlibabaCloud
 					std::string preprocessStatus;
 					std::string preprocessStatus;
 					std::string complexity;
 					std::string complexity;
 					std::string format;
 					std::string format;
+					std::string jobExt;
 					std::string narrowBandType;
 					std::string narrowBandType;
 					std::string plaintext;
 					std::string plaintext;
 					long height;
 					long height;
@@ -74,6 +75,7 @@ namespace AlibabaCloud
 					std::string duration;
 					std::string duration;
 					std::string bitrate;
 					std::string bitrate;
 					long encrypt;
 					long encrypt;
+					int jobType;
 					std::string encryptType;
 					std::string encryptType;
 					std::string playURL;
 					std::string playURL;
 					std::string creationTime;
 					std::string creationTime;

+ 2 - 0
vod/include/alibabacloud/vod/model/GetTranscodeTemplateGroupResult.h

@@ -41,6 +41,7 @@ namespace AlibabaCloud
 						std::string rotate;
 						std::string rotate;
 						std::string userData;
 						std::string userData;
 						std::string definition;
 						std::string definition;
+						std::string traceMark;
 						std::string transcodeFileRegular;
 						std::string transcodeFileRegular;
 						std::vector<std::string> watermarkIds;
 						std::vector<std::string> watermarkIds;
 						std::string encryptSetting;
 						std::string encryptSetting;
@@ -55,6 +56,7 @@ namespace AlibabaCloud
 						std::string subtitleList;
 						std::string subtitleList;
 						std::string muxConfig;
 						std::string muxConfig;
 						std::string openingList;
 						std::string openingList;
+						std::string copyrightMark;
 					};
 					};
 					std::string isDefault;
 					std::string isDefault;
 					std::string modifyTime;
 					std::string modifyTime;

+ 60 - 0
vod/include/alibabacloud/vod/model/SubmitDigitalWatermarkExtractJobRequest.h

@@ -0,0 +1,60 @@
+/*
+ * 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_VOD_MODEL_SUBMITDIGITALWATERMARKEXTRACTJOBREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_SUBMITDIGITALWATERMARKEXTRACTJOBREQUEST_H_
+
+#include <alibabacloud/vod/VodExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Vod {
+namespace Model {
+class ALIBABACLOUD_VOD_EXPORT SubmitDigitalWatermarkExtractJobRequest : public RpcServiceRequest {
+public:
+	SubmitDigitalWatermarkExtractJobRequest();
+	~SubmitDigitalWatermarkExtractJobRequest();
+	std::string getResourceOwnerId() const;
+	void setResourceOwnerId(const std::string &resourceOwnerId);
+	std::string getExtractType() const;
+	void setExtractType(const std::string &extractType);
+	std::string getAccessKeyId() const;
+	void setAccessKeyId(const std::string &accessKeyId);
+	std::string getResourceOwnerAccount() const;
+	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
+	std::string getOwnerAccount() const;
+	void setOwnerAccount(const std::string &ownerAccount);
+	std::string getOwnerId() const;
+	void setOwnerId(const std::string &ownerId);
+	std::string getMediaId() const;
+	void setMediaId(const std::string &mediaId);
+
+private:
+	std::string resourceOwnerId_;
+	std::string extractType_;
+	std::string accessKeyId_;
+	std::string resourceOwnerAccount_;
+	std::string ownerAccount_;
+	std::string ownerId_;
+	std::string mediaId_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_SUBMITDIGITALWATERMARKEXTRACTJOBREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/SubmitDigitalWatermarkExtractJobResult.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_VOD_MODEL_SUBMITDIGITALWATERMARKEXTRACTJOBRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_SUBMITDIGITALWATERMARKEXTRACTJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT SubmitDigitalWatermarkExtractJobResult : public ServiceResult
+			{
+			public:
+
+
+				SubmitDigitalWatermarkExtractJobResult();
+				explicit SubmitDigitalWatermarkExtractJobResult(const std::string &payload);
+				~SubmitDigitalWatermarkExtractJobResult();
+				std::string getJobId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string jobId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_SUBMITDIGITALWATERMARKEXTRACTJOBRESULT_H_

+ 3 - 0
vod/include/alibabacloud/vod/model/UploadMediaByURLRequest.h

@@ -32,6 +32,8 @@ public:
 	~UploadMediaByURLRequest();
 	~UploadMediaByURLRequest();
 	std::string getMessageCallback() const;
 	std::string getMessageCallback() const;
 	void setMessageCallback(const std::string &messageCallback);
 	void setMessageCallback(const std::string &messageCallback);
+	std::string getSessionId() const;
+	void setSessionId(const std::string &sessionId);
 	std::string getStorageLocation() const;
 	std::string getStorageLocation() const;
 	void setStorageLocation(const std::string &storageLocation);
 	void setStorageLocation(const std::string &storageLocation);
 	std::string getUserData() const;
 	std::string getUserData() const;
@@ -53,6 +55,7 @@ public:
 
 
 private:
 private:
 	std::string messageCallback_;
 	std::string messageCallback_;
+	std::string sessionId_;
 	std::string storageLocation_;
 	std::string storageLocation_;
 	std::string userData_;
 	std::string userData_;
 	std::string workflowId_;
 	std::string workflowId_;

+ 144 - 0
vod/src/VodClient.cc

@@ -159,6 +159,42 @@ VodClient::AddEditingProjectOutcomeCallable VodClient::addEditingProjectCallable
 	return task->get_future();
 	return task->get_future();
 }
 }
 
 
+VodClient::AddEditingProjectMaterialsOutcome VodClient::addEditingProjectMaterials(const AddEditingProjectMaterialsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddEditingProjectMaterialsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddEditingProjectMaterialsOutcome(AddEditingProjectMaterialsResult(outcome.result()));
+	else
+		return AddEditingProjectMaterialsOutcome(outcome.error());
+}
+
+void VodClient::addEditingProjectMaterialsAsync(const AddEditingProjectMaterialsRequest& request, const AddEditingProjectMaterialsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addEditingProjectMaterials(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::AddEditingProjectMaterialsOutcomeCallable VodClient::addEditingProjectMaterialsCallable(const AddEditingProjectMaterialsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddEditingProjectMaterialsOutcome()>>(
+			[this, request]()
+			{
+			return this->addEditingProjectMaterials(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::AddTranscodeTemplateGroupOutcome VodClient::addTranscodeTemplateGroup(const AddTranscodeTemplateGroupRequest &request) const
 VodClient::AddTranscodeTemplateGroupOutcome VodClient::addTranscodeTemplateGroup(const AddTranscodeTemplateGroupRequest &request) const
 {
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -951,6 +987,42 @@ VodClient::DeleteEditingProjectOutcomeCallable VodClient::deleteEditingProjectCa
 	return task->get_future();
 	return task->get_future();
 }
 }
 
 
+VodClient::DeleteEditingProjectMaterialsOutcome VodClient::deleteEditingProjectMaterials(const DeleteEditingProjectMaterialsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteEditingProjectMaterialsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteEditingProjectMaterialsOutcome(DeleteEditingProjectMaterialsResult(outcome.result()));
+	else
+		return DeleteEditingProjectMaterialsOutcome(outcome.error());
+}
+
+void VodClient::deleteEditingProjectMaterialsAsync(const DeleteEditingProjectMaterialsRequest& request, const DeleteEditingProjectMaterialsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteEditingProjectMaterials(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::DeleteEditingProjectMaterialsOutcomeCallable VodClient::deleteEditingProjectMaterialsCallable(const DeleteEditingProjectMaterialsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteEditingProjectMaterialsOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteEditingProjectMaterials(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::DeleteImageOutcome VodClient::deleteImage(const DeleteImageRequest &request) const
 VodClient::DeleteImageOutcome VodClient::deleteImage(const DeleteImageRequest &request) const
 {
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2499,6 +2571,42 @@ VodClient::GetDefaultAITemplateOutcomeCallable VodClient::getDefaultAITemplateCa
 	return task->get_future();
 	return task->get_future();
 }
 }
 
 
+VodClient::GetDigitalWatermarkExtractResultOutcome VodClient::getDigitalWatermarkExtractResult(const GetDigitalWatermarkExtractResultRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetDigitalWatermarkExtractResultOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetDigitalWatermarkExtractResultOutcome(GetDigitalWatermarkExtractResultResult(outcome.result()));
+	else
+		return GetDigitalWatermarkExtractResultOutcome(outcome.error());
+}
+
+void VodClient::getDigitalWatermarkExtractResultAsync(const GetDigitalWatermarkExtractResultRequest& request, const GetDigitalWatermarkExtractResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getDigitalWatermarkExtractResult(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::GetDigitalWatermarkExtractResultOutcomeCallable VodClient::getDigitalWatermarkExtractResultCallable(const GetDigitalWatermarkExtractResultRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetDigitalWatermarkExtractResultOutcome()>>(
+			[this, request]()
+			{
+			return this->getDigitalWatermarkExtractResult(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::GetEditingProjectOutcome VodClient::getEditingProject(const GetEditingProjectRequest &request) const
 VodClient::GetEditingProjectOutcome VodClient::getEditingProject(const GetEditingProjectRequest &request) const
 {
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4623,6 +4731,42 @@ VodClient::SubmitAIMediaAuditJobOutcomeCallable VodClient::submitAIMediaAuditJob
 	return task->get_future();
 	return task->get_future();
 }
 }
 
 
+VodClient::SubmitDigitalWatermarkExtractJobOutcome VodClient::submitDigitalWatermarkExtractJob(const SubmitDigitalWatermarkExtractJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SubmitDigitalWatermarkExtractJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SubmitDigitalWatermarkExtractJobOutcome(SubmitDigitalWatermarkExtractJobResult(outcome.result()));
+	else
+		return SubmitDigitalWatermarkExtractJobOutcome(outcome.error());
+}
+
+void VodClient::submitDigitalWatermarkExtractJobAsync(const SubmitDigitalWatermarkExtractJobRequest& request, const SubmitDigitalWatermarkExtractJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, submitDigitalWatermarkExtractJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::SubmitDigitalWatermarkExtractJobOutcomeCallable VodClient::submitDigitalWatermarkExtractJobCallable(const SubmitDigitalWatermarkExtractJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SubmitDigitalWatermarkExtractJobOutcome()>>(
+			[this, request]()
+			{
+			return this->submitDigitalWatermarkExtractJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::SubmitDynamicImageJobOutcome VodClient::submitDynamicImageJob(const SubmitDynamicImageJobRequest &request) const
 VodClient::SubmitDynamicImageJobOutcome VodClient::submitDynamicImageJob(const SubmitDynamicImageJobRequest &request) const
 {
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 99 - 0
vod/src/model/AddEditingProjectMaterialsRequest.cc

@@ -0,0 +1,99 @@
+/*
+ * 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/vod/model/AddEditingProjectMaterialsRequest.h>
+
+using AlibabaCloud::Vod::Model::AddEditingProjectMaterialsRequest;
+
+AddEditingProjectMaterialsRequest::AddEditingProjectMaterialsRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "AddEditingProjectMaterials") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+AddEditingProjectMaterialsRequest::~AddEditingProjectMaterialsRequest() {}
+
+std::string AddEditingProjectMaterialsRequest::getResourceOwnerId() const {
+  return resourceOwnerId_;
+}
+
+void AddEditingProjectMaterialsRequest::setResourceOwnerId(const std::string &resourceOwnerId) {
+  resourceOwnerId_ = resourceOwnerId;
+  setParameter(std::string("ResourceOwnerId"), resourceOwnerId);
+}
+
+std::string AddEditingProjectMaterialsRequest::getAccessKeyId() const {
+  return accessKeyId_;
+}
+
+void AddEditingProjectMaterialsRequest::setAccessKeyId(const std::string &accessKeyId) {
+  accessKeyId_ = accessKeyId;
+  setParameter(std::string("AccessKeyId"), accessKeyId);
+}
+
+std::string AddEditingProjectMaterialsRequest::getMaterialType() const {
+  return materialType_;
+}
+
+void AddEditingProjectMaterialsRequest::setMaterialType(const std::string &materialType) {
+  materialType_ = materialType;
+  setParameter(std::string("MaterialType"), materialType);
+}
+
+std::string AddEditingProjectMaterialsRequest::getProjectId() const {
+  return projectId_;
+}
+
+void AddEditingProjectMaterialsRequest::setProjectId(const std::string &projectId) {
+  projectId_ = projectId;
+  setParameter(std::string("ProjectId"), projectId);
+}
+
+std::string AddEditingProjectMaterialsRequest::getResourceOwnerAccount() const {
+  return resourceOwnerAccount_;
+}
+
+void AddEditingProjectMaterialsRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
+  resourceOwnerAccount_ = resourceOwnerAccount;
+  setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
+}
+
+std::string AddEditingProjectMaterialsRequest::getOwnerAccount() const {
+  return ownerAccount_;
+}
+
+void AddEditingProjectMaterialsRequest::setOwnerAccount(const std::string &ownerAccount) {
+  ownerAccount_ = ownerAccount;
+  setParameter(std::string("OwnerAccount"), ownerAccount);
+}
+
+std::string AddEditingProjectMaterialsRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void AddEditingProjectMaterialsRequest::setOwnerId(const std::string &ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), ownerId);
+}
+
+std::string AddEditingProjectMaterialsRequest::getMaterialIds() const {
+  return materialIds_;
+}
+
+void AddEditingProjectMaterialsRequest::setMaterialIds(const std::string &materialIds) {
+  materialIds_ = materialIds;
+  setParameter(std::string("MaterialIds"), materialIds);
+}
+

+ 91 - 0
vod/src/model/AddEditingProjectMaterialsResult.cc

@@ -0,0 +1,91 @@
+/*
+ * 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/vod/model/AddEditingProjectMaterialsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+AddEditingProjectMaterialsResult::AddEditingProjectMaterialsResult() :
+	ServiceResult()
+{}
+
+AddEditingProjectMaterialsResult::AddEditingProjectMaterialsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AddEditingProjectMaterialsResult::~AddEditingProjectMaterialsResult()
+{}
+
+void AddEditingProjectMaterialsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allMaterialListNode = value["MaterialList"]["Material"];
+	for (auto valueMaterialListMaterial : allMaterialListNode)
+	{
+		Material materialListObject;
+		if(!valueMaterialListMaterial["Status"].isNull())
+			materialListObject.status = valueMaterialListMaterial["Status"].asString();
+		if(!valueMaterialListMaterial["CateId"].isNull())
+			materialListObject.cateId = std::stoi(valueMaterialListMaterial["CateId"].asString());
+		if(!valueMaterialListMaterial["CreateTime"].isNull())
+			materialListObject.createTime = valueMaterialListMaterial["CreateTime"].asString();
+		if(!valueMaterialListMaterial["MaterialType"].isNull())
+			materialListObject.materialType = valueMaterialListMaterial["MaterialType"].asString();
+		if(!valueMaterialListMaterial["Tags"].isNull())
+			materialListObject.tags = valueMaterialListMaterial["Tags"].asString();
+		if(!valueMaterialListMaterial["SpriteConfig"].isNull())
+			materialListObject.spriteConfig = valueMaterialListMaterial["SpriteConfig"].asString();
+		if(!valueMaterialListMaterial["CateName"].isNull())
+			materialListObject.cateName = valueMaterialListMaterial["CateName"].asString();
+		if(!valueMaterialListMaterial["Description"].isNull())
+			materialListObject.description = valueMaterialListMaterial["Description"].asString();
+		if(!valueMaterialListMaterial["MaterialId"].isNull())
+			materialListObject.materialId = valueMaterialListMaterial["MaterialId"].asString();
+		if(!valueMaterialListMaterial["Size"].isNull())
+			materialListObject.size = std::stol(valueMaterialListMaterial["Size"].asString());
+		if(!valueMaterialListMaterial["CoverURL"].isNull())
+			materialListObject.coverURL = valueMaterialListMaterial["CoverURL"].asString();
+		if(!valueMaterialListMaterial["Duration"].isNull())
+			materialListObject.duration = std::stof(valueMaterialListMaterial["Duration"].asString());
+		if(!valueMaterialListMaterial["CustomerId"].isNull())
+			materialListObject.customerId = std::stol(valueMaterialListMaterial["CustomerId"].asString());
+		if(!valueMaterialListMaterial["Title"].isNull())
+			materialListObject.title = valueMaterialListMaterial["Title"].asString();
+		if(!valueMaterialListMaterial["ModifyTime"].isNull())
+			materialListObject.modifyTime = valueMaterialListMaterial["ModifyTime"].asString();
+		auto allSprites = value["Sprites"]["Sprite"];
+		for (auto value : allSprites)
+			materialListObject.sprites.push_back(value.asString());
+		auto allSnapshots = value["Snapshots"]["Snapshot"];
+		for (auto value : allSnapshots)
+			materialListObject.snapshots.push_back(value.asString());
+		materialList_.push_back(materialListObject);
+	}
+
+}
+
+std::vector<AddEditingProjectMaterialsResult::Material> AddEditingProjectMaterialsResult::getMaterialList()const
+{
+	return materialList_;
+}
+

+ 99 - 0
vod/src/model/DeleteEditingProjectMaterialsRequest.cc

@@ -0,0 +1,99 @@
+/*
+ * 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/vod/model/DeleteEditingProjectMaterialsRequest.h>
+
+using AlibabaCloud::Vod::Model::DeleteEditingProjectMaterialsRequest;
+
+DeleteEditingProjectMaterialsRequest::DeleteEditingProjectMaterialsRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "DeleteEditingProjectMaterials") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DeleteEditingProjectMaterialsRequest::~DeleteEditingProjectMaterialsRequest() {}
+
+std::string DeleteEditingProjectMaterialsRequest::getResourceOwnerId() const {
+  return resourceOwnerId_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setResourceOwnerId(const std::string &resourceOwnerId) {
+  resourceOwnerId_ = resourceOwnerId;
+  setParameter(std::string("ResourceOwnerId"), resourceOwnerId);
+}
+
+std::string DeleteEditingProjectMaterialsRequest::getAccessKeyId() const {
+  return accessKeyId_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setAccessKeyId(const std::string &accessKeyId) {
+  accessKeyId_ = accessKeyId;
+  setParameter(std::string("AccessKeyId"), accessKeyId);
+}
+
+std::string DeleteEditingProjectMaterialsRequest::getMaterialType() const {
+  return materialType_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setMaterialType(const std::string &materialType) {
+  materialType_ = materialType;
+  setParameter(std::string("MaterialType"), materialType);
+}
+
+std::string DeleteEditingProjectMaterialsRequest::getProjectId() const {
+  return projectId_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setProjectId(const std::string &projectId) {
+  projectId_ = projectId;
+  setParameter(std::string("ProjectId"), projectId);
+}
+
+std::string DeleteEditingProjectMaterialsRequest::getResourceOwnerAccount() const {
+  return resourceOwnerAccount_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
+  resourceOwnerAccount_ = resourceOwnerAccount;
+  setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
+}
+
+std::string DeleteEditingProjectMaterialsRequest::getOwnerAccount() const {
+  return ownerAccount_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setOwnerAccount(const std::string &ownerAccount) {
+  ownerAccount_ = ownerAccount;
+  setParameter(std::string("OwnerAccount"), ownerAccount);
+}
+
+std::string DeleteEditingProjectMaterialsRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setOwnerId(const std::string &ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), ownerId);
+}
+
+std::string DeleteEditingProjectMaterialsRequest::getMaterialIds() const {
+  return materialIds_;
+}
+
+void DeleteEditingProjectMaterialsRequest::setMaterialIds(const std::string &materialIds) {
+  materialIds_ = materialIds;
+  setParameter(std::string("MaterialIds"), materialIds);
+}
+

+ 44 - 0
vod/src/model/DeleteEditingProjectMaterialsResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/vod/model/DeleteEditingProjectMaterialsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+DeleteEditingProjectMaterialsResult::DeleteEditingProjectMaterialsResult() :
+	ServiceResult()
+{}
+
+DeleteEditingProjectMaterialsResult::DeleteEditingProjectMaterialsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteEditingProjectMaterialsResult::~DeleteEditingProjectMaterialsResult()
+{}
+
+void DeleteEditingProjectMaterialsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 9 - 0
vod/src/model/DeleteVodSpecificConfigRequest.cc

@@ -43,6 +43,15 @@ void DeleteVodSpecificConfigRequest::setOwnerId(long ownerId) {
   setParameter(std::string("OwnerId"), std::to_string(ownerId));
   setParameter(std::string("OwnerId"), std::to_string(ownerId));
 }
 }
 
 
+std::string DeleteVodSpecificConfigRequest::getEnv() const {
+  return env_;
+}
+
+void DeleteVodSpecificConfigRequest::setEnv(const std::string &env) {
+  env_ = env;
+  setParameter(std::string("Env"), env);
+}
+
 std::string DeleteVodSpecificConfigRequest::getSecurityToken() const {
 std::string DeleteVodSpecificConfigRequest::getSecurityToken() const {
   return securityToken_;
   return securityToken_;
 }
 }

+ 99 - 0
vod/src/model/GetDigitalWatermarkExtractResultRequest.cc

@@ -0,0 +1,99 @@
+/*
+ * 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/vod/model/GetDigitalWatermarkExtractResultRequest.h>
+
+using AlibabaCloud::Vod::Model::GetDigitalWatermarkExtractResultRequest;
+
+GetDigitalWatermarkExtractResultRequest::GetDigitalWatermarkExtractResultRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "GetDigitalWatermarkExtractResult") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetDigitalWatermarkExtractResultRequest::~GetDigitalWatermarkExtractResultRequest() {}
+
+std::string GetDigitalWatermarkExtractResultRequest::getResourceOwnerId() const {
+  return resourceOwnerId_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setResourceOwnerId(const std::string &resourceOwnerId) {
+  resourceOwnerId_ = resourceOwnerId;
+  setParameter(std::string("ResourceOwnerId"), resourceOwnerId);
+}
+
+std::string GetDigitalWatermarkExtractResultRequest::getExtractType() const {
+  return extractType_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setExtractType(const std::string &extractType) {
+  extractType_ = extractType;
+  setParameter(std::string("ExtractType"), extractType);
+}
+
+std::string GetDigitalWatermarkExtractResultRequest::getAccessKeyId() const {
+  return accessKeyId_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setAccessKeyId(const std::string &accessKeyId) {
+  accessKeyId_ = accessKeyId;
+  setParameter(std::string("AccessKeyId"), accessKeyId);
+}
+
+std::string GetDigitalWatermarkExtractResultRequest::getJobId() const {
+  return jobId_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setJobId(const std::string &jobId) {
+  jobId_ = jobId;
+  setParameter(std::string("JobId"), jobId);
+}
+
+std::string GetDigitalWatermarkExtractResultRequest::getResourceOwnerAccount() const {
+  return resourceOwnerAccount_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
+  resourceOwnerAccount_ = resourceOwnerAccount;
+  setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
+}
+
+std::string GetDigitalWatermarkExtractResultRequest::getOwnerAccount() const {
+  return ownerAccount_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setOwnerAccount(const std::string &ownerAccount) {
+  ownerAccount_ = ownerAccount;
+  setParameter(std::string("OwnerAccount"), ownerAccount);
+}
+
+std::string GetDigitalWatermarkExtractResultRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setOwnerId(const std::string &ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), ownerId);
+}
+
+std::string GetDigitalWatermarkExtractResultRequest::getMediaId() const {
+  return mediaId_;
+}
+
+void GetDigitalWatermarkExtractResultRequest::setMediaId(const std::string &mediaId) {
+  mediaId_ = mediaId;
+  setParameter(std::string("MediaId"), mediaId);
+}
+

+ 67 - 0
vod/src/model/GetDigitalWatermarkExtractResultResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/vod/model/GetDigitalWatermarkExtractResultResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+GetDigitalWatermarkExtractResultResult::GetDigitalWatermarkExtractResultResult() :
+	ServiceResult()
+{}
+
+GetDigitalWatermarkExtractResultResult::GetDigitalWatermarkExtractResultResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetDigitalWatermarkExtractResultResult::~GetDigitalWatermarkExtractResultResult()
+{}
+
+void GetDigitalWatermarkExtractResultResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAiExtractResultListNode = value["AiExtractResultList"]["AiExtractResult"];
+	for (auto valueAiExtractResultListAiExtractResult : allAiExtractResultListNode)
+	{
+		AiExtractResult aiExtractResultListObject;
+		if(!valueAiExtractResultListAiExtractResult["JobId"].isNull())
+			aiExtractResultListObject.jobId = valueAiExtractResultListAiExtractResult["JobId"].asString();
+		if(!valueAiExtractResultListAiExtractResult["CreateTime"].isNull())
+			aiExtractResultListObject.createTime = valueAiExtractResultListAiExtractResult["CreateTime"].asString();
+		if(!valueAiExtractResultListAiExtractResult["ModifyTime"].isNull())
+			aiExtractResultListObject.modifyTime = valueAiExtractResultListAiExtractResult["ModifyTime"].asString();
+		if(!valueAiExtractResultListAiExtractResult["Status"].isNull())
+			aiExtractResultListObject.status = valueAiExtractResultListAiExtractResult["Status"].asString();
+		if(!valueAiExtractResultListAiExtractResult["ErrorMessage"].isNull())
+			aiExtractResultListObject.errorMessage = valueAiExtractResultListAiExtractResult["ErrorMessage"].asString();
+		if(!valueAiExtractResultListAiExtractResult["WaterMarkText"].isNull())
+			aiExtractResultListObject.waterMarkText = valueAiExtractResultListAiExtractResult["WaterMarkText"].asString();
+		aiExtractResultList_.push_back(aiExtractResultListObject);
+	}
+
+}
+
+std::vector<GetDigitalWatermarkExtractResultResult::AiExtractResult> GetDigitalWatermarkExtractResultResult::getAiExtractResultList()const
+{
+	return aiExtractResultList_;
+}
+

+ 18 - 0
vod/src/model/GetPlayInfoRequest.cc

@@ -43,6 +43,15 @@ void GetPlayInfoRequest::setChannel(const std::string &channel) {
   setParameter(std::string("Channel"), channel);
   setParameter(std::string("Channel"), channel);
 }
 }
 
 
+std::string GetPlayInfoRequest::getDigitalWatermarkType() const {
+  return digitalWatermarkType_;
+}
+
+void GetPlayInfoRequest::setDigitalWatermarkType(const std::string &digitalWatermarkType) {
+  digitalWatermarkType_ = digitalWatermarkType;
+  setParameter(std::string("DigitalWatermarkType"), digitalWatermarkType);
+}
+
 std::string GetPlayInfoRequest::getPlayerVersion() const {
 std::string GetPlayInfoRequest::getPlayerVersion() const {
   return playerVersion_;
   return playerVersion_;
 }
 }
@@ -61,6 +70,15 @@ void GetPlayInfoRequest::setRand(const std::string &rand) {
   setParameter(std::string("Rand"), rand);
   setParameter(std::string("Rand"), rand);
 }
 }
 
 
+std::string GetPlayInfoRequest::getTrace() const {
+  return trace_;
+}
+
+void GetPlayInfoRequest::setTrace(const std::string &trace) {
+  trace_ = trace;
+  setParameter(std::string("Trace"), trace);
+}
+
 std::string GetPlayInfoRequest::getReAuthInfo() const {
 std::string GetPlayInfoRequest::getReAuthInfo() const {
   return reAuthInfo_;
   return reAuthInfo_;
 }
 }

+ 4 - 0
vod/src/model/GetPlayInfoResult.cc

@@ -93,6 +93,10 @@ void GetPlayInfoResult::parse(const std::string &payload)
 			playInfoListObject.hDRType = valuePlayInfoListPlayInfo["HDRType"].asString();
 			playInfoListObject.hDRType = valuePlayInfoListPlayInfo["HDRType"].asString();
 		if(!valuePlayInfoListPlayInfo["BitDepth"].isNull())
 		if(!valuePlayInfoListPlayInfo["BitDepth"].isNull())
 			playInfoListObject.bitDepth = std::stoi(valuePlayInfoListPlayInfo["BitDepth"].asString());
 			playInfoListObject.bitDepth = std::stoi(valuePlayInfoListPlayInfo["BitDepth"].asString());
+		if(!valuePlayInfoListPlayInfo["JobType"].isNull())
+			playInfoListObject.jobType = std::stoi(valuePlayInfoListPlayInfo["JobType"].asString());
+		if(!valuePlayInfoListPlayInfo["JobExt"].isNull())
+			playInfoListObject.jobExt = valuePlayInfoListPlayInfo["JobExt"].asString();
 		playInfoList_.push_back(playInfoListObject);
 		playInfoList_.push_back(playInfoListObject);
 	}
 	}
 	auto videoBaseNode = value["VideoBase"];
 	auto videoBaseNode = value["VideoBase"];

+ 4 - 0
vod/src/model/GetTranscodeTemplateGroupResult.cc

@@ -96,6 +96,10 @@ void GetTranscodeTemplateGroupResult::parse(const std::string &payload)
 			transcodeTemplateObject.muxConfig = transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["MuxConfig"].asString();
 			transcodeTemplateObject.muxConfig = transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["MuxConfig"].asString();
 		if(!transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["TailSlateList"].isNull())
 		if(!transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["TailSlateList"].isNull())
 			transcodeTemplateObject.tailSlateList = transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["TailSlateList"].asString();
 			transcodeTemplateObject.tailSlateList = transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["TailSlateList"].asString();
+		if(!transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["TraceMark"].isNull())
+			transcodeTemplateObject.traceMark = transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["TraceMark"].asString();
+		if(!transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["CopyrightMark"].isNull())
+			transcodeTemplateObject.copyrightMark = transcodeTemplateGroupNodeTranscodeTemplateListTranscodeTemplate["CopyrightMark"].asString();
 		auto allWatermarkIds = value["WatermarkIds"]["WatermarkId"];
 		auto allWatermarkIds = value["WatermarkIds"]["WatermarkId"];
 		for (auto value : allWatermarkIds)
 		for (auto value : allWatermarkIds)
 			transcodeTemplateObject.watermarkIds.push_back(value.asString());
 			transcodeTemplateObject.watermarkIds.push_back(value.asString());

+ 90 - 0
vod/src/model/SubmitDigitalWatermarkExtractJobRequest.cc

@@ -0,0 +1,90 @@
+/*
+ * 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/vod/model/SubmitDigitalWatermarkExtractJobRequest.h>
+
+using AlibabaCloud::Vod::Model::SubmitDigitalWatermarkExtractJobRequest;
+
+SubmitDigitalWatermarkExtractJobRequest::SubmitDigitalWatermarkExtractJobRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "SubmitDigitalWatermarkExtractJob") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+SubmitDigitalWatermarkExtractJobRequest::~SubmitDigitalWatermarkExtractJobRequest() {}
+
+std::string SubmitDigitalWatermarkExtractJobRequest::getResourceOwnerId() const {
+  return resourceOwnerId_;
+}
+
+void SubmitDigitalWatermarkExtractJobRequest::setResourceOwnerId(const std::string &resourceOwnerId) {
+  resourceOwnerId_ = resourceOwnerId;
+  setParameter(std::string("ResourceOwnerId"), resourceOwnerId);
+}
+
+std::string SubmitDigitalWatermarkExtractJobRequest::getExtractType() const {
+  return extractType_;
+}
+
+void SubmitDigitalWatermarkExtractJobRequest::setExtractType(const std::string &extractType) {
+  extractType_ = extractType;
+  setParameter(std::string("ExtractType"), extractType);
+}
+
+std::string SubmitDigitalWatermarkExtractJobRequest::getAccessKeyId() const {
+  return accessKeyId_;
+}
+
+void SubmitDigitalWatermarkExtractJobRequest::setAccessKeyId(const std::string &accessKeyId) {
+  accessKeyId_ = accessKeyId;
+  setParameter(std::string("AccessKeyId"), accessKeyId);
+}
+
+std::string SubmitDigitalWatermarkExtractJobRequest::getResourceOwnerAccount() const {
+  return resourceOwnerAccount_;
+}
+
+void SubmitDigitalWatermarkExtractJobRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
+  resourceOwnerAccount_ = resourceOwnerAccount;
+  setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
+}
+
+std::string SubmitDigitalWatermarkExtractJobRequest::getOwnerAccount() const {
+  return ownerAccount_;
+}
+
+void SubmitDigitalWatermarkExtractJobRequest::setOwnerAccount(const std::string &ownerAccount) {
+  ownerAccount_ = ownerAccount;
+  setParameter(std::string("OwnerAccount"), ownerAccount);
+}
+
+std::string SubmitDigitalWatermarkExtractJobRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void SubmitDigitalWatermarkExtractJobRequest::setOwnerId(const std::string &ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), ownerId);
+}
+
+std::string SubmitDigitalWatermarkExtractJobRequest::getMediaId() const {
+  return mediaId_;
+}
+
+void SubmitDigitalWatermarkExtractJobRequest::setMediaId(const std::string &mediaId) {
+  mediaId_ = mediaId;
+  setParameter(std::string("MediaId"), mediaId);
+}
+

+ 51 - 0
vod/src/model/SubmitDigitalWatermarkExtractJobResult.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/vod/model/SubmitDigitalWatermarkExtractJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+SubmitDigitalWatermarkExtractJobResult::SubmitDigitalWatermarkExtractJobResult() :
+	ServiceResult()
+{}
+
+SubmitDigitalWatermarkExtractJobResult::SubmitDigitalWatermarkExtractJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+SubmitDigitalWatermarkExtractJobResult::~SubmitDigitalWatermarkExtractJobResult()
+{}
+
+void SubmitDigitalWatermarkExtractJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["JobId"].isNull())
+		jobId_ = value["JobId"].asString();
+
+}
+
+std::string SubmitDigitalWatermarkExtractJobResult::getJobId()const
+{
+	return jobId_;
+}
+

+ 9 - 0
vod/src/model/UploadMediaByURLRequest.cc

@@ -34,6 +34,15 @@ void UploadMediaByURLRequest::setMessageCallback(const std::string &messageCallb
   setParameter(std::string("MessageCallback"), messageCallback);
   setParameter(std::string("MessageCallback"), messageCallback);
 }
 }
 
 
+std::string UploadMediaByURLRequest::getSessionId() const {
+  return sessionId_;
+}
+
+void UploadMediaByURLRequest::setSessionId(const std::string &sessionId) {
+  sessionId_ = sessionId;
+  setParameter(std::string("SessionId"), sessionId);
+}
+
 std::string UploadMediaByURLRequest::getStorageLocation() const {
 std::string UploadMediaByURLRequest::getStorageLocation() const {
   return storageLocation_;
   return storageLocation_;
 }
 }