Browse Source

由杭辰发起的MTS SDK自动发布, BUILD_ID=296, 版本号:0.6.4

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 8 years ago
parent
commit
7d0855290b
100 changed files with 4148 additions and 3662 deletions
  1. 3 0
      ChangeLog.txt
  2. 11 9
      services/mts/activate_media_workflow.go
  3. 15 13
      services/mts/add_asr_pipeline.go
  4. 10 8
      services/mts/add_category.go
  5. 15 13
      services/mts/add_censor_pipeline.go
  6. 17 15
      services/mts/add_cover_pipeline.go
  7. 32 34
      services/mts/add_media.go
  8. 6 4
      services/mts/add_media_tag.go
  9. 11 9
      services/mts/add_media_workflow.go
  10. 19 17
      services/mts/add_pipeline.go
  11. 15 13
      services/mts/add_porn_pipeline.go
  12. 66 64
      services/mts/add_template.go
  13. 15 13
      services/mts/add_terrorism_pipeline.go
  14. 15 13
      services/mts/add_video_summary_pipeline.go
  15. 24 22
      services/mts/add_water_mark_template.go
  16. 5 3
      services/mts/bind_input_bucket.go
  17. 5 3
      services/mts/bind_output_bucket.go
  18. 6 4
      services/mts/cancel_job.go
  19. 5 3
      services/mts/category_tree.go
  20. 11 9
      services/mts/deactivate_media_workflow.go
  21. 7 5
      services/mts/decrypt_key.go
  22. 5 3
      services/mts/delete_category.go
  23. 5 3
      services/mts/delete_media.go
  24. 6 4
      services/mts/delete_media_tag.go
  25. 11 9
      services/mts/delete_media_workflow.go
  26. 6 4
      services/mts/delete_pipeline.go
  27. 6 4
      services/mts/delete_template.go
  28. 6 4
      services/mts/delete_water_mark_template.go
  29. 10 10
      services/mts/list_all_category.go
  30. 8 8
      services/mts/list_all_media_bucket.go
  31. 20 20
      services/mts/list_asr_pipeline.go
  32. 20 20
      services/mts/list_censor_pipeline.go
  33. 22 22
      services/mts/list_cover_pipeline.go
  34. 251 269
      services/mts/list_job.go
  35. 30 34
      services/mts/list_media.go
  36. 40 42
      services/mts/list_media_workflow_executions.go
  37. 20 20
      services/mts/list_porn_pipeline.go
  38. 20 20
      services/mts/list_terrorism_pipeline.go
  39. 20 20
      services/mts/list_video_summary_pipeline.go
  40. 26 28
      services/mts/play_info.go
  41. 11 11
      services/mts/player_auth.go
  42. 92 96
      services/mts/query_analysis_job_list.go
  43. 27 31
      services/mts/query_annotation_job_list.go
  44. 32 36
      services/mts/query_asr_job_list.go
  45. 15 17
      services/mts/query_asr_pipeline_list.go
  46. 6 4
      services/mts/query_auth_config.go
  47. 62 72
      services/mts/query_censor_job_list.go
  48. 15 17
      services/mts/query_censor_pipeline_list.go
  49. 32 36
      services/mts/query_cover_job_list.go
  50. 16 18
      services/mts/query_cover_pipeline_list.go
  51. 294 320
      services/mts/query_editing_job_list.go
  52. 30 36
      services/mts/query_facerecog_job_list.go
  53. 125 0
      services/mts/query_fp_shot_job_list.go
  54. 249 271
      services/mts/query_job_list.go
  55. 58 64
      services/mts/query_media_detail_job_list.go
  56. 98 106
      services/mts/query_media_info_job_list.go
  57. 124 140
      services/mts/query_media_list.go
  58. 124 140
      services/mts/query_media_list_by_u_r_l.go
  59. 36 40
      services/mts/query_media_workflow_execution_list.go
  60. 13 15
      services/mts/query_media_workflow_list.go
  61. 17 19
      services/mts/query_pipeline_list.go
  62. 45 51
      services/mts/query_porn_job_list.go
  63. 15 17
      services/mts/query_porn_pipeline_list.go
  64. 58 60
      services/mts/query_snapshot_job_list.go
  65. 35 43
      services/mts/query_tag_job_list.go
  66. 68 70
      services/mts/query_template_list.go
  67. 45 51
      services/mts/query_terrorism_job_list.go
  68. 15 17
      services/mts/query_terrorism_pipeline_list.go
  69. 116 0
      services/mts/query_video_split_job_list.go
  70. 25 29
      services/mts/query_video_summary_job_list.go
  71. 15 17
      services/mts/query_video_summary_pipeline_list.go
  72. 26 28
      services/mts/query_water_mark_template_list.go
  73. 7 9
      services/mts/refresh_cdn_domain_configs_cache.go
  74. 118 0
      services/mts/register_media_detail_person.go
  75. 8 6
      services/mts/register_media_detail_scenario.go
  76. 7 5
      services/mts/report_annotation_job_result.go
  77. 8 6
      services/mts/report_censor_job_result.go
  78. 6 4
      services/mts/report_cover_job_result.go
  79. 8 6
      services/mts/report_facerecog_job_result.go
  80. 97 0
      services/mts/report_fp_shot_job_result.go
  81. 8 6
      services/mts/report_media_detail_job_result.go
  82. 8 6
      services/mts/report_porn_job_result.go
  83. 7 5
      services/mts/report_tag_job_result.go
  84. 8 6
      services/mts/report_terrorism_job_result.go
  85. 97 0
      services/mts/report_video_split_job_result.go
  86. 38 42
      services/mts/search_media.go
  87. 17 17
      services/mts/search_media_workflow.go
  88. 22 22
      services/mts/search_pipeline.go
  89. 73 73
      services/mts/search_template.go
  90. 31 31
      services/mts/search_water_mark_template.go
  91. 7 5
      services/mts/set_auth_config.go
  92. 87 87
      services/mts/submit_analysis_job.go
  93. 8 6
      services/mts/submit_annotation_job.go
  94. 8 6
      services/mts/submit_asr_job.go
  95. 8 6
      services/mts/submit_censor_job.go
  96. 8 6
      services/mts/submit_cover_job.go
  97. 302 326
      services/mts/submit_editing_jobs.go
  98. 8 6
      services/mts/submit_facerecog_job.go
  99. 98 0
      services/mts/submit_fp_shot_job.go
  100. 262 280
      services/mts/submit_jobs.go

+ 3 - 0
ChangeLog.txt

@@ -1,3 +1,6 @@
+2017-12-26 Version: 0.6.4
+1, Add video AI service interface.
+
 2017-12-20 Version: 0.6.3
 1, support tile dataset
 2, use dimension value type to replace isDrillDown

+ 11 - 9
services/mts/activate_media_workflow.go

@@ -64,23 +64,25 @@ func (client *Client) ActivateMediaWorkflowWithCallback(request *ActivateMediaWo
 
 type ActivateMediaWorkflowRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
+	Action               string `position:"Query" name:"Action"`
 	MediaWorkflowId      string `position:"Query" name:"MediaWorkflowId"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ActivateMediaWorkflowResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
+	RequestId     string `json:"RequestId"`
 	MediaWorkflow struct {
-		MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-		Name            string `json:"Name" xml:"Name"`
-		Topology        string `json:"Topology" xml:"Topology"`
-		State           string `json:"State" xml:"State"`
-		CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-	} `json:"MediaWorkflow" xml:"MediaWorkflow"`
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		Topology        string `json:"Topology"`
+		State           string `json:"State"`
+		CreationTime    string `json:"CreationTime"`
+	} `json:"MediaWorkflow"`
 }
 
 func CreateActivateMediaWorkflowRequest() (request *ActivateMediaWorkflowRequest) {

+ 15 - 13
services/mts/add_asr_pipeline.go

@@ -64,28 +64,30 @@ func (client *Client) AddAsrPipelineWithCallback(request *AddAsrPipelineRequest,
 
 type AddAsrPipelineRequest struct {
 	*requests.RpcRequest
-	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Priority             string `position:"Query" name:"Priority"`
-	Name                 string `position:"Query" name:"Name"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	Priority             string `position:"Query" name:"Priority"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddAsrPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Pipeline  struct {
-		Id           string `json:"Id" xml:"Id"`
-		Name         string `json:"Name" xml:"Name"`
-		Priority     int    `json:"Priority" xml:"Priority"`
-		State        string `json:"State" xml:"State"`
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		Priority     int    `json:"Priority"`
+		State        string `json:"State"`
 		NotifyConfig struct {
-			Topic string `json:"Topic" xml:"Topic"`
-			Queue string `json:"Queue" xml:"Queue"`
-		} `json:"NotifyConfig" xml:"NotifyConfig"`
-	} `json:"Pipeline" xml:"Pipeline"`
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"Pipeline"`
 }
 
 func CreateAddAsrPipelineRequest() (request *AddAsrPipelineRequest) {

+ 10 - 8
services/mts/add_category.go

@@ -64,23 +64,25 @@ func (client *Client) AddCategoryWithCallback(request *AddCategoryRequest, callb
 
 type AddCategoryRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	ParentId             string `position:"Query" name:"ParentId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	ParentId             string `position:"Query" name:"ParentId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 	CateName             string `position:"Query" name:"CateName"`
 }
 
 type AddCategoryResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Category  struct {
-		CateId   string `json:"CateId" xml:"CateId"`
-		CateName string `json:"CateName" xml:"CateName"`
-		ParentId string `json:"ParentId" xml:"ParentId"`
-		Level    string `json:"Level" xml:"Level"`
-	} `json:"Category" xml:"Category"`
+		CateId   string `json:"CateId"`
+		CateName string `json:"CateName"`
+		ParentId string `json:"ParentId"`
+		Level    string `json:"Level"`
+	} `json:"Category"`
 }
 
 func CreateAddCategoryRequest() (request *AddCategoryRequest) {

+ 15 - 13
services/mts/add_censor_pipeline.go

@@ -64,28 +64,30 @@ func (client *Client) AddCensorPipelineWithCallback(request *AddCensorPipelineRe
 
 type AddCensorPipelineRequest struct {
 	*requests.RpcRequest
-	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Priority             string `position:"Query" name:"Priority"`
-	Name                 string `position:"Query" name:"Name"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	Priority             string `position:"Query" name:"Priority"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddCensorPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Pipeline  struct {
-		Id           string `json:"Id" xml:"Id"`
-		Name         string `json:"Name" xml:"Name"`
-		Priority     int    `json:"Priority" xml:"Priority"`
-		State        string `json:"State" xml:"State"`
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		Priority     int    `json:"Priority"`
+		State        string `json:"State"`
 		NotifyConfig struct {
-			Topic string `json:"Topic" xml:"Topic"`
-			Queue string `json:"Queue" xml:"Queue"`
-		} `json:"NotifyConfig" xml:"NotifyConfig"`
-	} `json:"Pipeline" xml:"Pipeline"`
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"Pipeline"`
 }
 
 func CreateAddCensorPipelineRequest() (request *AddCensorPipelineRequest) {

+ 17 - 15
services/mts/add_cover_pipeline.go

@@ -64,30 +64,32 @@ func (client *Client) AddCoverPipelineWithCallback(request *AddCoverPipelineRequ
 
 type AddCoverPipelineRequest struct {
 	*requests.RpcRequest
-	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Priority             string `position:"Query" name:"Priority"`
-	Name                 string `position:"Query" name:"Name"`
-	Role                 string `position:"Query" name:"Role"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	Role                 string `position:"Query" name:"Role"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	Priority             string `position:"Query" name:"Priority"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddCoverPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Pipeline  struct {
-		Id           string `json:"Id" xml:"Id"`
-		Name         string `json:"Name" xml:"Name"`
-		Priority     string `json:"Priority" xml:"Priority"`
-		State        string `json:"State" xml:"State"`
-		Role         string `json:"Role" xml:"Role"`
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		Priority     string `json:"Priority"`
+		State        string `json:"State"`
+		Role         string `json:"Role"`
 		NotifyConfig struct {
-			Topic string `json:"Topic" xml:"Topic"`
-			Queue string `json:"Queue" xml:"Queue"`
-		} `json:"NotifyConfig" xml:"NotifyConfig"`
-	} `json:"Pipeline" xml:"Pipeline"`
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"Pipeline"`
 }
 
 func CreateAddCoverPipelineRequest() (request *AddCoverPipelineRequest) {

+ 32 - 34
services/mts/add_media.go

@@ -64,49 +64,47 @@ func (client *Client) AddMediaWithCallback(request *AddMediaRequest, callback fu
 
 type AddMediaRequest struct {
 	*requests.RpcRequest
-	Tags                  string `position:"Query" name:"Tags"`
-	CateId                string `position:"Query" name:"CateId"`
-	FileURL               string `position:"Query" name:"FileURL"`
-	OwnerId               string `position:"Query" name:"OwnerId"`
-	Title                 string `position:"Query" name:"Title"`
+	ResourceOwnerId       string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount  string `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount          string `position:"Query" name:"OwnerAccount"`
 	Description           string `position:"Query" name:"Description"`
-	MediaWorkflowUserData string `position:"Query" name:"MediaWorkflowUserData"`
+	OwnerId               string `position:"Query" name:"OwnerId"`
+	Title                 string `position:"Query" name:"Title"`
+	AccessKeyId           string `position:"Query" name:"AccessKeyId"`
+	Tags                  string `position:"Query" name:"Tags"`
 	CoverURL              string `position:"Query" name:"CoverURL"`
-	ResourceOwnerId       string `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount          string `position:"Query" name:"OwnerAccount"`
+	CateId                string `position:"Query" name:"CateId"`
+	Action                string `position:"Query" name:"Action"`
+	FileURL               string `position:"Query" name:"FileURL"`
 	MediaWorkflowId       string `position:"Query" name:"MediaWorkflowId"`
+	MediaWorkflowUserData string `position:"Query" name:"MediaWorkflowUserData"`
 }
 
 type AddMediaResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Media     struct {
-		MediaId      string `json:"MediaId" xml:"MediaId"`
-		Title        string `json:"Title" xml:"Title"`
-		Description  string `json:"Description" xml:"Description"`
-		CoverURL     string `json:"CoverURL" xml:"CoverURL"`
-		CateId       int64  `json:"CateId" xml:"CateId"`
-		Duration     string `json:"Duration" xml:"Duration"`
-		Format       string `json:"Format" xml:"Format"`
-		Size         string `json:"Size" xml:"Size"`
-		Bitrate      string `json:"Bitrate" xml:"Bitrate"`
-		Width        string `json:"Width" xml:"Width"`
-		Height       string `json:"Height" xml:"Height"`
-		Fps          string `json:"Fps" xml:"Fps"`
-		PublishState string `json:"PublishState" xml:"PublishState"`
-		CreationTime string `json:"CreationTime" xml:"CreationTime"`
-		Tags         struct {
-			Tag []string `json:"Tag" xml:"Tag"`
-		} `json:"Tags" xml:"Tags"`
-		RunIdList struct {
-			RunId []string `json:"RunId" xml:"RunId"`
-		} `json:"RunIdList" xml:"RunIdList"`
-		File struct {
-			URL   string `json:"URL" xml:"URL"`
-			State string `json:"State" xml:"State"`
-		} `json:"File" xml:"File"`
-	} `json:"Media" xml:"Media"`
+		MediaId      string   `json:"MediaId"`
+		Title        string   `json:"Title"`
+		Description  string   `json:"Description"`
+		CoverURL     string   `json:"CoverURL"`
+		CateId       int64    `json:"CateId"`
+		Duration     string   `json:"Duration"`
+		Format       string   `json:"Format"`
+		Size         string   `json:"Size"`
+		Bitrate      string   `json:"Bitrate"`
+		Width        string   `json:"Width"`
+		Height       string   `json:"Height"`
+		Fps          string   `json:"Fps"`
+		PublishState string   `json:"PublishState"`
+		CreationTime string   `json:"CreationTime"`
+		Tags         []string `json:"Tags"`
+		RunIdList    []string `json:"RunIdList"`
+		File         struct {
+			URL   string `json:"URL"`
+			State string `json:"State"`
+		} `json:"File"`
+	} `json:"Media"`
 }
 
 func CreateAddMediaRequest() (request *AddMediaRequest) {

+ 6 - 4
services/mts/add_media_tag.go

@@ -64,17 +64,19 @@ func (client *Client) AddMediaTagWithCallback(request *AddMediaTagRequest, callb
 
 type AddMediaTagRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Tag                  string `position:"Query" name:"Tag"`
-	MediaId              string `position:"Query" name:"MediaId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Tag                  string `position:"Query" name:"Tag"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	MediaId              string `position:"Query" name:"MediaId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddMediaTagResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 }
 
 func CreateAddMediaTagRequest() (request *AddMediaTagRequest) {

+ 11 - 9
services/mts/add_media_workflow.go

@@ -64,24 +64,26 @@ func (client *Client) AddMediaWorkflowWithCallback(request *AddMediaWorkflowRequ
 
 type AddMediaWorkflowRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Name                 string `position:"Query" name:"Name"`
 	Topology             string `position:"Query" name:"Topology"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddMediaWorkflowResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
+	RequestId     string `json:"RequestId"`
 	MediaWorkflow struct {
-		MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-		Name            string `json:"Name" xml:"Name"`
-		Topology        string `json:"Topology" xml:"Topology"`
-		State           string `json:"State" xml:"State"`
-		CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-	} `json:"MediaWorkflow" xml:"MediaWorkflow"`
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		Topology        string `json:"Topology"`
+		State           string `json:"State"`
+		CreationTime    string `json:"CreationTime"`
+	} `json:"MediaWorkflow"`
 }
 
 func CreateAddMediaWorkflowRequest() (request *AddMediaWorkflowRequest) {

+ 19 - 17
services/mts/add_pipeline.go

@@ -64,32 +64,34 @@ func (client *Client) AddPipelineWithCallback(request *AddPipelineRequest, callb
 
 type AddPipelineRequest struct {
 	*requests.RpcRequest
-	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Speed                string `position:"Query" name:"Speed"`
-	Name                 string `position:"Query" name:"Name"`
-	Role                 string `position:"Query" name:"Role"`
-	SpeedLevel           string `position:"Query" name:"SpeedLevel"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	Role                 string `position:"Query" name:"Role"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	SpeedLevel           string `position:"Query" name:"SpeedLevel"`
+	Speed                string `position:"Query" name:"Speed"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Pipeline  struct {
-		Id           string `json:"Id" xml:"Id"`
-		Name         string `json:"Name" xml:"Name"`
-		State        string `json:"State" xml:"State"`
-		Speed        string `json:"Speed" xml:"Speed"`
-		SpeedLevel   int64  `json:"SpeedLevel" xml:"SpeedLevel"`
-		Role         string `json:"Role" xml:"Role"`
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Speed        string `json:"Speed"`
+		SpeedLevel   int64  `json:"SpeedLevel"`
+		Role         string `json:"Role"`
 		NotifyConfig struct {
-			Topic     string `json:"Topic" xml:"Topic"`
-			QueueName string `json:"QueueName" xml:"QueueName"`
-		} `json:"NotifyConfig" xml:"NotifyConfig"`
-	} `json:"Pipeline" xml:"Pipeline"`
+			Topic     string `json:"Topic"`
+			QueueName string `json:"QueueName"`
+		} `json:"NotifyConfig"`
+	} `json:"Pipeline"`
 }
 
 func CreateAddPipelineRequest() (request *AddPipelineRequest) {

+ 15 - 13
services/mts/add_porn_pipeline.go

@@ -64,28 +64,30 @@ func (client *Client) AddPornPipelineWithCallback(request *AddPornPipelineReques
 
 type AddPornPipelineRequest struct {
 	*requests.RpcRequest
-	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Priority             string `position:"Query" name:"Priority"`
-	Name                 string `position:"Query" name:"Name"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	Priority             string `position:"Query" name:"Priority"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddPornPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Pipeline  struct {
-		Id           string `json:"Id" xml:"Id"`
-		Name         string `json:"Name" xml:"Name"`
-		Priority     int    `json:"Priority" xml:"Priority"`
-		State        string `json:"State" xml:"State"`
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		Priority     int    `json:"Priority"`
+		State        string `json:"State"`
 		NotifyConfig struct {
-			Topic string `json:"Topic" xml:"Topic"`
-			Queue string `json:"Queue" xml:"Queue"`
-		} `json:"NotifyConfig" xml:"NotifyConfig"`
-	} `json:"Pipeline" xml:"Pipeline"`
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"Pipeline"`
 }
 
 func CreateAddPornPipelineRequest() (request *AddPornPipelineRequest) {

+ 66 - 64
services/mts/add_template.go

@@ -64,88 +64,90 @@ func (client *Client) AddTemplateWithCallback(request *AddTemplateRequest, callb
 
 type AddTemplateRequest struct {
 	*requests.RpcRequest
-	Audio                string `position:"Query" name:"Audio"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	MuxConfig            string `position:"Query" name:"MuxConfig"`
 	Container            string `position:"Query" name:"Container"`
-	Name                 string `position:"Query" name:"Name"`
-	TransConfig          string `position:"Query" name:"TransConfig"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	TransConfig          string `position:"Query" name:"TransConfig"`
+	MuxConfig            string `position:"Query" name:"MuxConfig"`
 	Video                string `position:"Query" name:"Video"`
+	Audio                string `position:"Query" name:"Audio"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddTemplateResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Template  struct {
-		Id        string `json:"Id" xml:"Id"`
-		Name      string `json:"Name" xml:"Name"`
-		State     string `json:"State" xml:"State"`
+		Id        string `json:"Id"`
+		Name      string `json:"Name"`
+		State     string `json:"State"`
 		Container struct {
-			Format string `json:"Format" xml:"Format"`
-		} `json:"Container" xml:"Container"`
+			Format string `json:"Format"`
+		} `json:"Container"`
 		Video struct {
-			Codec      string `json:"Codec" xml:"Codec"`
-			Profile    string `json:"Profile" xml:"Profile"`
-			Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-			Crf        string `json:"Crf" xml:"Crf"`
-			Width      string `json:"Width" xml:"Width"`
-			Height     string `json:"Height" xml:"Height"`
-			Fps        string `json:"Fps" xml:"Fps"`
-			Gop        string `json:"Gop" xml:"Gop"`
-			Preset     string `json:"Preset" xml:"Preset"`
-			ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-			Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-			Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-			PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-			Degrain    string `json:"Degrain" xml:"Degrain"`
-			Qscale     string `json:"Qscale" xml:"Qscale"`
-			Remove     string `json:"Remove" xml:"Remove"`
-			Crop       string `json:"Crop" xml:"Crop"`
-			Pad        string `json:"Pad" xml:"Pad"`
-			MaxFps     string `json:"MaxFps" xml:"MaxFps"`
+			Codec      string `json:"Codec"`
+			Profile    string `json:"Profile"`
+			Bitrate    string `json:"Bitrate"`
+			Crf        string `json:"Crf"`
+			Width      string `json:"Width"`
+			Height     string `json:"Height"`
+			Fps        string `json:"Fps"`
+			Gop        string `json:"Gop"`
+			Preset     string `json:"Preset"`
+			ScanMode   string `json:"ScanMode"`
+			Bufsize    string `json:"Bufsize"`
+			Maxrate    string `json:"Maxrate"`
+			PixFmt     string `json:"PixFmt"`
+			Degrain    string `json:"Degrain"`
+			Qscale     string `json:"Qscale"`
+			Remove     string `json:"Remove"`
+			Crop       string `json:"Crop"`
+			Pad        string `json:"Pad"`
+			MaxFps     string `json:"MaxFps"`
 			BitrateBnd struct {
-				Max string `json:"Max" xml:"Max"`
-				Min string `json:"Min" xml:"Min"`
-			} `json:"BitrateBnd" xml:"BitrateBnd"`
-		} `json:"Video" xml:"Video"`
+				Max string `json:"Max"`
+				Min string `json:"Min"`
+			} `json:"BitrateBnd"`
+		} `json:"Video"`
 		Audio struct {
-			Codec      string `json:"Codec" xml:"Codec"`
-			Profile    string `json:"Profile" xml:"Profile"`
-			Samplerate string `json:"Samplerate" xml:"Samplerate"`
-			Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-			Channels   string `json:"Channels" xml:"Channels"`
-			Qscale     string `json:"Qscale" xml:"Qscale"`
-			Remove     string `json:"Remove" xml:"Remove"`
+			Codec      string `json:"Codec"`
+			Profile    string `json:"Profile"`
+			Samplerate string `json:"Samplerate"`
+			Bitrate    string `json:"Bitrate"`
+			Channels   string `json:"Channels"`
+			Qscale     string `json:"Qscale"`
+			Remove     string `json:"Remove"`
 			Volume     struct {
-				Level  string `json:"Level" xml:"Level"`
-				Method string `json:"Method" xml:"Method"`
-			} `json:"Volume" xml:"Volume"`
-		} `json:"Audio" xml:"Audio"`
+				Level  string `json:"Level"`
+				Method string `json:"Method"`
+			} `json:"Volume"`
+		} `json:"Audio"`
 		TransConfig struct {
-			TransMode               string `json:"TransMode" xml:"TransMode"`
-			IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-			IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-			IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-			IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-			AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-			IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-			IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-		} `json:"TransConfig" xml:"TransConfig"`
+			TransMode               string `json:"TransMode"`
+			IsCheckReso             string `json:"IsCheckReso"`
+			IsCheckResoFail         string `json:"IsCheckResoFail"`
+			IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+			IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+			AdjDarMethod            string `json:"AdjDarMethod"`
+			IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+			IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+		} `json:"TransConfig"`
 		MuxConfig struct {
 			Segment struct {
-				Duration string `json:"Duration" xml:"Duration"`
-			} `json:"Segment" xml:"Segment"`
+				Duration string `json:"Duration"`
+			} `json:"Segment"`
 			Gif struct {
-				Loop            string `json:"Loop" xml:"Loop"`
-				FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-				IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-				DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-			} `json:"Gif" xml:"Gif"`
-		} `json:"MuxConfig" xml:"MuxConfig"`
-	} `json:"Template" xml:"Template"`
+				Loop            string `json:"Loop"`
+				FinalDelay      string `json:"FinalDelay"`
+				IsCustomPalette string `json:"IsCustomPalette"`
+				DitherMode      string `json:"DitherMode"`
+			} `json:"Gif"`
+		} `json:"MuxConfig"`
+	} `json:"Template"`
 }
 
 func CreateAddTemplateRequest() (request *AddTemplateRequest) {

+ 15 - 13
services/mts/add_terrorism_pipeline.go

@@ -64,28 +64,30 @@ func (client *Client) AddTerrorismPipelineWithCallback(request *AddTerrorismPipe
 
 type AddTerrorismPipelineRequest struct {
 	*requests.RpcRequest
-	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Priority             string `position:"Query" name:"Priority"`
-	Name                 string `position:"Query" name:"Name"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	Priority             string `position:"Query" name:"Priority"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddTerrorismPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Pipeline  struct {
-		Id           string `json:"Id" xml:"Id"`
-		Name         string `json:"Name" xml:"Name"`
-		Priority     int    `json:"Priority" xml:"Priority"`
-		State        string `json:"State" xml:"State"`
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		Priority     int    `json:"Priority"`
+		State        string `json:"State"`
 		NotifyConfig struct {
-			Topic string `json:"Topic" xml:"Topic"`
-			Queue string `json:"Queue" xml:"Queue"`
-		} `json:"NotifyConfig" xml:"NotifyConfig"`
-	} `json:"Pipeline" xml:"Pipeline"`
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"Pipeline"`
 }
 
 func CreateAddTerrorismPipelineRequest() (request *AddTerrorismPipelineRequest) {

+ 15 - 13
services/mts/add_video_summary_pipeline.go

@@ -64,28 +64,30 @@ func (client *Client) AddVideoSummaryPipelineWithCallback(request *AddVideoSumma
 
 type AddVideoSummaryPipelineRequest struct {
 	*requests.RpcRequest
-	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Priority             string `position:"Query" name:"Priority"`
-	Name                 string `position:"Query" name:"Name"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
+	NotifyConfig         string `position:"Query" name:"NotifyConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	Priority             string `position:"Query" name:"Priority"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddVideoSummaryPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 	Pipeline  struct {
-		Id           string `json:"Id" xml:"Id"`
-		Name         string `json:"Name" xml:"Name"`
-		Priority     int    `json:"Priority" xml:"Priority"`
-		State        string `json:"State" xml:"State"`
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		Priority     int    `json:"Priority"`
+		State        string `json:"State"`
 		NotifyConfig struct {
-			Topic string `json:"Topic" xml:"Topic"`
-			Queue string `json:"Queue" xml:"Queue"`
-		} `json:"NotifyConfig" xml:"NotifyConfig"`
-	} `json:"Pipeline" xml:"Pipeline"`
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"Pipeline"`
 }
 
 func CreateAddVideoSummaryPipelineRequest() (request *AddVideoSummaryPipelineRequest) {

+ 24 - 22
services/mts/add_water_mark_template.go

@@ -64,38 +64,40 @@ func (client *Client) AddWaterMarkTemplateWithCallback(request *AddWaterMarkTemp
 
 type AddWaterMarkTemplateRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Name                 string `position:"Query" name:"Name"`
-	Config               string `position:"Query" name:"Config"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Name                 string `position:"Query" name:"Name"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	Config               string `position:"Query" name:"Config"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type AddWaterMarkTemplateResponse struct {
 	*responses.BaseResponse
-	RequestId         string `json:"RequestId" xml:"RequestId"`
+	RequestId         string `json:"RequestId"`
 	WaterMarkTemplate struct {
-		Id       string `json:"Id" xml:"Id"`
-		Name     string `json:"Name" xml:"Name"`
-		Width    string `json:"Width" xml:"Width"`
-		Height   string `json:"Height" xml:"Height"`
-		Dx       string `json:"Dx" xml:"Dx"`
-		Dy       string `json:"Dy" xml:"Dy"`
-		ReferPos string `json:"ReferPos" xml:"ReferPos"`
-		Type     string `json:"Type" xml:"Type"`
-		State    string `json:"State" xml:"State"`
+		Id       string `json:"Id"`
+		Name     string `json:"Name"`
+		Width    string `json:"Width"`
+		Height   string `json:"Height"`
+		Dx       string `json:"Dx"`
+		Dy       string `json:"Dy"`
+		ReferPos string `json:"ReferPos"`
+		Type     string `json:"Type"`
+		State    string `json:"State"`
 		Timeline struct {
-			Start    string `json:"Start" xml:"Start"`
-			Duration string `json:"Duration" xml:"Duration"`
-		} `json:"Timeline" xml:"Timeline"`
+			Start    string `json:"Start"`
+			Duration string `json:"Duration"`
+		} `json:"Timeline"`
 		RatioRefer struct {
-			Dx     string `json:"Dx" xml:"Dx"`
-			Dy     string `json:"Dy" xml:"Dy"`
-			Width  string `json:"Width" xml:"Width"`
-			Height string `json:"Height" xml:"Height"`
-		} `json:"RatioRefer" xml:"RatioRefer"`
-	} `json:"WaterMarkTemplate" xml:"WaterMarkTemplate"`
+			Dx     string `json:"Dx"`
+			Dy     string `json:"Dy"`
+			Width  string `json:"Width"`
+			Height string `json:"Height"`
+		} `json:"RatioRefer"`
+	} `json:"WaterMarkTemplate"`
 }
 
 func CreateAddWaterMarkTemplateRequest() (request *AddWaterMarkTemplateRequest) {

+ 5 - 3
services/mts/bind_input_bucket.go

@@ -64,17 +64,19 @@ func (client *Client) BindInputBucketWithCallback(request *BindInputBucketReques
 
 type BindInputBucketRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	Bucket               string `position:"Query" name:"Bucket"`
-	RoleArn              string `position:"Query" name:"RoleArn"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	RoleArn              string `position:"Query" name:"RoleArn"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type BindInputBucketResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 }
 
 func CreateBindInputBucketRequest() (request *BindInputBucketRequest) {

+ 5 - 3
services/mts/bind_output_bucket.go

@@ -64,17 +64,19 @@ func (client *Client) BindOutputBucketWithCallback(request *BindOutputBucketRequ
 
 type BindOutputBucketRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	Bucket               string `position:"Query" name:"Bucket"`
-	RoleArn              string `position:"Query" name:"RoleArn"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	RoleArn              string `position:"Query" name:"RoleArn"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type BindOutputBucketResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 }
 
 func CreateBindOutputBucketRequest() (request *BindOutputBucketRequest) {

+ 6 - 4
services/mts/cancel_job.go

@@ -64,17 +64,19 @@ func (client *Client) CancelJobWithCallback(request *CancelJobRequest, callback
 
 type CancelJobRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type CancelJobResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateCancelJobRequest() (request *CancelJobRequest) {

+ 5 - 3
services/mts/category_tree.go

@@ -64,16 +64,18 @@ func (client *Client) CategoryTreeWithCallback(request *CategoryTreeRequest, cal
 
 type CategoryTreeRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type CategoryTreeResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	CategoryTree string `json:"CategoryTree" xml:"CategoryTree"`
+	RequestId    string `json:"RequestId"`
+	CategoryTree string `json:"CategoryTree"`
 }
 
 func CreateCategoryTreeRequest() (request *CategoryTreeRequest) {

+ 11 - 9
services/mts/deactivate_media_workflow.go

@@ -64,23 +64,25 @@ func (client *Client) DeactivateMediaWorkflowWithCallback(request *DeactivateMed
 
 type DeactivateMediaWorkflowRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
+	Action               string `position:"Query" name:"Action"`
 	MediaWorkflowId      string `position:"Query" name:"MediaWorkflowId"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type DeactivateMediaWorkflowResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
+	RequestId     string `json:"RequestId"`
 	MediaWorkflow struct {
-		MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-		Name            string `json:"Name" xml:"Name"`
-		Topology        string `json:"Topology" xml:"Topology"`
-		State           string `json:"State" xml:"State"`
-		CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-	} `json:"MediaWorkflow" xml:"MediaWorkflow"`
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		Topology        string `json:"Topology"`
+		State           string `json:"State"`
+		CreationTime    string `json:"CreationTime"`
+	} `json:"MediaWorkflow"`
 }
 
 func CreateDeactivateMediaWorkflowRequest() (request *DeactivateMediaWorkflowRequest) {

+ 7 - 5
services/mts/decrypt_key.go

@@ -64,19 +64,21 @@ func (client *Client) DecryptKeyWithCallback(request *DecryptKeyRequest, callbac
 
 type DecryptKeyRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	CiphertextBlob       string `position:"Query" name:"CiphertextBlob"`
 	Rand                 string `position:"Query" name:"Rand"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	CiphertextBlob       string `position:"Query" name:"CiphertextBlob"`
 }
 
 type DecryptKeyResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	Plaintext string `json:"Plaintext" xml:"Plaintext"`
-	Rand      string `json:"Rand" xml:"Rand"`
+	RequestId string `json:"RequestId"`
+	Plaintext string `json:"Plaintext"`
+	Rand      string `json:"Rand"`
 }
 
 func CreateDecryptKeyRequest() (request *DecryptKeyRequest) {

+ 5 - 3
services/mts/delete_category.go

@@ -64,16 +64,18 @@ func (client *Client) DeleteCategoryWithCallback(request *DeleteCategoryRequest,
 
 type DeleteCategoryRequest struct {
 	*requests.RpcRequest
-	CateId               string `position:"Query" name:"CateId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	CateId               string `position:"Query" name:"CateId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type DeleteCategoryResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 }
 
 func CreateDeleteCategoryRequest() (request *DeleteCategoryRequest) {

+ 5 - 3
services/mts/delete_media.go

@@ -64,16 +64,18 @@ func (client *Client) DeleteMediaWithCallback(request *DeleteMediaRequest, callb
 
 type DeleteMediaRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
+	Action               string `position:"Query" name:"Action"`
 	MediaIds             string `position:"Query" name:"MediaIds"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type DeleteMediaResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 }
 
 func CreateDeleteMediaRequest() (request *DeleteMediaRequest) {

+ 6 - 4
services/mts/delete_media_tag.go

@@ -64,17 +64,19 @@ func (client *Client) DeleteMediaTagWithCallback(request *DeleteMediaTagRequest,
 
 type DeleteMediaTagRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Tag                  string `position:"Query" name:"Tag"`
-	MediaId              string `position:"Query" name:"MediaId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Tag                  string `position:"Query" name:"Tag"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	MediaId              string `position:"Query" name:"MediaId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type DeleteMediaTagResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
+	RequestId string `json:"RequestId"`
 }
 
 func CreateDeleteMediaTagRequest() (request *DeleteMediaTagRequest) {

+ 11 - 9
services/mts/delete_media_workflow.go

@@ -64,23 +64,25 @@ func (client *Client) DeleteMediaWorkflowWithCallback(request *DeleteMediaWorkfl
 
 type DeleteMediaWorkflowRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
+	Action               string `position:"Query" name:"Action"`
 	MediaWorkflowId      string `position:"Query" name:"MediaWorkflowId"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type DeleteMediaWorkflowResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
+	RequestId     string `json:"RequestId"`
 	MediaWorkflow struct {
-		MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-		Name            string `json:"Name" xml:"Name"`
-		Topology        string `json:"Topology" xml:"Topology"`
-		State           string `json:"State" xml:"State"`
-		CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-	} `json:"MediaWorkflow" xml:"MediaWorkflow"`
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		Topology        string `json:"Topology"`
+		State           string `json:"State"`
+		CreationTime    string `json:"CreationTime"`
+	} `json:"MediaWorkflow"`
 }
 
 func CreateDeleteMediaWorkflowRequest() (request *DeleteMediaWorkflowRequest) {

+ 6 - 4
services/mts/delete_pipeline.go

@@ -64,17 +64,19 @@ func (client *Client) DeletePipelineWithCallback(request *DeletePipelineRequest,
 
 type DeletePipelineRequest struct {
 	*requests.RpcRequest
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type DeletePipelineResponse struct {
 	*responses.BaseResponse
-	RequestId  string `json:"RequestId" xml:"RequestId"`
-	PipelineId string `json:"PipelineId" xml:"PipelineId"`
+	RequestId  string `json:"RequestId"`
+	PipelineId string `json:"PipelineId"`
 }
 
 func CreateDeletePipelineRequest() (request *DeletePipelineRequest) {

+ 6 - 4
services/mts/delete_template.go

@@ -64,17 +64,19 @@ func (client *Client) DeleteTemplateWithCallback(request *DeleteTemplateRequest,
 
 type DeleteTemplateRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	TemplateId           string `position:"Query" name:"TemplateId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	TemplateId           string `position:"Query" name:"TemplateId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type DeleteTemplateResponse struct {
 	*responses.BaseResponse
-	RequestId  string `json:"RequestId" xml:"RequestId"`
-	TemplateId string `json:"TemplateId" xml:"TemplateId"`
+	RequestId  string `json:"RequestId"`
+	TemplateId string `json:"TemplateId"`
 }
 
 func CreateDeleteTemplateRequest() (request *DeleteTemplateRequest) {

+ 6 - 4
services/mts/delete_water_mark_template.go

@@ -64,17 +64,19 @@ func (client *Client) DeleteWaterMarkTemplateWithCallback(request *DeleteWaterMa
 
 type DeleteWaterMarkTemplateRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	WaterMarkTemplateId  string `position:"Query" name:"WaterMarkTemplateId"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	WaterMarkTemplateId  string `position:"Query" name:"WaterMarkTemplateId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type DeleteWaterMarkTemplateResponse struct {
 	*responses.BaseResponse
-	RequestId           string `json:"RequestId" xml:"RequestId"`
-	WaterMarkTemplateId string `json:"WaterMarkTemplateId" xml:"WaterMarkTemplateId"`
+	RequestId           string `json:"RequestId"`
+	WaterMarkTemplateId string `json:"WaterMarkTemplateId"`
 }
 
 func CreateDeleteWaterMarkTemplateRequest() (request *DeleteWaterMarkTemplateRequest) {

+ 10 - 10
services/mts/list_all_category.go

@@ -64,23 +64,23 @@ func (client *Client) ListAllCategoryWithCallback(request *ListAllCategoryReques
 
 type ListAllCategoryRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListAllCategoryResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	CategoryList struct {
-		Category []struct {
-			CateId   string `json:"CateId" xml:"CateId"`
-			CateName string `json:"CateName" xml:"CateName"`
-			ParentId string `json:"ParentId" xml:"ParentId"`
-			Level    string `json:"Level" xml:"Level"`
-		} `json:"Category" xml:"Category"`
-	} `json:"CategoryList" xml:"CategoryList"`
+	RequestId    string `json:"RequestId"`
+	CategoryList []struct {
+		CateId   string `json:"CateId"`
+		CateName string `json:"CateName"`
+		ParentId string `json:"ParentId"`
+		Level    string `json:"Level"`
+	} `json:"CategoryList"`
 }
 
 func CreateListAllCategoryRequest() (request *ListAllCategoryRequest) {

+ 8 - 8
services/mts/list_all_media_bucket.go

@@ -64,21 +64,21 @@ func (client *Client) ListAllMediaBucketWithCallback(request *ListAllMediaBucket
 
 type ListAllMediaBucketRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListAllMediaBucketResponse struct {
 	*responses.BaseResponse
-	RequestId       string `json:"RequestId" xml:"RequestId"`
-	MediaBucketList struct {
-		MediaBucket []struct {
-			Bucket string `json:"Bucket" xml:"Bucket"`
-			Type   string `json:"Type" xml:"Type"`
-		} `json:"MediaBucket" xml:"MediaBucket"`
-	} `json:"MediaBucketList" xml:"MediaBucketList"`
+	RequestId       string `json:"RequestId"`
+	MediaBucketList []struct {
+		Bucket string `json:"Bucket"`
+		Type   string `json:"Type"`
+	} `json:"MediaBucketList"`
 }
 
 func CreateListAllMediaBucketRequest() (request *ListAllMediaBucketRequest) {

+ 20 - 20
services/mts/list_asr_pipeline.go

@@ -64,33 +64,33 @@ func (client *Client) ListAsrPipelineWithCallback(request *ListAsrPipelineReques
 
 type ListAsrPipelineRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListAsrPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic     string `json:"Topic" xml:"Topic"`
-				QueueName string `json:"QueueName" xml:"QueueName"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic     string `json:"Topic"`
+			QueueName string `json:"QueueName"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateListAsrPipelineRequest() (request *ListAsrPipelineRequest) {

+ 20 - 20
services/mts/list_censor_pipeline.go

@@ -64,33 +64,33 @@ func (client *Client) ListCensorPipelineWithCallback(request *ListCensorPipeline
 
 type ListCensorPipelineRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListCensorPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic string `json:"Topic" xml:"Topic"`
-				Queue string `json:"Queue" xml:"Queue"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateListCensorPipelineRequest() (request *ListCensorPipelineRequest) {

+ 22 - 22
services/mts/list_cover_pipeline.go

@@ -64,35 +64,35 @@ func (client *Client) ListCoverPipelineWithCallback(request *ListCoverPipelineRe
 
 type ListCoverPipelineRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListCoverPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	PipelineList struct {
-		Pipeline []struct {
-			UserId       int64  `json:"UserId" xml:"UserId"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			QuotaNum     int    `json:"quotaNum" xml:"quotaNum"`
-			QuotaUsed    int    `json:"quotaUsed" xml:"quotaUsed"`
-			NotifyConfig string `json:"NotifyConfig" xml:"NotifyConfig"`
-			Role         string `json:"Role" xml:"Role"`
-			ExtendConfig string `json:"ExtendConfig" xml:"ExtendConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	PipelineList []struct {
+		UserId       int64  `json:"UserId"`
+		PipelineId   string `json:"PipelineId"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		QuotaNum     int    `json:"quotaNum"`
+		QuotaUsed    int    `json:"quotaUsed"`
+		NotifyConfig string `json:"NotifyConfig"`
+		Role         string `json:"Role"`
+		ExtendConfig string `json:"ExtendConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateListCoverPipelineRequest() (request *ListCoverPipelineRequest) {

+ 251 - 269
services/mts/list_job.go

@@ -64,283 +64,265 @@ func (client *Client) ListJobWithCallback(request *ListJobRequest, callback func
 
 type ListJobRequest struct {
 	*requests.RpcRequest
-	StartOfJobCreatedTimeRange string `position:"Query" name:"StartOfJobCreatedTimeRange"`
-	EndOfJobCreatedTimeRange   string `position:"Query" name:"EndOfJobCreatedTimeRange"`
-	PipelineId                 string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount       string `position:"Query" name:"ResourceOwnerAccount"`
-	State                      string `position:"Query" name:"State"`
 	ResourceOwnerId            string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount       string `position:"Query" name:"ResourceOwnerAccount"`
+	NextPageToken              string `position:"Query" name:"NextPageToken"`
+	StartOfJobCreatedTimeRange string `position:"Query" name:"StartOfJobCreatedTimeRange"`
 	OwnerAccount               string `position:"Query" name:"OwnerAccount"`
+	Action                     string `position:"Query" name:"Action"`
 	MaximumPageSize            string `position:"Query" name:"MaximumPageSize"`
+	State                      string `position:"Query" name:"State"`
 	OwnerId                    string `position:"Query" name:"OwnerId"`
-	NextPageToken              string `position:"Query" name:"NextPageToken"`
+	AccessKeyId                string `position:"Query" name:"AccessKeyId"`
+	EndOfJobCreatedTimeRange   string `position:"Query" name:"EndOfJobCreatedTimeRange"`
+	PipelineId                 string `position:"Query" name:"PipelineId"`
 }
 
 type ListJobResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
-	NextPageToken string `json:"NextPageToken" xml:"NextPageToken"`
-	JobList       struct {
-		Job []struct {
-			JobId        string `json:"JobId" xml:"JobId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			Percent      int64  `json:"Percent" xml:"Percent"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			FinishTime   string `json:"FinishTime" xml:"FinishTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			Output struct {
-				TemplateId         string `json:"TemplateId" xml:"TemplateId"`
-				UserData           string `json:"UserData" xml:"UserData"`
-				Rotate             string `json:"Rotate" xml:"Rotate"`
-				VideoStreamMap     string `json:"VideoStreamMap" xml:"VideoStreamMap"`
-				AudioStreamMap     string `json:"AudioStreamMap" xml:"AudioStreamMap"`
-				DeWatermark        string `json:"DeWatermark" xml:"DeWatermark"`
-				Priority           string `json:"Priority" xml:"Priority"`
-				WaterMarkConfigUrl string `json:"WaterMarkConfigUrl" xml:"WaterMarkConfigUrl"`
-				MergeConfigUrl     string `json:"MergeConfigUrl" xml:"MergeConfigUrl"`
-				OutputFile         struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-					RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-				} `json:"OutputFile" xml:"OutputFile"`
-				M3U8NonStandardSupport struct {
-					TS struct {
-						Md5Support  bool `json:"Md5Support" xml:"Md5Support"`
-						SizeSupport bool `json:"SizeSupport" xml:"SizeSupport"`
-					} `json:"TS" xml:"TS"`
-				} `json:"M3U8NonStandardSupport" xml:"M3U8NonStandardSupport"`
-				Properties struct {
-					Width      string `json:"Width" xml:"Width"`
-					Height     string `json:"Height" xml:"Height"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Duration   string `json:"Duration" xml:"Duration"`
-					Fps        string `json:"Fps" xml:"Fps"`
-					FileSize   string `json:"FileSize" xml:"FileSize"`
-					FileFormat string `json:"FileFormat" xml:"FileFormat"`
-					Streams    struct {
-						VideoStreamList struct {
-							VideoStream []struct {
-								Index          string `json:"Index" xml:"Index"`
-								CodecName      string `json:"CodecName" xml:"CodecName"`
-								CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-								Profile        string `json:"Profile" xml:"Profile"`
-								CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-								CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-								CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-								Width          string `json:"Width" xml:"Width"`
-								Height         string `json:"Height" xml:"Height"`
-								HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-								Sar            string `json:"Sar" xml:"Sar"`
-								Dar            string `json:"Dar" xml:"Dar"`
-								PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-								Level          string `json:"Level" xml:"Level"`
-								Fps            string `json:"Fps" xml:"Fps"`
-								AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-								Timebase       string `json:"Timebase" xml:"Timebase"`
-								StartTime      string `json:"StartTime" xml:"StartTime"`
-								Duration       string `json:"Duration" xml:"Duration"`
-								Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-								NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-								Lang           string `json:"Lang" xml:"Lang"`
-								NetworkCost    struct {
-									PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-									CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-									AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-								} `json:"NetworkCost" xml:"NetworkCost"`
-							} `json:"VideoStream" xml:"VideoStream"`
-						} `json:"VideoStreamList" xml:"VideoStreamList"`
-						AudioStreamList struct {
-							AudioStream []struct {
-								Index          string `json:"Index" xml:"Index"`
-								CodecName      string `json:"CodecName" xml:"CodecName"`
-								CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-								CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-								CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-								CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-								SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-								Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-								Channels       string `json:"Channels" xml:"Channels"`
-								ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-								Timebase       string `json:"Timebase" xml:"Timebase"`
-								StartTime      string `json:"StartTime" xml:"StartTime"`
-								Duration       string `json:"Duration" xml:"Duration"`
-								Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-								NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-								Lang           string `json:"Lang" xml:"Lang"`
-							} `json:"AudioStream" xml:"AudioStream"`
-						} `json:"AudioStreamList" xml:"AudioStreamList"`
-						SubtitleStreamList struct {
-							SubtitleStream []struct {
-								Index string `json:"Index" xml:"Index"`
-								Lang  string `json:"Lang" xml:"Lang"`
-							} `json:"SubtitleStream" xml:"SubtitleStream"`
-						} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-					} `json:"Streams" xml:"Streams"`
-					Format struct {
-						NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-						NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-						FormatName     string `json:"FormatName" xml:"FormatName"`
-						FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-						StartTime      string `json:"StartTime" xml:"StartTime"`
-						Duration       string `json:"Duration" xml:"Duration"`
-						Size           string `json:"Size" xml:"Size"`
-						Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-					} `json:"Format" xml:"Format"`
-				} `json:"Properties" xml:"Properties"`
-				Clip struct {
-					TimeSpan struct {
-						Seek     string `json:"Seek" xml:"Seek"`
-						Duration string `json:"Duration" xml:"Duration"`
-					} `json:"TimeSpan" xml:"TimeSpan"`
-				} `json:"Clip" xml:"Clip"`
-				SuperReso struct {
-					IsHalfSample string `json:"IsHalfSample" xml:"IsHalfSample"`
-				} `json:"SuperReso" xml:"SuperReso"`
-				SubtitleConfig struct {
-					SubtitleList struct {
-						Subtitle []struct {
-							Map string `json:"Map" xml:"Map"`
-						} `json:"Subtitle" xml:"Subtitle"`
-					} `json:"SubtitleList" xml:"SubtitleList"`
-					ExtSubtitleList struct {
-						ExtSubtitle []struct {
-							FontName string `json:"FontName" xml:"FontName"`
-							CharEnc  string `json:"CharEnc" xml:"CharEnc"`
-							Input3   struct {
-								Bucket   string `json:"Bucket" xml:"Bucket"`
-								Location string `json:"Location" xml:"Location"`
-								Object   string `json:"Object" xml:"Object"`
-							} `json:"Input" xml:"Input"`
-						} `json:"ExtSubtitle" xml:"ExtSubtitle"`
-					} `json:"ExtSubtitleList" xml:"ExtSubtitleList"`
-				} `json:"SubtitleConfig" xml:"SubtitleConfig"`
-				TransConfig struct {
-					TransMode               string `json:"TransMode" xml:"TransMode"`
-					IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-					IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-					IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-					IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-					AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-					IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-					IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-				} `json:"TransConfig" xml:"TransConfig"`
-				MuxConfig struct {
-					Segment struct {
-						Duration string `json:"Duration" xml:"Duration"`
-					} `json:"Segment" xml:"Segment"`
-					Gif struct {
-						Loop            string `json:"Loop" xml:"Loop"`
-						FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-						IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-						DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-					} `json:"Gif" xml:"Gif"`
-				} `json:"MuxConfig" xml:"MuxConfig"`
-				Audio struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Samplerate string `json:"Samplerate" xml:"Samplerate"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Channels   string `json:"Channels" xml:"Channels"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-					Volume     struct {
-						Level  string `json:"Level" xml:"Level"`
-						Method string `json:"Method" xml:"Method"`
-					} `json:"Volume" xml:"Volume"`
-				} `json:"Audio" xml:"Audio"`
-				Video struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Crf        string `json:"Crf" xml:"Crf"`
-					Width      string `json:"Width" xml:"Width"`
-					Height     string `json:"Height" xml:"Height"`
-					Fps        string `json:"Fps" xml:"Fps"`
-					Gop        string `json:"Gop" xml:"Gop"`
-					Preset     string `json:"Preset" xml:"Preset"`
-					ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-					Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-					Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-					PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-					Degrain    string `json:"Degrain" xml:"Degrain"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-					Crop       string `json:"Crop" xml:"Crop"`
-					Pad        string `json:"Pad" xml:"Pad"`
-					MaxFps     string `json:"MaxFps" xml:"MaxFps"`
-					BitrateBnd struct {
-						Max string `json:"Max" xml:"Max"`
-						Min string `json:"Min" xml:"Min"`
-					} `json:"BitrateBnd" xml:"BitrateBnd"`
-				} `json:"Video" xml:"Video"`
-				Container struct {
-					Format string `json:"Format" xml:"Format"`
-				} `json:"Container" xml:"Container"`
-				Encryption struct {
-					Type    string `json:"Type" xml:"Type"`
-					Id      string `json:"Id" xml:"Id"`
-					Key     string `json:"Key" xml:"Key"`
-					KeyUri  string `json:"KeyUri" xml:"KeyUri"`
-					KeyType string `json:"KeyType" xml:"KeyType"`
-					SkipCnt string `json:"SkipCnt" xml:"SkipCnt"`
-				} `json:"Encryption" xml:"Encryption"`
-				WaterMarkList struct {
-					WaterMark []struct {
-						WaterMarkTemplateId string `json:"WaterMarkTemplateId" xml:"WaterMarkTemplateId"`
-						Width               string `json:"Width" xml:"Width"`
-						Height              string `json:"Height" xml:"Height"`
-						Dx                  string `json:"Dx" xml:"Dx"`
-						Dy                  string `json:"Dy" xml:"Dy"`
-						ReferPos            string `json:"ReferPos" xml:"ReferPos"`
-						Type                string `json:"Type" xml:"Type"`
-						InputFile           struct {
-							Bucket   string `json:"Bucket" xml:"Bucket"`
-							Location string `json:"Location" xml:"Location"`
-							Object   string `json:"Object" xml:"Object"`
-						} `json:"InputFile" xml:"InputFile"`
-					} `json:"WaterMark" xml:"WaterMark"`
-				} `json:"WaterMarkList" xml:"WaterMarkList"`
-				MergeList struct {
-					Merge []struct {
-						MergeURL string `json:"MergeURL" xml:"MergeURL"`
-						Start    string `json:"Start" xml:"Start"`
-						Duration string `json:"Duration" xml:"Duration"`
-						RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-					} `json:"Merge" xml:"Merge"`
-				} `json:"MergeList" xml:"MergeList"`
-				OpeningList struct {
-					Merge []struct {
-						OpenUrl string `json:"openUrl" xml:"openUrl"`
-						Start   string `json:"Start" xml:"Start"`
-						Width   string `json:"Width" xml:"Width"`
-						Height  string `json:"Height" xml:"Height"`
-					} `json:"Merge" xml:"Merge"`
-				} `json:"OpeningList" xml:"OpeningList"`
-				TailSlateList struct {
-					Merge []struct {
-						TailUrl       string `json:"TailUrl" xml:"TailUrl"`
-						Start         string `json:"Start" xml:"Start"`
-						BlendDuration string `json:"BlendDuration" xml:"BlendDuration"`
-						Width         string `json:"Width" xml:"Width"`
-						Height        string `json:"Height" xml:"Height"`
-						IsMergeAudio  bool   `json:"IsMergeAudio" xml:"IsMergeAudio"`
-						BgColor       string `json:"BgColor" xml:"BgColor"`
-					} `json:"Merge" xml:"Merge"`
-				} `json:"TailSlateList" xml:"TailSlateList"`
-			} `json:"Output" xml:"Output"`
-			MNSMessageResult struct {
-				MessageId    string `json:"MessageId" xml:"MessageId"`
-				ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-				ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-			} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-		} `json:"Job" xml:"Job"`
-	} `json:"JobList" xml:"JobList"`
+	RequestId     string `json:"RequestId"`
+	NextPageToken string `json:"NextPageToken"`
+	JobList       []struct {
+		JobId        string `json:"JobId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		Percent      int64  `json:"Percent"`
+		PipelineId   string `json:"PipelineId"`
+		CreationTime string `json:"CreationTime"`
+		FinishTime   string `json:"FinishTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		Output struct {
+			TemplateId         string `json:"TemplateId"`
+			UserData           string `json:"UserData"`
+			Rotate             string `json:"Rotate"`
+			VideoStreamMap     string `json:"VideoStreamMap"`
+			AudioStreamMap     string `json:"AudioStreamMap"`
+			DeWatermark        string `json:"DeWatermark"`
+			Priority           string `json:"Priority"`
+			WaterMarkConfigUrl string `json:"WaterMarkConfigUrl"`
+			MergeConfigUrl     string `json:"MergeConfigUrl"`
+			OutputFile         struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"OutputFile"`
+			M3U8NonStandardSupport struct {
+				TS struct {
+					Md5Support  bool `json:"Md5Support"`
+					SizeSupport bool `json:"SizeSupport"`
+				} `json:"TS"`
+			} `json:"M3U8NonStandardSupport"`
+			Properties struct {
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Bitrate    string `json:"Bitrate"`
+				Duration   string `json:"Duration"`
+				Fps        string `json:"Fps"`
+				FileSize   string `json:"FileSize"`
+				FileFormat string `json:"FileFormat"`
+				Streams    struct {
+					VideoStreamList []struct {
+						Index          string `json:"Index"`
+						CodecName      string `json:"CodecName"`
+						CodecLongName  string `json:"CodecLongName"`
+						Profile        string `json:"Profile"`
+						CodecTimeBase  string `json:"CodecTimeBase"`
+						CodecTagString string `json:"CodecTagString"`
+						CodecTag       string `json:"CodecTag"`
+						Width          string `json:"Width"`
+						Height         string `json:"Height"`
+						HasBFrames     string `json:"HasBFrames"`
+						Sar            string `json:"Sar"`
+						Dar            string `json:"Dar"`
+						PixFmt         string `json:"PixFmt"`
+						Level          string `json:"Level"`
+						Fps            string `json:"Fps"`
+						AvgFPS         string `json:"AvgFPS"`
+						Timebase       string `json:"Timebase"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Bitrate        string `json:"Bitrate"`
+						NumFrames      string `json:"NumFrames"`
+						Lang           string `json:"Lang"`
+						NetworkCost    struct {
+							PreloadTime   string `json:"PreloadTime"`
+							CostBandwidth string `json:"CostBandwidth"`
+							AvgBitrate    string `json:"AvgBitrate"`
+						} `json:"NetworkCost"`
+					} `json:"VideoStreamList"`
+					AudioStreamList []struct {
+						Index          string `json:"Index"`
+						CodecName      string `json:"CodecName"`
+						CodecTimeBase  string `json:"CodecTimeBase"`
+						CodecLongName  string `json:"CodecLongName"`
+						CodecTagString string `json:"CodecTagString"`
+						CodecTag       string `json:"CodecTag"`
+						SampleFmt      string `json:"SampleFmt"`
+						Samplerate     string `json:"Samplerate"`
+						Channels       string `json:"Channels"`
+						ChannelLayout  string `json:"ChannelLayout"`
+						Timebase       string `json:"Timebase"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Bitrate        string `json:"Bitrate"`
+						NumFrames      string `json:"NumFrames"`
+						Lang           string `json:"Lang"`
+					} `json:"AudioStreamList"`
+					SubtitleStreamList []struct {
+						Index string `json:"Index"`
+						Lang  string `json:"Lang"`
+					} `json:"SubtitleStreamList"`
+				} `json:"Streams"`
+				Format struct {
+					NumStreams     string `json:"NumStreams"`
+					NumPrograms    string `json:"NumPrograms"`
+					FormatName     string `json:"FormatName"`
+					FormatLongName string `json:"FormatLongName"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Size           string `json:"Size"`
+					Bitrate        string `json:"Bitrate"`
+				} `json:"Format"`
+			} `json:"Properties"`
+			Clip struct {
+				TimeSpan struct {
+					Seek     string `json:"Seek"`
+					Duration string `json:"Duration"`
+				} `json:"TimeSpan"`
+			} `json:"Clip"`
+			SuperReso struct {
+				IsHalfSample string `json:"IsHalfSample"`
+			} `json:"SuperReso"`
+			SubtitleConfig struct {
+				SubtitleList []struct {
+					Map string `json:"Map"`
+				} `json:"SubtitleList"`
+				ExtSubtitleList []struct {
+					FontName string `json:"FontName"`
+					CharEnc  string `json:"CharEnc"`
+					Input3   struct {
+						Bucket   string `json:"Bucket"`
+						Location string `json:"Location"`
+						Object   string `json:"Object"`
+					} `json:"Input"`
+				} `json:"ExtSubtitleList"`
+			} `json:"SubtitleConfig"`
+			TransConfig struct {
+				TransMode               string `json:"TransMode"`
+				IsCheckReso             string `json:"IsCheckReso"`
+				IsCheckResoFail         string `json:"IsCheckResoFail"`
+				IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+				IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+				AdjDarMethod            string `json:"AdjDarMethod"`
+				IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+				IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+			} `json:"TransConfig"`
+			MuxConfig struct {
+				Segment struct {
+					Duration string `json:"Duration"`
+				} `json:"Segment"`
+				Gif struct {
+					Loop            string `json:"Loop"`
+					FinalDelay      string `json:"FinalDelay"`
+					IsCustomPalette string `json:"IsCustomPalette"`
+					DitherMode      string `json:"DitherMode"`
+				} `json:"Gif"`
+			} `json:"MuxConfig"`
+			Audio struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Samplerate string `json:"Samplerate"`
+				Bitrate    string `json:"Bitrate"`
+				Channels   string `json:"Channels"`
+				Qscale     string `json:"Qscale"`
+				Volume     struct {
+					Level  string `json:"Level"`
+					Method string `json:"Method"`
+				} `json:"Volume"`
+			} `json:"Audio"`
+			Video struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Bitrate    string `json:"Bitrate"`
+				Crf        string `json:"Crf"`
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Fps        string `json:"Fps"`
+				Gop        string `json:"Gop"`
+				Preset     string `json:"Preset"`
+				ScanMode   string `json:"ScanMode"`
+				Bufsize    string `json:"Bufsize"`
+				Maxrate    string `json:"Maxrate"`
+				PixFmt     string `json:"PixFmt"`
+				Degrain    string `json:"Degrain"`
+				Qscale     string `json:"Qscale"`
+				Crop       string `json:"Crop"`
+				Pad        string `json:"Pad"`
+				MaxFps     string `json:"MaxFps"`
+				BitrateBnd struct {
+					Max string `json:"Max"`
+					Min string `json:"Min"`
+				} `json:"BitrateBnd"`
+			} `json:"Video"`
+			Container struct {
+				Format string `json:"Format"`
+			} `json:"Container"`
+			Encryption struct {
+				Type    string `json:"Type"`
+				Id      string `json:"Id"`
+				Key     string `json:"Key"`
+				KeyUri  string `json:"KeyUri"`
+				KeyType string `json:"KeyType"`
+				SkipCnt string `json:"SkipCnt"`
+			} `json:"Encryption"`
+			WaterMarkList []struct {
+				WaterMarkTemplateId string `json:"WaterMarkTemplateId"`
+				Width               string `json:"Width"`
+				Height              string `json:"Height"`
+				Dx                  string `json:"Dx"`
+				Dy                  string `json:"Dy"`
+				ReferPos            string `json:"ReferPos"`
+				Type                string `json:"Type"`
+				InputFile           struct {
+					Bucket   string `json:"Bucket"`
+					Location string `json:"Location"`
+					Object   string `json:"Object"`
+				} `json:"InputFile"`
+			} `json:"WaterMarkList"`
+			MergeList []struct {
+				MergeURL string `json:"MergeURL"`
+				Start    string `json:"Start"`
+				Duration string `json:"Duration"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"MergeList"`
+			OpeningList []struct {
+				OpenUrl string `json:"openUrl"`
+				Start   string `json:"Start"`
+				Width   string `json:"Width"`
+				Height  string `json:"Height"`
+			} `json:"OpeningList"`
+			TailSlateList []struct {
+				TailUrl       string `json:"TailUrl"`
+				Start         string `json:"Start"`
+				BlendDuration string `json:"BlendDuration"`
+				Width         string `json:"Width"`
+				Height        string `json:"Height"`
+				IsMergeAudio  bool   `json:"IsMergeAudio"`
+				BgColor       string `json:"BgColor"`
+			} `json:"TailSlateList"`
+		} `json:"Output"`
+		MNSMessageResult struct {
+			MessageId    string `json:"MessageId"`
+			ErrorMessage string `json:"ErrorMessage"`
+			ErrorCode    string `json:"ErrorCode"`
+		} `json:"MNSMessageResult"`
+	} `json:"JobList"`
 }
 
 func CreateListJobRequest() (request *ListJobRequest) {

+ 30 - 34
services/mts/list_media.go

@@ -64,48 +64,44 @@ func (client *Client) ListMediaWithCallback(request *ListMediaRequest, callback
 
 type ListMediaRequest struct {
 	*requests.RpcRequest
-	To                   string `position:"Query" name:"To"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	From                 string `position:"Query" name:"From"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	NextPageToken        string `position:"Query" name:"NextPageToken"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	MaximumPageSize      string `position:"Query" name:"MaximumPageSize"`
+	From                 string `position:"Query" name:"From"`
+	To                   string `position:"Query" name:"To"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	NextPageToken        string `position:"Query" name:"NextPageToken"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListMediaResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
-	NextPageToken string `json:"NextPageToken" xml:"NextPageToken"`
-	MediaList     struct {
-		Media []struct {
-			MediaId      string `json:"MediaId" xml:"MediaId"`
-			Title        string `json:"Title" xml:"Title"`
-			Description  string `json:"Description" xml:"Description"`
-			CoverURL     string `json:"CoverURL" xml:"CoverURL"`
-			CateId       int64  `json:"CateId" xml:"CateId"`
-			Duration     string `json:"Duration" xml:"Duration"`
-			Format       string `json:"Format" xml:"Format"`
-			Size         string `json:"Size" xml:"Size"`
-			Bitrate      string `json:"Bitrate" xml:"Bitrate"`
-			Width        string `json:"Width" xml:"Width"`
-			Height       string `json:"Height" xml:"Height"`
-			Fps          string `json:"Fps" xml:"Fps"`
-			PublishState string `json:"PublishState" xml:"PublishState"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Tags         struct {
-				Tag []string `json:"Tag" xml:"Tag"`
-			} `json:"Tags" xml:"Tags"`
-			RunIdList struct {
-				RunId []string `json:"RunId" xml:"RunId"`
-			} `json:"RunIdList" xml:"RunIdList"`
-			File struct {
-				URL   string `json:"URL" xml:"URL"`
-				State string `json:"State" xml:"State"`
-			} `json:"File" xml:"File"`
-		} `json:"Media" xml:"Media"`
-	} `json:"MediaList" xml:"MediaList"`
+	RequestId     string `json:"RequestId"`
+	NextPageToken string `json:"NextPageToken"`
+	MediaList     []struct {
+		MediaId      string   `json:"MediaId"`
+		Title        string   `json:"Title"`
+		Description  string   `json:"Description"`
+		CoverURL     string   `json:"CoverURL"`
+		CateId       int64    `json:"CateId"`
+		Duration     string   `json:"Duration"`
+		Format       string   `json:"Format"`
+		Size         string   `json:"Size"`
+		Bitrate      string   `json:"Bitrate"`
+		Width        string   `json:"Width"`
+		Height       string   `json:"Height"`
+		Fps          string   `json:"Fps"`
+		PublishState string   `json:"PublishState"`
+		CreationTime string   `json:"CreationTime"`
+		Tags         []string `json:"Tags"`
+		RunIdList    []string `json:"RunIdList"`
+		File         struct {
+			URL   string `json:"URL"`
+			State string `json:"State"`
+		} `json:"File"`
+	} `json:"MediaList"`
 }
 
 func CreateListMediaRequest() (request *ListMediaRequest) {

+ 40 - 42
services/mts/list_media_workflow_executions.go

@@ -64,56 +64,54 @@ func (client *Client) ListMediaWorkflowExecutionsWithCallback(request *ListMedia
 
 type ListMediaWorkflowExecutionsRequest struct {
 	*requests.RpcRequest
-	InputFileURL         string `position:"Query" name:"InputFileURL"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	MediaWorkflowName    string `position:"Query" name:"MediaWorkflowName"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	InputFileURL         string `position:"Query" name:"InputFileURL"`
+	NextPageToken        string `position:"Query" name:"NextPageToken"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	MaximumPageSize      string `position:"Query" name:"MaximumPageSize"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
-	NextPageToken        string `position:"Query" name:"NextPageToken"`
 	MediaWorkflowId      string `position:"Query" name:"MediaWorkflowId"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	MediaWorkflowName    string `position:"Query" name:"MediaWorkflowName"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListMediaWorkflowExecutionsResponse struct {
 	*responses.BaseResponse
-	RequestId                  string `json:"RequestId" xml:"RequestId"`
-	NextPageToken              string `json:"NextPageToken" xml:"NextPageToken"`
-	MediaWorkflowExecutionList struct {
-		MediaWorkflowExecution []struct {
-			RunId           string `json:"RunId" xml:"RunId"`
-			MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-			Name            string `json:"Name" xml:"Name"`
-			State           string `json:"State" xml:"State"`
-			MediaId         string `json:"MediaId" xml:"MediaId"`
-			CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-			Input           struct {
-				UserData  string `json:"UserData" xml:"UserData"`
-				InputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"InputFile" xml:"InputFile"`
-			} `json:"Input" xml:"Input"`
-			ActivityList struct {
-				Activity []struct {
-					Name             string `json:"Name" xml:"Name"`
-					Type             string `json:"Type" xml:"Type"`
-					JobId            string `json:"JobId" xml:"JobId"`
-					State            string `json:"State" xml:"State"`
-					Code             string `json:"Code" xml:"Code"`
-					Message          string `json:"Message" xml:"Message"`
-					StartTime        string `json:"StartTime" xml:"StartTime"`
-					EndTime          string `json:"EndTime" xml:"EndTime"`
-					MNSMessageResult struct {
-						MessageId    string `json:"MessageId" xml:"MessageId"`
-						ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-						ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-					} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-				} `json:"Activity" xml:"Activity"`
-			} `json:"ActivityList" xml:"ActivityList"`
-		} `json:"MediaWorkflowExecution" xml:"MediaWorkflowExecution"`
-	} `json:"MediaWorkflowExecutionList" xml:"MediaWorkflowExecutionList"`
+	RequestId                  string `json:"RequestId"`
+	NextPageToken              string `json:"NextPageToken"`
+	MediaWorkflowExecutionList []struct {
+		RunId           string `json:"RunId"`
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		State           string `json:"State"`
+		MediaId         string `json:"MediaId"`
+		CreationTime    string `json:"CreationTime"`
+		Input           struct {
+			UserData  string `json:"UserData"`
+			InputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"InputFile"`
+		} `json:"Input"`
+		ActivityList []struct {
+			Name             string `json:"Name"`
+			Type             string `json:"Type"`
+			JobId            string `json:"JobId"`
+			State            string `json:"State"`
+			Code             string `json:"Code"`
+			Message          string `json:"Message"`
+			StartTime        string `json:"StartTime"`
+			EndTime          string `json:"EndTime"`
+			MNSMessageResult struct {
+				MessageId    string `json:"MessageId"`
+				ErrorMessage string `json:"ErrorMessage"`
+				ErrorCode    string `json:"ErrorCode"`
+			} `json:"MNSMessageResult"`
+		} `json:"ActivityList"`
+	} `json:"MediaWorkflowExecutionList"`
 }
 
 func CreateListMediaWorkflowExecutionsRequest() (request *ListMediaWorkflowExecutionsRequest) {

+ 20 - 20
services/mts/list_porn_pipeline.go

@@ -64,33 +64,33 @@ func (client *Client) ListPornPipelineWithCallback(request *ListPornPipelineRequ
 
 type ListPornPipelineRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListPornPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic string `json:"Topic" xml:"Topic"`
-				Queue string `json:"Queue" xml:"Queue"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateListPornPipelineRequest() (request *ListPornPipelineRequest) {

+ 20 - 20
services/mts/list_terrorism_pipeline.go

@@ -64,33 +64,33 @@ func (client *Client) ListTerrorismPipelineWithCallback(request *ListTerrorismPi
 
 type ListTerrorismPipelineRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListTerrorismPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic string `json:"Topic" xml:"Topic"`
-				Queue string `json:"Queue" xml:"Queue"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateListTerrorismPipelineRequest() (request *ListTerrorismPipelineRequest) {

+ 20 - 20
services/mts/list_video_summary_pipeline.go

@@ -64,33 +64,33 @@ func (client *Client) ListVideoSummaryPipelineWithCallback(request *ListVideoSum
 
 type ListVideoSummaryPipelineRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ListVideoSummaryPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic     string `json:"Topic" xml:"Topic"`
-				QueueName string `json:"QueueName" xml:"QueueName"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic     string `json:"Topic"`
+			QueueName string `json:"QueueName"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateListVideoSummaryPipelineRequest() (request *ListVideoSummaryPipelineRequest) {

+ 26 - 28
services/mts/play_info.go

@@ -64,43 +64,41 @@ func (client *Client) PlayInfoWithCallback(request *PlayInfoRequest, callback fu
 
 type PlayInfoRequest struct {
 	*requests.RpcRequest
-	AuthInfo             string `position:"Query" name:"AuthInfo"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	HlsUriToken          string `position:"Query" name:"HlsUriToken"`
-	MediaId              string `position:"Query" name:"MediaId"`
 	PlayDomain           string `position:"Query" name:"PlayDomain"`
-	Rand                 string `position:"Query" name:"Rand"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	Formats              string `position:"Query" name:"Formats"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	HlsUriToken          string `position:"Query" name:"HlsUriToken"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	MediaId              string `position:"Query" name:"MediaId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	Rand                 string `position:"Query" name:"Rand"`
+	Action               string `position:"Query" name:"Action"`
 	AuthTimeout          string `position:"Query" name:"AuthTimeout"`
-	Formats              string `position:"Query" name:"Formats"`
+	AuthInfo             string `position:"Query" name:"AuthInfo"`
 }
 
 type PlayInfoResponse struct {
 	*responses.BaseResponse
-	RequestId         string `json:"RequestId" xml:"RequestId"`
-	NotFoundCDNDomain struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NotFoundCDNDomain" xml:"NotFoundCDNDomain"`
-	PlayInfoList struct {
-		PlayInfo []struct {
-			Url          string `json:"Url" xml:"Url"`
-			Duration     string `json:"duration" xml:"duration"`
-			Size         string `json:"size" xml:"size"`
-			Width        string `json:"width" xml:"width"`
-			Height       string `json:"height" xml:"height"`
-			Bitrate      string `json:"bitrate" xml:"bitrate"`
-			Fps          string `json:"fps" xml:"fps"`
-			Format       string `json:"format" xml:"format"`
-			Definition   string `json:"definition" xml:"definition"`
-			Encryption   string `json:"encryption" xml:"encryption"`
-			Rand         string `json:"rand" xml:"rand"`
-			Plaintext    string `json:"plaintext" xml:"plaintext"`
-			Complexity   string `json:"complexity" xml:"complexity"`
-			ActivityName string `json:"activityName" xml:"activityName"`
-		} `json:"PlayInfo" xml:"PlayInfo"`
-	} `json:"PlayInfoList" xml:"PlayInfoList"`
+	RequestId         string   `json:"RequestId"`
+	NotFoundCDNDomain []string `json:"NotFoundCDNDomain"`
+	PlayInfoList      []struct {
+		Url          string `json:"Url"`
+		Duration     string `json:"duration"`
+		Size         string `json:"size"`
+		Width        string `json:"width"`
+		Height       string `json:"height"`
+		Bitrate      string `json:"bitrate"`
+		Fps          string `json:"fps"`
+		Format       string `json:"format"`
+		Definition   string `json:"definition"`
+		Encryption   string `json:"encryption"`
+		Rand         string `json:"rand"`
+		Plaintext    string `json:"plaintext"`
+		Complexity   string `json:"complexity"`
+		ActivityName string `json:"activityName"`
+	} `json:"PlayInfoList"`
 }
 
 func CreatePlayInfoRequest() (request *PlayInfoRequest) {

+ 11 - 11
services/mts/player_auth.go

@@ -64,24 +64,24 @@ func (client *Client) PlayerAuthWithCallback(request *PlayerAuthRequest, callbac
 
 type PlayerAuthRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type PlayerAuthResponse struct {
 	*responses.BaseResponse
-	RequestId  string `json:"RequestId" xml:"RequestId"`
-	LogURL     string `json:"LogURL" xml:"LogURL"`
-	SwitchList struct {
-		Switch []struct {
-			State        string `json:"State" xml:"State"`
-			FunctionId   string `json:"FunctionId" xml:"FunctionId"`
-			SwitchId     string `json:"SwitchId" xml:"SwitchId"`
-			FunctionName string `json:"FunctionName" xml:"FunctionName"`
-		} `json:"Switch" xml:"Switch"`
-	} `json:"SwitchList" xml:"SwitchList"`
+	RequestId  string `json:"RequestId"`
+	LogURL     string `json:"LogURL"`
+	SwitchList []struct {
+		State        string `json:"State"`
+		FunctionId   string `json:"FunctionId"`
+		SwitchId     string `json:"SwitchId"`
+		FunctionName string `json:"FunctionName"`
+	} `json:"SwitchList"`
 }
 
 func CreatePlayerAuthRequest() (request *PlayerAuthRequest) {

+ 92 - 96
services/mts/query_analysis_job_list.go

@@ -64,109 +64,105 @@ func (client *Client) QueryAnalysisJobListWithCallback(request *QueryAnalysisJob
 
 type QueryAnalysisJobListRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	AnalysisJobIds       string `position:"Query" name:"AnalysisJobIds"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AnalysisJobIds       string `position:"Query" name:"AnalysisJobIds"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryAnalysisJobListResponse struct {
 	*responses.BaseResponse
-	RequestId              string `json:"RequestId" xml:"RequestId"`
-	NonExistAnalysisJobIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistAnalysisJobIds" xml:"NonExistAnalysisJobIds"`
-	AnalysisJobList struct {
-		AnalysisJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			Percent      int64  `json:"Percent" xml:"Percent"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			InputFile    struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"InputFile" xml:"InputFile"`
-			AnalysisConfig struct {
-				QualityControl struct {
-					RateQuality     string `json:"RateQuality" xml:"RateQuality"`
-					MethodStreaming string `json:"MethodStreaming" xml:"MethodStreaming"`
-				} `json:"QualityControl" xml:"QualityControl"`
-				PropertiesControl struct {
-					Deinterlace string `json:"Deinterlace" xml:"Deinterlace"`
-					Crop        struct {
-						Mode   string `json:"Mode" xml:"Mode"`
-						Width  string `json:"Width" xml:"Width"`
-						Height string `json:"Height" xml:"Height"`
-						Top    string `json:"Top" xml:"Top"`
-						Left   string `json:"Left" xml:"Left"`
-					} `json:"Crop" xml:"Crop"`
-				} `json:"PropertiesControl" xml:"PropertiesControl"`
-			} `json:"AnalysisConfig" xml:"AnalysisConfig"`
-			MNSMessageResult struct {
-				MessageId    string `json:"MessageId" xml:"MessageId"`
-				ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-				ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-			} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-			TemplateList struct {
-				Template []struct {
-					Id        string `json:"Id" xml:"Id"`
-					Name      string `json:"Name" xml:"Name"`
-					State     string `json:"State" xml:"State"`
-					Container struct {
-						Format string `json:"Format" xml:"Format"`
-					} `json:"Container" xml:"Container"`
-					Video struct {
-						Codec      string `json:"Codec" xml:"Codec"`
-						Profile    string `json:"Profile" xml:"Profile"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Crf        string `json:"Crf" xml:"Crf"`
-						Width      string `json:"Width" xml:"Width"`
-						Height     string `json:"Height" xml:"Height"`
-						Fps        string `json:"Fps" xml:"Fps"`
-						Gop        string `json:"Gop" xml:"Gop"`
-						Preset     string `json:"Preset" xml:"Preset"`
-						ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-						Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-						Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-						PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-						Degrain    string `json:"Degrain" xml:"Degrain"`
-						Qscale     string `json:"Qscale" xml:"Qscale"`
-						BitrateBnd struct {
-							Max string `json:"Max" xml:"Max"`
-							Min string `json:"Min" xml:"Min"`
-						} `json:"BitrateBnd" xml:"BitrateBnd"`
-					} `json:"Video" xml:"Video"`
-					Audio struct {
-						Codec      string `json:"Codec" xml:"Codec"`
-						Profile    string `json:"Profile" xml:"Profile"`
-						Samplerate string `json:"Samplerate" xml:"Samplerate"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Channels   string `json:"Channels" xml:"Channels"`
-						Qscale     string `json:"Qscale" xml:"Qscale"`
-					} `json:"Audio" xml:"Audio"`
-					TransConfig struct {
-						TransMode string `json:"TransMode" xml:"TransMode"`
-					} `json:"TransConfig" xml:"TransConfig"`
-					MuxConfig struct {
-						Segment struct {
-							Duration string `json:"Duration" xml:"Duration"`
-						} `json:"Segment" xml:"Segment"`
-						Gif struct {
-							Loop       string `json:"Loop" xml:"Loop"`
-							FinalDelay string `json:"FinalDelay" xml:"FinalDelay"`
-						} `json:"Gif" xml:"Gif"`
-					} `json:"MuxConfig" xml:"MuxConfig"`
-				} `json:"Template" xml:"Template"`
-			} `json:"TemplateList" xml:"TemplateList"`
-		} `json:"AnalysisJob" xml:"AnalysisJob"`
-	} `json:"AnalysisJobList" xml:"AnalysisJobList"`
+	RequestId              string   `json:"RequestId"`
+	NonExistAnalysisJobIds []string `json:"NonExistAnalysisJobIds"`
+	AnalysisJobList        []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		Percent      int64  `json:"Percent"`
+		CreationTime string `json:"CreationTime"`
+		PipelineId   string `json:"PipelineId"`
+		Priority     string `json:"Priority"`
+		InputFile    struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"InputFile"`
+		AnalysisConfig struct {
+			QualityControl struct {
+				RateQuality     string `json:"RateQuality"`
+				MethodStreaming string `json:"MethodStreaming"`
+			} `json:"QualityControl"`
+			PropertiesControl struct {
+				Deinterlace string `json:"Deinterlace"`
+				Crop        struct {
+					Mode   string `json:"Mode"`
+					Width  string `json:"Width"`
+					Height string `json:"Height"`
+					Top    string `json:"Top"`
+					Left   string `json:"Left"`
+				} `json:"Crop"`
+			} `json:"PropertiesControl"`
+		} `json:"AnalysisConfig"`
+		MNSMessageResult struct {
+			MessageId    string `json:"MessageId"`
+			ErrorMessage string `json:"ErrorMessage"`
+			ErrorCode    string `json:"ErrorCode"`
+		} `json:"MNSMessageResult"`
+		TemplateList []struct {
+			Id        string `json:"Id"`
+			Name      string `json:"Name"`
+			State     string `json:"State"`
+			Container struct {
+				Format string `json:"Format"`
+			} `json:"Container"`
+			Video struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Bitrate    string `json:"Bitrate"`
+				Crf        string `json:"Crf"`
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Fps        string `json:"Fps"`
+				Gop        string `json:"Gop"`
+				Preset     string `json:"Preset"`
+				ScanMode   string `json:"ScanMode"`
+				Bufsize    string `json:"Bufsize"`
+				Maxrate    string `json:"Maxrate"`
+				PixFmt     string `json:"PixFmt"`
+				Degrain    string `json:"Degrain"`
+				Qscale     string `json:"Qscale"`
+				BitrateBnd struct {
+					Max string `json:"Max"`
+					Min string `json:"Min"`
+				} `json:"BitrateBnd"`
+			} `json:"Video"`
+			Audio struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Samplerate string `json:"Samplerate"`
+				Bitrate    string `json:"Bitrate"`
+				Channels   string `json:"Channels"`
+				Qscale     string `json:"Qscale"`
+			} `json:"Audio"`
+			TransConfig struct {
+				TransMode string `json:"TransMode"`
+			} `json:"TransConfig"`
+			MuxConfig struct {
+				Segment struct {
+					Duration string `json:"Duration"`
+				} `json:"Segment"`
+				Gif struct {
+					Loop       string `json:"Loop"`
+					FinalDelay string `json:"FinalDelay"`
+				} `json:"Gif"`
+			} `json:"MuxConfig"`
+		} `json:"TemplateList"`
+	} `json:"AnalysisJobList"`
 }
 
 func CreateQueryAnalysisJobListRequest() (request *QueryAnalysisJobListRequest) {

+ 27 - 31
services/mts/query_annotation_job_list.go

@@ -64,44 +64,40 @@ func (client *Client) QueryAnnotationJobListWithCallback(request *QueryAnnotatio
 
 type QueryAnnotationJobListRequest struct {
 	*requests.RpcRequest
-	AnnotationJobIds     string `position:"Query" name:"AnnotationJobIds"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AnnotationJobIds     string `position:"Query" name:"AnnotationJobIds"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryAnnotationJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	AnnotationJobList struct {
-		AnnotationJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			VideoAnnotationResult struct {
-				Details     string `json:"Details" xml:"Details"`
-				Annotations struct {
-					Annotation []struct {
-						Label string `json:"Label" xml:"Label"`
-						Score string `json:"Score" xml:"Score"`
-					} `json:"Annotation" xml:"Annotation"`
-				} `json:"Annotations" xml:"Annotations"`
-			} `json:"VideoAnnotationResult" xml:"VideoAnnotationResult"`
-		} `json:"AnnotationJob" xml:"AnnotationJob"`
-	} `json:"AnnotationJobList" xml:"AnnotationJobList"`
+	RequestId         string   `json:"RequestId"`
+	NonExistIds       []string `json:"NonExistIds"`
+	AnnotationJobList []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		VideoAnnotationResult struct {
+			Details     string `json:"Details"`
+			Annotations []struct {
+				Label string `json:"Label"`
+				Score string `json:"Score"`
+			} `json:"Annotations"`
+		} `json:"VideoAnnotationResult"`
+	} `json:"AnnotationJobList"`
 }
 
 func CreateQueryAnnotationJobListRequest() (request *QueryAnnotationJobListRequest) {

+ 32 - 36
services/mts/query_asr_job_list.go

@@ -64,50 +64,46 @@ func (client *Client) QueryAsrJobListWithCallback(request *QueryAsrJobListReques
 
 type QueryAsrJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryAsrJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	JobList struct {
-		Job []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			AsrConfig struct {
-				Scene string `json:"Scene" xml:"Scene"`
-			} `json:"AsrConfig" xml:"AsrConfig"`
-			AsrResult struct {
-				Duration    string `json:"Duration" xml:"Duration"`
-				AsrTextList struct {
-					AsrText []struct {
-						StartTime  int    `json:"StartTime" xml:"StartTime"`
-						EndTime    string `json:"EndTime" xml:"EndTime"`
-						ChannelId  string `json:"ChannelId" xml:"ChannelId"`
-						SpeechRate string `json:"SpeechRate" xml:"SpeechRate"`
-						Text       string `json:"Text" xml:"Text"`
-					} `json:"AsrText" xml:"AsrText"`
-				} `json:"AsrTextList" xml:"AsrTextList"`
-			} `json:"AsrResult" xml:"AsrResult"`
-		} `json:"Job" xml:"Job"`
-	} `json:"JobList" xml:"JobList"`
+	RequestId   string   `json:"RequestId"`
+	NonExistIds []string `json:"NonExistIds"`
+	JobList     []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		AsrConfig struct {
+			Scene string `json:"Scene"`
+		} `json:"AsrConfig"`
+		AsrResult struct {
+			Duration    string `json:"Duration"`
+			AsrTextList []struct {
+				StartTime  int    `json:"StartTime"`
+				EndTime    string `json:"EndTime"`
+				ChannelId  string `json:"ChannelId"`
+				SpeechRate string `json:"SpeechRate"`
+				Text       string `json:"Text"`
+			} `json:"AsrTextList"`
+		} `json:"AsrResult"`
+	} `json:"JobList"`
 }
 
 func CreateQueryAsrJobListRequest() (request *QueryAsrJobListRequest) {

+ 15 - 17
services/mts/query_asr_pipeline_list.go

@@ -64,31 +64,29 @@ func (client *Client) QueryAsrPipelineListWithCallback(request *QueryAsrPipeline
 
 type QueryAsrPipelineListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	PipelineIds          string `position:"Query" name:"PipelineIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryAsrPipelineListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic     string `json:"Topic" xml:"Topic"`
-				QueueName string `json:"QueueName" xml:"QueueName"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistIds  []string `json:"NonExistIds"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic     string `json:"Topic"`
+			QueueName string `json:"QueueName"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateQueryAsrPipelineListRequest() (request *QueryAsrPipelineListRequest) {

+ 6 - 4
services/mts/query_auth_config.go

@@ -64,17 +64,19 @@ func (client *Client) QueryAuthConfigWithCallback(request *QueryAuthConfigReques
 
 type QueryAuthConfigRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryAuthConfigResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	Key1      string `json:"Key1" xml:"Key1"`
-	Key2      string `json:"Key2" xml:"Key2"`
+	RequestId string `json:"RequestId"`
+	Key1      string `json:"Key1"`
+	Key2      string `json:"Key2"`
 }
 
 func CreateQueryAuthConfigRequest() (request *QueryAuthConfigRequest) {

+ 62 - 72
services/mts/query_censor_job_list.go

@@ -64,86 +64,76 @@ func (client *Client) QueryCensorJobListWithCallback(request *QueryCensorJobList
 
 type QueryCensorJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryCensorJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	CensorJobList struct {
-		CensorJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			CensorConfig struct {
-				Interval   string `json:"Interval" xml:"Interval"`
-				BizType    string `json:"BizType" xml:"BizType"`
-				OutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"OutputFile" xml:"OutputFile"`
-			} `json:"CensorConfig" xml:"CensorConfig"`
-			CensorPornResult struct {
-				Label           string `json:"Label" xml:"Label"`
-				Suggestion      string `json:"Suggestion" xml:"Suggestion"`
-				MaxScore        string `json:"MaxScore" xml:"MaxScore"`
-				AverageScore    string `json:"AverageScore" xml:"AverageScore"`
-				PornCounterList struct {
-					Counter []struct {
-						Count int    `json:"Count" xml:"Count"`
-						Label string `json:"Label" xml:"Label"`
-					} `json:"Counter" xml:"Counter"`
-				} `json:"PornCounterList" xml:"PornCounterList"`
-				PornTopList struct {
-					Top []struct {
-						Label     string `json:"Label" xml:"Label"`
-						Score     string `json:"Score" xml:"Score"`
-						Timestamp string `json:"Timestamp" xml:"Timestamp"`
-						Index     string `json:"Index" xml:"Index"`
-						Object    string `json:"Object" xml:"Object"`
-					} `json:"Top" xml:"Top"`
-				} `json:"PornTopList" xml:"PornTopList"`
-			} `json:"CensorPornResult" xml:"CensorPornResult"`
-			CensorTerrorismResult struct {
-				Label                string `json:"Label" xml:"Label"`
-				Suggestion           string `json:"Suggestion" xml:"Suggestion"`
-				MaxScore             string `json:"MaxScore" xml:"MaxScore"`
-				AverageScore         string `json:"AverageScore" xml:"AverageScore"`
-				TerrorismCounterList struct {
-					Counter []struct {
-						Count int    `json:"Count" xml:"Count"`
-						Label string `json:"Label" xml:"Label"`
-					} `json:"Counter" xml:"Counter"`
-				} `json:"TerrorismCounterList" xml:"TerrorismCounterList"`
-				TerrorismTopList struct {
-					Top []struct {
-						Label     string `json:"Label" xml:"Label"`
-						Score     string `json:"Score" xml:"Score"`
-						Timestamp string `json:"Timestamp" xml:"Timestamp"`
-						Index     string `json:"Index" xml:"Index"`
-						Object    string `json:"Object" xml:"Object"`
-					} `json:"Top" xml:"Top"`
-				} `json:"TerrorismTopList" xml:"TerrorismTopList"`
-			} `json:"CensorTerrorismResult" xml:"CensorTerrorismResult"`
-		} `json:"CensorJob" xml:"CensorJob"`
-	} `json:"CensorJobList" xml:"CensorJobList"`
+	RequestId     string   `json:"RequestId"`
+	NonExistIds   []string `json:"NonExistIds"`
+	CensorJobList []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		CensorConfig struct {
+			Interval   string `json:"Interval"`
+			BizType    string `json:"BizType"`
+			OutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"OutputFile"`
+		} `json:"CensorConfig"`
+		CensorPornResult struct {
+			Label           string `json:"Label"`
+			Suggestion      string `json:"Suggestion"`
+			MaxScore        string `json:"MaxScore"`
+			AverageScore    string `json:"AverageScore"`
+			PornCounterList []struct {
+				Count int    `json:"Count"`
+				Label string `json:"Label"`
+			} `json:"PornCounterList"`
+			PornTopList []struct {
+				Label     string `json:"Label"`
+				Score     string `json:"Score"`
+				Timestamp string `json:"Timestamp"`
+				Index     string `json:"Index"`
+				Object    string `json:"Object"`
+			} `json:"PornTopList"`
+		} `json:"CensorPornResult"`
+		CensorTerrorismResult struct {
+			Label                string `json:"Label"`
+			Suggestion           string `json:"Suggestion"`
+			MaxScore             string `json:"MaxScore"`
+			AverageScore         string `json:"AverageScore"`
+			TerrorismCounterList []struct {
+				Count int    `json:"Count"`
+				Label string `json:"Label"`
+			} `json:"TerrorismCounterList"`
+			TerrorismTopList []struct {
+				Label     string `json:"Label"`
+				Score     string `json:"Score"`
+				Timestamp string `json:"Timestamp"`
+				Index     string `json:"Index"`
+				Object    string `json:"Object"`
+			} `json:"TerrorismTopList"`
+		} `json:"CensorTerrorismResult"`
+	} `json:"CensorJobList"`
 }
 
 func CreateQueryCensorJobListRequest() (request *QueryCensorJobListRequest) {

+ 15 - 17
services/mts/query_censor_pipeline_list.go

@@ -64,31 +64,29 @@ func (client *Client) QueryCensorPipelineListWithCallback(request *QueryCensorPi
 
 type QueryCensorPipelineListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	PipelineIds          string `position:"Query" name:"PipelineIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryCensorPipelineListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic string `json:"Topic" xml:"Topic"`
-				Queue string `json:"Queue" xml:"Queue"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistIds  []string `json:"NonExistIds"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateQueryCensorPipelineListRequest() (request *QueryCensorPipelineListRequest) {

+ 32 - 36
services/mts/query_cover_job_list.go

@@ -64,49 +64,45 @@ func (client *Client) QueryCoverJobListWithCallback(request *QueryCoverJobListRe
 
 type QueryCoverJobListRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	CoverJobIds          string `position:"Query" name:"CoverJobIds"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	CoverJobIds          string `position:"Query" name:"CoverJobIds"`
 }
 
 type QueryCoverJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	CoverJobList struct {
-		CoverJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			CoverConfig struct {
-				OutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"OutputFile" xml:"OutputFile"`
-			} `json:"CoverConfig" xml:"CoverConfig"`
-			CoverImageList struct {
-				CoverImage []struct {
-					Score string `json:"Score" xml:"Score"`
-					Url   string `json:"Url" xml:"Url"`
-					Time  string `json:"Time" xml:"Time"`
-				} `json:"CoverImage" xml:"CoverImage"`
-			} `json:"CoverImageList" xml:"CoverImageList"`
-		} `json:"CoverJob" xml:"CoverJob"`
-	} `json:"CoverJobList" xml:"CoverJobList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistIds  []string `json:"NonExistIds"`
+	CoverJobList []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		CoverConfig struct {
+			OutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"OutputFile"`
+		} `json:"CoverConfig"`
+		CoverImageList []struct {
+			Score string `json:"Score"`
+			Url   string `json:"Url"`
+			Time  string `json:"Time"`
+		} `json:"CoverImageList"`
+	} `json:"CoverJobList"`
 }
 
 func CreateQueryCoverJobListRequest() (request *QueryCoverJobListRequest) {

+ 16 - 18
services/mts/query_cover_pipeline_list.go

@@ -64,32 +64,30 @@ func (client *Client) QueryCoverPipelineListWithCallback(request *QueryCoverPipe
 
 type QueryCoverPipelineListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	PipelineIds          string `position:"Query" name:"PipelineIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryCoverPipelineListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			Role         string `json:"Role" xml:"Role"`
-			NotifyConfig struct {
-				Topic string `json:"Topic" xml:"Topic"`
-				Queue string `json:"Queue" xml:"Queue"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistIds  []string `json:"NonExistIds"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		Role         string `json:"Role"`
+		NotifyConfig struct {
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateQueryCoverPipelineListRequest() (request *QueryCoverPipelineListRequest) {

+ 294 - 320
services/mts/query_editing_job_list.go

@@ -64,334 +64,308 @@ func (client *Client) QueryEditingJobListWithCallback(request *QueryEditingJobLi
 
 type QueryEditingJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryEditingJobListResponse struct {
 	*responses.BaseResponse
-	RequestId      string `json:"RequestId" xml:"RequestId"`
-	NonExistJobIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistJobIds" xml:"NonExistJobIds"`
-	JobList struct {
-		Job []struct {
-			JobId         string `json:"JobId" xml:"JobId"`
-			State         string `json:"State" xml:"State"`
-			Code          string `json:"Code" xml:"Code"`
-			Message       string `json:"Message" xml:"Message"`
-			Percent       int64  `json:"Percent" xml:"Percent"`
-			PipelineId    string `json:"PipelineId" xml:"PipelineId"`
-			CreationTime  string `json:"CreationTime" xml:"CreationTime"`
-			FinishTime    string `json:"FinishTime" xml:"FinishTime"`
-			EditingConfig struct {
-				TemplateId         string `json:"TemplateId" xml:"TemplateId"`
-				UserData           string `json:"UserData" xml:"UserData"`
-				Rotate             string `json:"Rotate" xml:"Rotate"`
-				VideoStreamMap     string `json:"VideoStreamMap" xml:"VideoStreamMap"`
-				AudioStreamMap     string `json:"AudioStreamMap" xml:"AudioStreamMap"`
-				DeWatermark        string `json:"DeWatermark" xml:"DeWatermark"`
-				Priority           string `json:"Priority" xml:"Priority"`
-				WaterMarkConfigUrl string `json:"WaterMarkConfigUrl" xml:"WaterMarkConfigUrl"`
-				MergeConfigUrl     string `json:"MergeConfigUrl" xml:"MergeConfigUrl"`
-				DigiWaterMark      struct {
-					Type       string `json:"Type" xml:"Type"`
-					Alpha      string `json:"Alpha" xml:"Alpha"`
-					InputFile2 struct {
-						Bucket   string `json:"Bucket" xml:"Bucket"`
-						Location string `json:"Location" xml:"Location"`
-						Object   string `json:"Object" xml:"Object"`
-					} `json:"InputFile" xml:"InputFile"`
-				} `json:"DigiWaterMark" xml:"DigiWaterMark"`
-				OutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-					RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-				} `json:"OutputFile" xml:"OutputFile"`
-				M3U8NonStandardSupport struct {
-					TS struct {
-						Md5Support  bool `json:"Md5Support" xml:"Md5Support"`
-						SizeSupport bool `json:"SizeSupport" xml:"SizeSupport"`
-					} `json:"TS" xml:"TS"`
-				} `json:"M3U8NonStandardSupport" xml:"M3U8NonStandardSupport"`
-				Properties struct {
-					Width      string `json:"Width" xml:"Width"`
-					Height     string `json:"Height" xml:"Height"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Duration   string `json:"Duration" xml:"Duration"`
-					Fps        string `json:"Fps" xml:"Fps"`
-					FileSize   string `json:"FileSize" xml:"FileSize"`
-					FileFormat string `json:"FileFormat" xml:"FileFormat"`
-					Streams    struct {
-						VideoStreamList struct {
-							VideoStream []struct {
-								Index          string `json:"Index" xml:"Index"`
-								CodecName      string `json:"CodecName" xml:"CodecName"`
-								CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-								Profile        string `json:"Profile" xml:"Profile"`
-								CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-								CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-								CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-								Width          string `json:"Width" xml:"Width"`
-								Height         string `json:"Height" xml:"Height"`
-								HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-								Sar            string `json:"Sar" xml:"Sar"`
-								Dar            string `json:"Dar" xml:"Dar"`
-								PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-								Level          string `json:"Level" xml:"Level"`
-								Fps            string `json:"Fps" xml:"Fps"`
-								AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-								Timebase       string `json:"Timebase" xml:"Timebase"`
-								StartTime      string `json:"StartTime" xml:"StartTime"`
-								Duration       string `json:"Duration" xml:"Duration"`
-								Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-								NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-								Lang           string `json:"Lang" xml:"Lang"`
-								NetworkCost    struct {
-									PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-									CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-									AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-								} `json:"NetworkCost" xml:"NetworkCost"`
-							} `json:"VideoStream" xml:"VideoStream"`
-						} `json:"VideoStreamList" xml:"VideoStreamList"`
-						AudioStreamList struct {
-							AudioStream []struct {
-								Index          string `json:"Index" xml:"Index"`
-								CodecName      string `json:"CodecName" xml:"CodecName"`
-								CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-								CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-								CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-								CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-								SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-								Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-								Channels       string `json:"Channels" xml:"Channels"`
-								ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-								Timebase       string `json:"Timebase" xml:"Timebase"`
-								StartTime      string `json:"StartTime" xml:"StartTime"`
-								Duration       string `json:"Duration" xml:"Duration"`
-								Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-								NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-								Lang           string `json:"Lang" xml:"Lang"`
-							} `json:"AudioStream" xml:"AudioStream"`
-						} `json:"AudioStreamList" xml:"AudioStreamList"`
-						SubtitleStreamList struct {
-							SubtitleStream []struct {
-								Index string `json:"Index" xml:"Index"`
-								Lang  string `json:"Lang" xml:"Lang"`
-							} `json:"SubtitleStream" xml:"SubtitleStream"`
-						} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-					} `json:"Streams" xml:"Streams"`
-					Format struct {
-						NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-						NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-						FormatName     string `json:"FormatName" xml:"FormatName"`
-						FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-						StartTime      string `json:"StartTime" xml:"StartTime"`
-						Duration       string `json:"Duration" xml:"Duration"`
-						Size           string `json:"Size" xml:"Size"`
-						Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-					} `json:"Format" xml:"Format"`
-				} `json:"Properties" xml:"Properties"`
-				Clip struct {
-					TimeSpan struct {
-						Seek     string `json:"Seek" xml:"Seek"`
-						Duration string `json:"Duration" xml:"Duration"`
-					} `json:"TimeSpan" xml:"TimeSpan"`
-				} `json:"Clip" xml:"Clip"`
-				SuperReso struct {
-					IsHalfSample string `json:"IsHalfSample" xml:"IsHalfSample"`
-				} `json:"SuperReso" xml:"SuperReso"`
-				SubtitleConfig struct {
-					SubtitleList struct {
-						Subtitle []struct {
-							Map string `json:"Map" xml:"Map"`
-						} `json:"Subtitle" xml:"Subtitle"`
-					} `json:"SubtitleList" xml:"SubtitleList"`
-					ExtSubtitleList struct {
-						ExtSubtitle []struct {
-							FontName string `json:"FontName" xml:"FontName"`
-							CharEnc  string `json:"CharEnc" xml:"CharEnc"`
-							Input    struct {
-								Bucket   string `json:"Bucket" xml:"Bucket"`
-								Location string `json:"Location" xml:"Location"`
-								Object   string `json:"Object" xml:"Object"`
-							} `json:"Input" xml:"Input"`
-						} `json:"ExtSubtitle" xml:"ExtSubtitle"`
-					} `json:"ExtSubtitleList" xml:"ExtSubtitleList"`
-				} `json:"SubtitleConfig" xml:"SubtitleConfig"`
-				TransConfig struct {
-					TransMode               string `json:"TransMode" xml:"TransMode"`
-					IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-					IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-					IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-					IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-					AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-					IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-					IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-					Duration                string `json:"Duration" xml:"Duration"`
-				} `json:"TransConfig" xml:"TransConfig"`
-				MuxConfig struct {
-					Segment struct {
-						Duration string `json:"Duration" xml:"Duration"`
-					} `json:"Segment" xml:"Segment"`
-					Gif struct {
-						Loop            string `json:"Loop" xml:"Loop"`
-						FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-						IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-						DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-					} `json:"Gif" xml:"Gif"`
-				} `json:"MuxConfig" xml:"MuxConfig"`
-				Audio struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Samplerate string `json:"Samplerate" xml:"Samplerate"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Channels   string `json:"Channels" xml:"Channels"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-					Volume     struct {
-						Level  string `json:"Level" xml:"Level"`
-						Method string `json:"Method" xml:"Method"`
-					} `json:"Volume" xml:"Volume"`
-				} `json:"Audio" xml:"Audio"`
-				Video struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Crf        string `json:"Crf" xml:"Crf"`
-					Width      string `json:"Width" xml:"Width"`
-					Height     string `json:"Height" xml:"Height"`
-					Fps        string `json:"Fps" xml:"Fps"`
-					Gop        string `json:"Gop" xml:"Gop"`
-					Preset     string `json:"Preset" xml:"Preset"`
-					ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-					Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-					Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-					PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-					Degrain    string `json:"Degrain" xml:"Degrain"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-					Crop       string `json:"Crop" xml:"Crop"`
-					Pad        string `json:"Pad" xml:"Pad"`
-					MaxFps     string `json:"MaxFps" xml:"MaxFps"`
-					BitrateBnd struct {
-						Max string `json:"Max" xml:"Max"`
-						Min string `json:"Min" xml:"Min"`
-					} `json:"BitrateBnd" xml:"BitrateBnd"`
-				} `json:"Video" xml:"Video"`
-				Container struct {
-					Format string `json:"Format" xml:"Format"`
-				} `json:"Container" xml:"Container"`
-				Encryption struct {
-					Type    string `json:"Type" xml:"Type"`
-					Id      string `json:"Id" xml:"Id"`
-					Key     string `json:"Key" xml:"Key"`
-					KeyUri  string `json:"KeyUri" xml:"KeyUri"`
-					KeyType string `json:"KeyType" xml:"KeyType"`
-					SkipCnt string `json:"SkipCnt" xml:"SkipCnt"`
-				} `json:"Encryption" xml:"Encryption"`
-				Editing struct {
-					Timeline struct {
-						TimelineConfig struct {
-							TimelineConfigVideo struct {
-								Width   string `json:"Width" xml:"Width"`
-								Height  string `json:"Height" xml:"Height"`
-								BgColor string `json:"BgColor" xml:"BgColor"`
-								Fps     string `json:"Fps" xml:"Fps"`
-							} `json:"TimelineConfigVideo" xml:"TimelineConfigVideo"`
-							TimelineConfigAudio struct {
-								Samplerate    string `json:"Samplerate" xml:"Samplerate"`
-								ChannelLayout string `json:"ChannelLayout" xml:"ChannelLayout"`
-								Channels      string `json:"Channels" xml:"Channels"`
-							} `json:"TimelineConfigAudio" xml:"TimelineConfigAudio"`
-						} `json:"TimelineConfig" xml:"TimelineConfig"`
-						TrackList struct {
-							Track []struct {
-								Id    string `json:"Id" xml:"Id"`
-								Type  string `json:"Type" xml:"Type"`
-								Order string `json:"Order" xml:"Order"`
-								Clips struct {
-									Clip []struct {
-										ClipID      string `json:"clipID" xml:"clipID"`
-										In          string `json:"In" xml:"In"`
-										Out         string `json:"Out" xml:"Out"`
-										ClipsConfig struct {
-											ClipsConfigVideo struct {
-												L string `json:"L" xml:"L"`
-												T string `json:"T" xml:"T"`
-											} `json:"ClipsConfigVideo" xml:"ClipsConfigVideo"`
-										} `json:"ClipsConfig" xml:"ClipsConfig"`
-									} `json:"Clip" xml:"Clip"`
-								} `json:"Clips" xml:"Clips"`
-							} `json:"Track" xml:"Track"`
-						} `json:"TrackList" xml:"TrackList"`
-					} `json:"Timeline" xml:"Timeline"`
-					ClipList struct {
-						Clip []struct {
-							Id            string `json:"Id" xml:"Id"`
-							Type          string `json:"Type" xml:"Type"`
-							SourceType    string `json:"SourceType" xml:"SourceType"`
-							SourceID      string `json:"SourceID" xml:"SourceID"`
-							SourceStrmMap string `json:"SourceStrmMap" xml:"SourceStrmMap"`
-							In            string `json:"In" xml:"In"`
-							Out           string `json:"Out" xml:"Out"`
-							Effects       struct {
-								Effect []struct {
-									Effect       string `json:"Effect" xml:"Effect"`
-									EffectConfig string `json:"EffectConfig" xml:"EffectConfig"`
-								} `json:"Effect" xml:"Effect"`
-							} `json:"Effects" xml:"Effects"`
-						} `json:"Clip" xml:"Clip"`
-					} `json:"ClipList" xml:"ClipList"`
-				} `json:"Editing" xml:"Editing"`
-				WaterMarkList struct {
-					WaterMark []struct {
-						WaterMarkTemplateId string `json:"WaterMarkTemplateId" xml:"WaterMarkTemplateId"`
-						Width               string `json:"Width" xml:"Width"`
-						Height              string `json:"Height" xml:"Height"`
-						Dx                  string `json:"Dx" xml:"Dx"`
-						Dy                  string `json:"Dy" xml:"Dy"`
-						ReferPos            string `json:"ReferPos" xml:"ReferPos"`
-						Type                string `json:"Type" xml:"Type"`
-						InputFile1          struct {
-							Bucket   string `json:"Bucket" xml:"Bucket"`
-							Location string `json:"Location" xml:"Location"`
-							Object   string `json:"Object" xml:"Object"`
-						} `json:"InputFile" xml:"InputFile"`
-					} `json:"WaterMark" xml:"WaterMark"`
-				} `json:"WaterMarkList" xml:"WaterMarkList"`
-				MergeList struct {
-					Merge []struct {
-						MergeURL string `json:"MergeURL" xml:"MergeURL"`
-						Start    string `json:"Start" xml:"Start"`
-						Duration string `json:"Duration" xml:"Duration"`
-						RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-					} `json:"Merge" xml:"Merge"`
-				} `json:"MergeList" xml:"MergeList"`
-			} `json:"EditingConfig" xml:"EditingConfig"`
-			MNSMessageResult struct {
-				MessageId    string `json:"MessageId" xml:"MessageId"`
-				ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-				ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-			} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-			EditingInputs struct {
-				EditingInput []struct {
-					Id        string `json:"Id" xml:"Id"`
-					InputFile struct {
-						Bucket   string `json:"Bucket" xml:"Bucket"`
-						Location string `json:"Location" xml:"Location"`
-						Object   string `json:"Object" xml:"Object"`
-					} `json:"InputFile" xml:"InputFile"`
-					InputConfig struct {
-						DeinterlaceMethod string `json:"DeinterlaceMethod" xml:"DeinterlaceMethod"`
-						IsNormalSar       string `json:"IsNormalSar" xml:"IsNormalSar"`
-					} `json:"InputConfig" xml:"InputConfig"`
-				} `json:"EditingInput" xml:"EditingInput"`
-			} `json:"EditingInputs" xml:"EditingInputs"`
-		} `json:"Job" xml:"Job"`
-	} `json:"JobList" xml:"JobList"`
+	RequestId      string   `json:"RequestId"`
+	NonExistJobIds []string `json:"NonExistJobIds"`
+	JobList        []struct {
+		JobId         string `json:"JobId"`
+		State         string `json:"State"`
+		Code          string `json:"Code"`
+		Message       string `json:"Message"`
+		Percent       int64  `json:"Percent"`
+		PipelineId    string `json:"PipelineId"`
+		CreationTime  string `json:"CreationTime"`
+		FinishTime    string `json:"FinishTime"`
+		EditingConfig struct {
+			TemplateId         string `json:"TemplateId"`
+			UserData           string `json:"UserData"`
+			Rotate             string `json:"Rotate"`
+			VideoStreamMap     string `json:"VideoStreamMap"`
+			AudioStreamMap     string `json:"AudioStreamMap"`
+			DeWatermark        string `json:"DeWatermark"`
+			Priority           string `json:"Priority"`
+			WaterMarkConfigUrl string `json:"WaterMarkConfigUrl"`
+			MergeConfigUrl     string `json:"MergeConfigUrl"`
+			DigiWaterMark      struct {
+				Type       string `json:"Type"`
+				Alpha      string `json:"Alpha"`
+				InputFile2 struct {
+					Bucket   string `json:"Bucket"`
+					Location string `json:"Location"`
+					Object   string `json:"Object"`
+				} `json:"InputFile"`
+			} `json:"DigiWaterMark"`
+			OutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"OutputFile"`
+			M3U8NonStandardSupport struct {
+				TS struct {
+					Md5Support  bool `json:"Md5Support"`
+					SizeSupport bool `json:"SizeSupport"`
+				} `json:"TS"`
+			} `json:"M3U8NonStandardSupport"`
+			Properties struct {
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Bitrate    string `json:"Bitrate"`
+				Duration   string `json:"Duration"`
+				Fps        string `json:"Fps"`
+				FileSize   string `json:"FileSize"`
+				FileFormat string `json:"FileFormat"`
+				Streams    struct {
+					VideoStreamList []struct {
+						Index          string `json:"Index"`
+						CodecName      string `json:"CodecName"`
+						CodecLongName  string `json:"CodecLongName"`
+						Profile        string `json:"Profile"`
+						CodecTimeBase  string `json:"CodecTimeBase"`
+						CodecTagString string `json:"CodecTagString"`
+						CodecTag       string `json:"CodecTag"`
+						Width          string `json:"Width"`
+						Height         string `json:"Height"`
+						HasBFrames     string `json:"HasBFrames"`
+						Sar            string `json:"Sar"`
+						Dar            string `json:"Dar"`
+						PixFmt         string `json:"PixFmt"`
+						Level          string `json:"Level"`
+						Fps            string `json:"Fps"`
+						AvgFPS         string `json:"AvgFPS"`
+						Timebase       string `json:"Timebase"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Bitrate        string `json:"Bitrate"`
+						NumFrames      string `json:"NumFrames"`
+						Lang           string `json:"Lang"`
+						NetworkCost    struct {
+							PreloadTime   string `json:"PreloadTime"`
+							CostBandwidth string `json:"CostBandwidth"`
+							AvgBitrate    string `json:"AvgBitrate"`
+						} `json:"NetworkCost"`
+					} `json:"VideoStreamList"`
+					AudioStreamList []struct {
+						Index          string `json:"Index"`
+						CodecName      string `json:"CodecName"`
+						CodecTimeBase  string `json:"CodecTimeBase"`
+						CodecLongName  string `json:"CodecLongName"`
+						CodecTagString string `json:"CodecTagString"`
+						CodecTag       string `json:"CodecTag"`
+						SampleFmt      string `json:"SampleFmt"`
+						Samplerate     string `json:"Samplerate"`
+						Channels       string `json:"Channels"`
+						ChannelLayout  string `json:"ChannelLayout"`
+						Timebase       string `json:"Timebase"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Bitrate        string `json:"Bitrate"`
+						NumFrames      string `json:"NumFrames"`
+						Lang           string `json:"Lang"`
+					} `json:"AudioStreamList"`
+					SubtitleStreamList []struct {
+						Index string `json:"Index"`
+						Lang  string `json:"Lang"`
+					} `json:"SubtitleStreamList"`
+				} `json:"Streams"`
+				Format struct {
+					NumStreams     string `json:"NumStreams"`
+					NumPrograms    string `json:"NumPrograms"`
+					FormatName     string `json:"FormatName"`
+					FormatLongName string `json:"FormatLongName"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Size           string `json:"Size"`
+					Bitrate        string `json:"Bitrate"`
+				} `json:"Format"`
+			} `json:"Properties"`
+			Clip struct {
+				TimeSpan struct {
+					Seek     string `json:"Seek"`
+					Duration string `json:"Duration"`
+				} `json:"TimeSpan"`
+			} `json:"Clip"`
+			SuperReso struct {
+				IsHalfSample string `json:"IsHalfSample"`
+			} `json:"SuperReso"`
+			SubtitleConfig struct {
+				SubtitleList []struct {
+					Map string `json:"Map"`
+				} `json:"SubtitleList"`
+				ExtSubtitleList []struct {
+					FontName string `json:"FontName"`
+					CharEnc  string `json:"CharEnc"`
+					Input    struct {
+						Bucket   string `json:"Bucket"`
+						Location string `json:"Location"`
+						Object   string `json:"Object"`
+					} `json:"Input"`
+				} `json:"ExtSubtitleList"`
+			} `json:"SubtitleConfig"`
+			TransConfig struct {
+				TransMode               string `json:"TransMode"`
+				IsCheckReso             string `json:"IsCheckReso"`
+				IsCheckResoFail         string `json:"IsCheckResoFail"`
+				IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+				IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+				AdjDarMethod            string `json:"AdjDarMethod"`
+				IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+				IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+				Duration                string `json:"Duration"`
+			} `json:"TransConfig"`
+			MuxConfig struct {
+				Segment struct {
+					Duration string `json:"Duration"`
+				} `json:"Segment"`
+				Gif struct {
+					Loop            string `json:"Loop"`
+					FinalDelay      string `json:"FinalDelay"`
+					IsCustomPalette string `json:"IsCustomPalette"`
+					DitherMode      string `json:"DitherMode"`
+				} `json:"Gif"`
+			} `json:"MuxConfig"`
+			Audio struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Samplerate string `json:"Samplerate"`
+				Bitrate    string `json:"Bitrate"`
+				Channels   string `json:"Channels"`
+				Qscale     string `json:"Qscale"`
+				Volume     struct {
+					Level  string `json:"Level"`
+					Method string `json:"Method"`
+				} `json:"Volume"`
+			} `json:"Audio"`
+			Video struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Bitrate    string `json:"Bitrate"`
+				Crf        string `json:"Crf"`
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Fps        string `json:"Fps"`
+				Gop        string `json:"Gop"`
+				Preset     string `json:"Preset"`
+				ScanMode   string `json:"ScanMode"`
+				Bufsize    string `json:"Bufsize"`
+				Maxrate    string `json:"Maxrate"`
+				PixFmt     string `json:"PixFmt"`
+				Degrain    string `json:"Degrain"`
+				Qscale     string `json:"Qscale"`
+				Crop       string `json:"Crop"`
+				Pad        string `json:"Pad"`
+				MaxFps     string `json:"MaxFps"`
+				BitrateBnd struct {
+					Max string `json:"Max"`
+					Min string `json:"Min"`
+				} `json:"BitrateBnd"`
+			} `json:"Video"`
+			Container struct {
+				Format string `json:"Format"`
+			} `json:"Container"`
+			Encryption struct {
+				Type    string `json:"Type"`
+				Id      string `json:"Id"`
+				Key     string `json:"Key"`
+				KeyUri  string `json:"KeyUri"`
+				KeyType string `json:"KeyType"`
+				SkipCnt string `json:"SkipCnt"`
+			} `json:"Encryption"`
+			Editing struct {
+				Timeline struct {
+					TimelineConfig struct {
+						TimelineConfigVideo struct {
+							Width   string `json:"Width"`
+							Height  string `json:"Height"`
+							BgColor string `json:"BgColor"`
+							Fps     string `json:"Fps"`
+						} `json:"TimelineConfigVideo"`
+						TimelineConfigAudio struct {
+							Samplerate    string `json:"Samplerate"`
+							ChannelLayout string `json:"ChannelLayout"`
+							Channels      string `json:"Channels"`
+						} `json:"TimelineConfigAudio"`
+					} `json:"TimelineConfig"`
+					TrackList []struct {
+						Id    string `json:"Id"`
+						Type  string `json:"Type"`
+						Order string `json:"Order"`
+						Clips []struct {
+							ClipID      string `json:"clipID"`
+							In          string `json:"In"`
+							Out         string `json:"Out"`
+							ClipsConfig struct {
+								ClipsConfigVideo struct {
+									L string `json:"L"`
+									T string `json:"T"`
+								} `json:"ClipsConfigVideo"`
+							} `json:"ClipsConfig"`
+						} `json:"Clips"`
+					} `json:"TrackList"`
+				} `json:"Timeline"`
+				ClipList []struct {
+					Id            string `json:"Id"`
+					Type          string `json:"Type"`
+					SourceType    string `json:"SourceType"`
+					SourceID      string `json:"SourceID"`
+					SourceStrmMap string `json:"SourceStrmMap"`
+					In            string `json:"In"`
+					Out           string `json:"Out"`
+					Effects       []struct {
+						Effect       string `json:"Effect"`
+						EffectConfig string `json:"EffectConfig"`
+					} `json:"Effects"`
+				} `json:"ClipList"`
+			} `json:"Editing"`
+			WaterMarkList []struct {
+				WaterMarkTemplateId string `json:"WaterMarkTemplateId"`
+				Width               string `json:"Width"`
+				Height              string `json:"Height"`
+				Dx                  string `json:"Dx"`
+				Dy                  string `json:"Dy"`
+				ReferPos            string `json:"ReferPos"`
+				Type                string `json:"Type"`
+				InputFile1          struct {
+					Bucket   string `json:"Bucket"`
+					Location string `json:"Location"`
+					Object   string `json:"Object"`
+				} `json:"InputFile"`
+			} `json:"WaterMarkList"`
+			MergeList []struct {
+				MergeURL string `json:"MergeURL"`
+				Start    string `json:"Start"`
+				Duration string `json:"Duration"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"MergeList"`
+		} `json:"EditingConfig"`
+		MNSMessageResult struct {
+			MessageId    string `json:"MessageId"`
+			ErrorMessage string `json:"ErrorMessage"`
+			ErrorCode    string `json:"ErrorCode"`
+		} `json:"MNSMessageResult"`
+		EditingInputs []struct {
+			Id        string `json:"Id"`
+			InputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"InputFile"`
+			InputConfig struct {
+				DeinterlaceMethod string `json:"DeinterlaceMethod"`
+				IsNormalSar       string `json:"IsNormalSar"`
+			} `json:"InputConfig"`
+		} `json:"EditingInputs"`
+	} `json:"JobList"`
 }
 
 func CreateQueryEditingJobListRequest() (request *QueryEditingJobListRequest) {

+ 30 - 36
services/mts/query_facerecog_job_list.go

@@ -64,49 +64,43 @@ func (client *Client) QueryFacerecogJobListWithCallback(request *QueryFacerecogJ
 
 type QueryFacerecogJobListRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	FacerecogJobIds      string `position:"Query" name:"FacerecogJobIds"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	FacerecogJobIds      string `position:"Query" name:"FacerecogJobIds"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryFacerecogJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	FacerecogJobList struct {
-		FacerecogJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			VideoFacerecogResult struct {
-				Facerecogs struct {
-					Facerecog []struct {
-						Time  string `json:"Time" xml:"Time"`
-						Faces struct {
-							Face []struct {
-								Name   string `json:"Name" xml:"Name"`
-								Score  string `json:"Score" xml:"Score"`
-								Target string `json:"Target" xml:"Target"`
-							} `json:"Face" xml:"Face"`
-						} `json:"Faces" xml:"Faces"`
-					} `json:"Facerecog" xml:"Facerecog"`
-				} `json:"Facerecogs" xml:"Facerecogs"`
-			} `json:"VideoFacerecogResult" xml:"VideoFacerecogResult"`
-		} `json:"FacerecogJob" xml:"FacerecogJob"`
-	} `json:"FacerecogJobList" xml:"FacerecogJobList"`
+	RequestId        string   `json:"RequestId"`
+	NonExistIds      []string `json:"NonExistIds"`
+	FacerecogJobList []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		VideoFacerecogResult struct {
+			Facerecogs []struct {
+				Time  string `json:"Time"`
+				Faces []struct {
+					Name   string `json:"Name"`
+					Score  string `json:"Score"`
+					Target string `json:"Target"`
+				} `json:"Faces"`
+			} `json:"Facerecogs"`
+		} `json:"VideoFacerecogResult"`
+	} `json:"FacerecogJobList"`
 }
 
 func CreateQueryFacerecogJobListRequest() (request *QueryFacerecogJobListRequest) {

+ 125 - 0
services/mts/query_fp_shot_job_list.go

@@ -0,0 +1,125 @@
+package mts
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+func (client *Client) QueryFpShotJobList(request *QueryFpShotJobListRequest) (response *QueryFpShotJobListResponse, err error) {
+	response = CreateQueryFpShotJobListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+func (client *Client) QueryFpShotJobListWithChan(request *QueryFpShotJobListRequest) (<-chan *QueryFpShotJobListResponse, <-chan error) {
+	responseChan := make(chan *QueryFpShotJobListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryFpShotJobList(request)
+		responseChan <- response
+		errChan <- err
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+func (client *Client) QueryFpShotJobListWithCallback(request *QueryFpShotJobListRequest, callback func(response *QueryFpShotJobListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryFpShotJobListResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryFpShotJobList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+type QueryFpShotJobListRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	JobIds               string `position:"Query" name:"JobIds"`
+	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+}
+
+type QueryFpShotJobListResponse struct {
+	*responses.BaseResponse
+	RequestId     string   `json:"RequestId"`
+	NonExistIds   []string `json:"NonExistIds"`
+	FpShotJobList []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		InputFile    struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"InputFile"`
+		FpShotResult struct {
+			FpShots []struct {
+				PrimaryKey   string `json:"PrimaryKey"`
+				Similarity   string `json:"Similarity"`
+				FpShotSlices []struct {
+					Input struct {
+						Start    string `json:"Start"`
+						Duration string `json:"Duration"`
+					} `json:"Input"`
+					Duplication struct {
+						Start    string `json:"Start"`
+						Duration string `json:"Duration"`
+					} `json:"Duplication"`
+				} `json:"FpShotSlices"`
+			} `json:"FpShots"`
+		} `json:"FpShotResult"`
+	} `json:"FpShotJobList"`
+}
+
+func CreateQueryFpShotJobListRequest() (request *QueryFpShotJobListRequest) {
+	request = &QueryFpShotJobListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Mts", "2014-06-18", "QueryFpShotJobList", "", "")
+	return
+}
+
+func CreateQueryFpShotJobListResponse() (response *QueryFpShotJobListResponse) {
+	response = &QueryFpShotJobListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 249 - 271
services/mts/query_job_list.go

@@ -64,285 +64,263 @@ func (client *Client) QueryJobListWithCallback(request *QueryJobListRequest, cal
 
 type QueryJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryJobListResponse struct {
 	*responses.BaseResponse
-	RequestId      string `json:"RequestId" xml:"RequestId"`
-	NonExistJobIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistJobIds" xml:"NonExistJobIds"`
-	JobList struct {
-		Job []struct {
-			JobId        string `json:"JobId" xml:"JobId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			Percent      int64  `json:"Percent" xml:"Percent"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			FinishTime   string `json:"FinishTime" xml:"FinishTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			Output struct {
-				TemplateId         string `json:"TemplateId" xml:"TemplateId"`
-				UserData           string `json:"UserData" xml:"UserData"`
-				Rotate             string `json:"Rotate" xml:"Rotate"`
-				VideoStreamMap     string `json:"VideoStreamMap" xml:"VideoStreamMap"`
-				AudioStreamMap     string `json:"AudioStreamMap" xml:"AudioStreamMap"`
-				DeWatermark        string `json:"DeWatermark" xml:"DeWatermark"`
-				Priority           string `json:"Priority" xml:"Priority"`
-				WaterMarkConfigUrl string `json:"WaterMarkConfigUrl" xml:"WaterMarkConfigUrl"`
-				MergeConfigUrl     string `json:"MergeConfigUrl" xml:"MergeConfigUrl"`
-				OutputFile         struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-					RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-				} `json:"OutputFile" xml:"OutputFile"`
-				M3U8NonStandardSupport struct {
-					TS struct {
-						Md5Support  bool `json:"Md5Support" xml:"Md5Support"`
-						SizeSupport bool `json:"SizeSupport" xml:"SizeSupport"`
-					} `json:"TS" xml:"TS"`
-				} `json:"M3U8NonStandardSupport" xml:"M3U8NonStandardSupport"`
-				Properties struct {
-					Width      string `json:"Width" xml:"Width"`
-					Height     string `json:"Height" xml:"Height"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Duration   string `json:"Duration" xml:"Duration"`
-					Fps        string `json:"Fps" xml:"Fps"`
-					FileSize   string `json:"FileSize" xml:"FileSize"`
-					FileFormat string `json:"FileFormat" xml:"FileFormat"`
-					Streams    struct {
-						VideoStreamList struct {
-							VideoStream []struct {
-								Index          string `json:"Index" xml:"Index"`
-								CodecName      string `json:"CodecName" xml:"CodecName"`
-								CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-								Profile        string `json:"Profile" xml:"Profile"`
-								CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-								CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-								CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-								Width          string `json:"Width" xml:"Width"`
-								Height         string `json:"Height" xml:"Height"`
-								HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-								Sar            string `json:"Sar" xml:"Sar"`
-								Dar            string `json:"Dar" xml:"Dar"`
-								PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-								Level          string `json:"Level" xml:"Level"`
-								Fps            string `json:"Fps" xml:"Fps"`
-								AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-								Timebase       string `json:"Timebase" xml:"Timebase"`
-								StartTime      string `json:"StartTime" xml:"StartTime"`
-								Duration       string `json:"Duration" xml:"Duration"`
-								Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-								NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-								Lang           string `json:"Lang" xml:"Lang"`
-								NetworkCost    struct {
-									PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-									CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-									AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-								} `json:"NetworkCost" xml:"NetworkCost"`
-							} `json:"VideoStream" xml:"VideoStream"`
-						} `json:"VideoStreamList" xml:"VideoStreamList"`
-						AudioStreamList struct {
-							AudioStream []struct {
-								Index          string `json:"Index" xml:"Index"`
-								CodecName      string `json:"CodecName" xml:"CodecName"`
-								CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-								CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-								CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-								CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-								SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-								Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-								Channels       string `json:"Channels" xml:"Channels"`
-								ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-								Timebase       string `json:"Timebase" xml:"Timebase"`
-								StartTime      string `json:"StartTime" xml:"StartTime"`
-								Duration       string `json:"Duration" xml:"Duration"`
-								Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-								NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-								Lang           string `json:"Lang" xml:"Lang"`
-							} `json:"AudioStream" xml:"AudioStream"`
-						} `json:"AudioStreamList" xml:"AudioStreamList"`
-						SubtitleStreamList struct {
-							SubtitleStream []struct {
-								Index string `json:"Index" xml:"Index"`
-								Lang  string `json:"Lang" xml:"Lang"`
-							} `json:"SubtitleStream" xml:"SubtitleStream"`
-						} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-					} `json:"Streams" xml:"Streams"`
-					Format struct {
-						NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-						NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-						FormatName     string `json:"FormatName" xml:"FormatName"`
-						FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-						StartTime      string `json:"StartTime" xml:"StartTime"`
-						Duration       string `json:"Duration" xml:"Duration"`
-						Size           string `json:"Size" xml:"Size"`
-						Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-					} `json:"Format" xml:"Format"`
-					SourceLogos struct {
-						SourceLogo []struct {
-							Source string `json:"Source" xml:"Source"`
-						} `json:"SourceLogo" xml:"SourceLogo"`
-					} `json:"SourceLogos" xml:"SourceLogos"`
-				} `json:"Properties" xml:"Properties"`
-				Clip struct {
-					TimeSpan struct {
-						Seek     string `json:"Seek" xml:"Seek"`
-						Duration string `json:"Duration" xml:"Duration"`
-					} `json:"TimeSpan" xml:"TimeSpan"`
-				} `json:"Clip" xml:"Clip"`
-				SuperReso struct {
-					IsHalfSample string `json:"IsHalfSample" xml:"IsHalfSample"`
-				} `json:"SuperReso" xml:"SuperReso"`
-				SubtitleConfig struct {
-					SubtitleList struct {
-						Subtitle []struct {
-							Map string `json:"Map" xml:"Map"`
-						} `json:"Subtitle" xml:"Subtitle"`
-					} `json:"SubtitleList" xml:"SubtitleList"`
-					ExtSubtitleList struct {
-						ExtSubtitle []struct {
-							FontName string `json:"FontName" xml:"FontName"`
-							CharEnc  string `json:"CharEnc" xml:"CharEnc"`
-							Input1   struct {
-								Bucket   string `json:"Bucket" xml:"Bucket"`
-								Location string `json:"Location" xml:"Location"`
-								Object   string `json:"Object" xml:"Object"`
-							} `json:"Input" xml:"Input"`
-						} `json:"ExtSubtitle" xml:"ExtSubtitle"`
-					} `json:"ExtSubtitleList" xml:"ExtSubtitleList"`
-				} `json:"SubtitleConfig" xml:"SubtitleConfig"`
-				TransConfig struct {
-					TransMode               string `json:"TransMode" xml:"TransMode"`
-					IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-					IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-					IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-					IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-					AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-					IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-					IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-				} `json:"TransConfig" xml:"TransConfig"`
-				MuxConfig struct {
-					Segment struct {
-						Duration string `json:"Duration" xml:"Duration"`
-					} `json:"Segment" xml:"Segment"`
-					Gif struct {
-						Loop            string `json:"Loop" xml:"Loop"`
-						FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-						IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-						DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-					} `json:"Gif" xml:"Gif"`
-				} `json:"MuxConfig" xml:"MuxConfig"`
-				Audio struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Samplerate string `json:"Samplerate" xml:"Samplerate"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Channels   string `json:"Channels" xml:"Channels"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-					Volume     struct {
-						Level  string `json:"Level" xml:"Level"`
-						Method string `json:"Method" xml:"Method"`
-					} `json:"Volume" xml:"Volume"`
-				} `json:"Audio" xml:"Audio"`
-				Video struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Crf        string `json:"Crf" xml:"Crf"`
-					Width      string `json:"Width" xml:"Width"`
-					Height     string `json:"Height" xml:"Height"`
-					Fps        string `json:"Fps" xml:"Fps"`
-					Gop        string `json:"Gop" xml:"Gop"`
-					Preset     string `json:"Preset" xml:"Preset"`
-					ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-					Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-					Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-					PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-					Degrain    string `json:"Degrain" xml:"Degrain"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-					Crop       string `json:"Crop" xml:"Crop"`
-					Pad        string `json:"Pad" xml:"Pad"`
-					MaxFps     string `json:"MaxFps" xml:"MaxFps"`
-					BitrateBnd struct {
-						Max string `json:"Max" xml:"Max"`
-						Min string `json:"Min" xml:"Min"`
-					} `json:"BitrateBnd" xml:"BitrateBnd"`
-				} `json:"Video" xml:"Video"`
-				Container struct {
-					Format string `json:"Format" xml:"Format"`
-				} `json:"Container" xml:"Container"`
-				Encryption struct {
-					Type    string `json:"Type" xml:"Type"`
-					Id      string `json:"Id" xml:"Id"`
-					Key     string `json:"Key" xml:"Key"`
-					KeyUri  string `json:"KeyUri" xml:"KeyUri"`
-					KeyType string `json:"KeyType" xml:"KeyType"`
-					SkipCnt string `json:"SkipCnt" xml:"SkipCnt"`
-				} `json:"Encryption" xml:"Encryption"`
-				WaterMarkList struct {
-					WaterMark []struct {
-						WaterMarkTemplateId string `json:"WaterMarkTemplateId" xml:"WaterMarkTemplateId"`
-						Width               string `json:"Width" xml:"Width"`
-						Height              string `json:"Height" xml:"Height"`
-						Dx                  string `json:"Dx" xml:"Dx"`
-						Dy                  string `json:"Dy" xml:"Dy"`
-						ReferPos            string `json:"ReferPos" xml:"ReferPos"`
-						Type                string `json:"Type" xml:"Type"`
-						InputFile           struct {
-							Bucket   string `json:"Bucket" xml:"Bucket"`
-							Location string `json:"Location" xml:"Location"`
-							Object   string `json:"Object" xml:"Object"`
-						} `json:"InputFile" xml:"InputFile"`
-					} `json:"WaterMark" xml:"WaterMark"`
-				} `json:"WaterMarkList" xml:"WaterMarkList"`
-				MergeList struct {
-					Merge []struct {
-						MergeURL string `json:"MergeURL" xml:"MergeURL"`
-						Start    string `json:"Start" xml:"Start"`
-						Duration string `json:"Duration" xml:"Duration"`
-						RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-					} `json:"Merge" xml:"Merge"`
-				} `json:"MergeList" xml:"MergeList"`
-				OpeningList struct {
-					Opening []struct {
-						OpenUrl string `json:"openUrl" xml:"openUrl"`
-						Start   string `json:"Start" xml:"Start"`
-						Width   string `json:"Width" xml:"Width"`
-						Height  string `json:"Height" xml:"Height"`
-					} `json:"Opening" xml:"Opening"`
-				} `json:"OpeningList" xml:"OpeningList"`
-				TailSlateList struct {
-					TailSlate []struct {
-						TailUrl       string `json:"TailUrl" xml:"TailUrl"`
-						Start         string `json:"Start" xml:"Start"`
-						BlendDuration string `json:"BlendDuration" xml:"BlendDuration"`
-						Width         string `json:"Width" xml:"Width"`
-						Height        string `json:"Height" xml:"Height"`
-						IsMergeAudio  bool   `json:"IsMergeAudio" xml:"IsMergeAudio"`
-						BgColor       string `json:"BgColor" xml:"BgColor"`
-					} `json:"TailSlate" xml:"TailSlate"`
-				} `json:"TailSlateList" xml:"TailSlateList"`
-			} `json:"Output" xml:"Output"`
-			MNSMessageResult struct {
-				MessageId    string `json:"MessageId" xml:"MessageId"`
-				ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-				ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-			} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-		} `json:"Job" xml:"Job"`
-	} `json:"JobList" xml:"JobList"`
+	RequestId      string   `json:"RequestId"`
+	NonExistJobIds []string `json:"NonExistJobIds"`
+	JobList        []struct {
+		JobId        string `json:"JobId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		Percent      int64  `json:"Percent"`
+		PipelineId   string `json:"PipelineId"`
+		CreationTime string `json:"CreationTime"`
+		FinishTime   string `json:"FinishTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		Output struct {
+			TemplateId         string `json:"TemplateId"`
+			UserData           string `json:"UserData"`
+			Rotate             string `json:"Rotate"`
+			VideoStreamMap     string `json:"VideoStreamMap"`
+			AudioStreamMap     string `json:"AudioStreamMap"`
+			DeWatermark        string `json:"DeWatermark"`
+			Priority           string `json:"Priority"`
+			WaterMarkConfigUrl string `json:"WaterMarkConfigUrl"`
+			MergeConfigUrl     string `json:"MergeConfigUrl"`
+			OutputFile         struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"OutputFile"`
+			M3U8NonStandardSupport struct {
+				TS struct {
+					Md5Support  bool `json:"Md5Support"`
+					SizeSupport bool `json:"SizeSupport"`
+				} `json:"TS"`
+			} `json:"M3U8NonStandardSupport"`
+			Properties struct {
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Bitrate    string `json:"Bitrate"`
+				Duration   string `json:"Duration"`
+				Fps        string `json:"Fps"`
+				FileSize   string `json:"FileSize"`
+				FileFormat string `json:"FileFormat"`
+				Streams    struct {
+					VideoStreamList []struct {
+						Index          string `json:"Index"`
+						CodecName      string `json:"CodecName"`
+						CodecLongName  string `json:"CodecLongName"`
+						Profile        string `json:"Profile"`
+						CodecTimeBase  string `json:"CodecTimeBase"`
+						CodecTagString string `json:"CodecTagString"`
+						CodecTag       string `json:"CodecTag"`
+						Width          string `json:"Width"`
+						Height         string `json:"Height"`
+						HasBFrames     string `json:"HasBFrames"`
+						Sar            string `json:"Sar"`
+						Dar            string `json:"Dar"`
+						PixFmt         string `json:"PixFmt"`
+						Level          string `json:"Level"`
+						Fps            string `json:"Fps"`
+						AvgFPS         string `json:"AvgFPS"`
+						Timebase       string `json:"Timebase"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Bitrate        string `json:"Bitrate"`
+						NumFrames      string `json:"NumFrames"`
+						Lang           string `json:"Lang"`
+						NetworkCost    struct {
+							PreloadTime   string `json:"PreloadTime"`
+							CostBandwidth string `json:"CostBandwidth"`
+							AvgBitrate    string `json:"AvgBitrate"`
+						} `json:"NetworkCost"`
+					} `json:"VideoStreamList"`
+					AudioStreamList []struct {
+						Index          string `json:"Index"`
+						CodecName      string `json:"CodecName"`
+						CodecTimeBase  string `json:"CodecTimeBase"`
+						CodecLongName  string `json:"CodecLongName"`
+						CodecTagString string `json:"CodecTagString"`
+						CodecTag       string `json:"CodecTag"`
+						SampleFmt      string `json:"SampleFmt"`
+						Samplerate     string `json:"Samplerate"`
+						Channels       string `json:"Channels"`
+						ChannelLayout  string `json:"ChannelLayout"`
+						Timebase       string `json:"Timebase"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Bitrate        string `json:"Bitrate"`
+						NumFrames      string `json:"NumFrames"`
+						Lang           string `json:"Lang"`
+					} `json:"AudioStreamList"`
+					SubtitleStreamList []struct {
+						Index string `json:"Index"`
+						Lang  string `json:"Lang"`
+					} `json:"SubtitleStreamList"`
+				} `json:"Streams"`
+				Format struct {
+					NumStreams     string `json:"NumStreams"`
+					NumPrograms    string `json:"NumPrograms"`
+					FormatName     string `json:"FormatName"`
+					FormatLongName string `json:"FormatLongName"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Size           string `json:"Size"`
+					Bitrate        string `json:"Bitrate"`
+				} `json:"Format"`
+				SourceLogos []struct {
+					Source string `json:"Source"`
+				} `json:"SourceLogos"`
+			} `json:"Properties"`
+			Clip struct {
+				TimeSpan struct {
+					Seek     string `json:"Seek"`
+					Duration string `json:"Duration"`
+				} `json:"TimeSpan"`
+			} `json:"Clip"`
+			SuperReso struct {
+				IsHalfSample string `json:"IsHalfSample"`
+			} `json:"SuperReso"`
+			SubtitleConfig struct {
+				SubtitleList []struct {
+					Map string `json:"Map"`
+				} `json:"SubtitleList"`
+				ExtSubtitleList []struct {
+					FontName string `json:"FontName"`
+					CharEnc  string `json:"CharEnc"`
+					Input1   struct {
+						Bucket   string `json:"Bucket"`
+						Location string `json:"Location"`
+						Object   string `json:"Object"`
+					} `json:"Input"`
+				} `json:"ExtSubtitleList"`
+			} `json:"SubtitleConfig"`
+			TransConfig struct {
+				TransMode               string `json:"TransMode"`
+				IsCheckReso             string `json:"IsCheckReso"`
+				IsCheckResoFail         string `json:"IsCheckResoFail"`
+				IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+				IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+				AdjDarMethod            string `json:"AdjDarMethod"`
+				IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+				IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+			} `json:"TransConfig"`
+			MuxConfig struct {
+				Segment struct {
+					Duration string `json:"Duration"`
+				} `json:"Segment"`
+				Gif struct {
+					Loop            string `json:"Loop"`
+					FinalDelay      string `json:"FinalDelay"`
+					IsCustomPalette string `json:"IsCustomPalette"`
+					DitherMode      string `json:"DitherMode"`
+				} `json:"Gif"`
+			} `json:"MuxConfig"`
+			Audio struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Samplerate string `json:"Samplerate"`
+				Bitrate    string `json:"Bitrate"`
+				Channels   string `json:"Channels"`
+				Qscale     string `json:"Qscale"`
+				Volume     struct {
+					Level  string `json:"Level"`
+					Method string `json:"Method"`
+				} `json:"Volume"`
+			} `json:"Audio"`
+			Video struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Bitrate    string `json:"Bitrate"`
+				Crf        string `json:"Crf"`
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Fps        string `json:"Fps"`
+				Gop        string `json:"Gop"`
+				Preset     string `json:"Preset"`
+				ScanMode   string `json:"ScanMode"`
+				Bufsize    string `json:"Bufsize"`
+				Maxrate    string `json:"Maxrate"`
+				PixFmt     string `json:"PixFmt"`
+				Degrain    string `json:"Degrain"`
+				Qscale     string `json:"Qscale"`
+				Crop       string `json:"Crop"`
+				Pad        string `json:"Pad"`
+				MaxFps     string `json:"MaxFps"`
+				BitrateBnd struct {
+					Max string `json:"Max"`
+					Min string `json:"Min"`
+				} `json:"BitrateBnd"`
+			} `json:"Video"`
+			Container struct {
+				Format string `json:"Format"`
+			} `json:"Container"`
+			Encryption struct {
+				Type    string `json:"Type"`
+				Id      string `json:"Id"`
+				Key     string `json:"Key"`
+				KeyUri  string `json:"KeyUri"`
+				KeyType string `json:"KeyType"`
+				SkipCnt string `json:"SkipCnt"`
+			} `json:"Encryption"`
+			WaterMarkList []struct {
+				WaterMarkTemplateId string `json:"WaterMarkTemplateId"`
+				Width               string `json:"Width"`
+				Height              string `json:"Height"`
+				Dx                  string `json:"Dx"`
+				Dy                  string `json:"Dy"`
+				ReferPos            string `json:"ReferPos"`
+				Type                string `json:"Type"`
+				InputFile           struct {
+					Bucket   string `json:"Bucket"`
+					Location string `json:"Location"`
+					Object   string `json:"Object"`
+				} `json:"InputFile"`
+			} `json:"WaterMarkList"`
+			MergeList []struct {
+				MergeURL string `json:"MergeURL"`
+				Start    string `json:"Start"`
+				Duration string `json:"Duration"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"MergeList"`
+			OpeningList []struct {
+				OpenUrl string `json:"openUrl"`
+				Start   string `json:"Start"`
+				Width   string `json:"Width"`
+				Height  string `json:"Height"`
+			} `json:"OpeningList"`
+			TailSlateList []struct {
+				TailUrl       string `json:"TailUrl"`
+				Start         string `json:"Start"`
+				BlendDuration string `json:"BlendDuration"`
+				Width         string `json:"Width"`
+				Height        string `json:"Height"`
+				IsMergeAudio  bool   `json:"IsMergeAudio"`
+				BgColor       string `json:"BgColor"`
+			} `json:"TailSlateList"`
+		} `json:"Output"`
+		MNSMessageResult struct {
+			MessageId    string `json:"MessageId"`
+			ErrorMessage string `json:"ErrorMessage"`
+			ErrorCode    string `json:"ErrorCode"`
+		} `json:"MNSMessageResult"`
+	} `json:"JobList"`
 }
 
 func CreateQueryJobListRequest() (request *QueryJobListRequest) {

+ 58 - 64
services/mts/query_media_detail_job_list.go

@@ -64,78 +64,72 @@ func (client *Client) QueryMediaDetailJobListWithCallback(request *QueryMediaDet
 
 type QueryMediaDetailJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryMediaDetailJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	JobList struct {
-		Job []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			MediaDetailConfig struct {
-				Scenario   string `json:"Scenario" xml:"Scenario"`
-				DetailType string `json:"DetailType" xml:"DetailType"`
-				OutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"OutputFile" xml:"OutputFile"`
-			} `json:"MediaDetailConfig" xml:"MediaDetailConfig"`
-			MediaDetailResult struct {
-				Status string `json:"Status" xml:"Status"`
-				Tags   struct {
-					String []string `json:"String" xml:"String"`
-				} `json:"Tags" xml:"Tags"`
-				MediaDetailRecgResults struct {
-					MediaDetailRecgResult []struct {
-						ImageUrl    string `json:"ImageUrl" xml:"ImageUrl"`
-						Time        string `json:"Time" xml:"Time"`
-						OcrText     string `json:"OcrText" xml:"OcrText"`
-						Celebrities struct {
-							Celebrity []struct {
-								Name   string `json:"Name" xml:"Name"`
-								Score  string `json:"Score" xml:"Score"`
-								Target string `json:"Target" xml:"Target"`
-							} `json:"Celebrity" xml:"Celebrity"`
-						} `json:"Celebrities" xml:"Celebrities"`
-						Sensitives struct {
-							Sensitive []struct {
-								Name   string `json:"Name" xml:"Name"`
-								Score  string `json:"Score" xml:"Score"`
-								Target string `json:"Target" xml:"Target"`
-							} `json:"Sensitive" xml:"Sensitive"`
-						} `json:"Sensitives" xml:"Sensitives"`
-						Politicians struct {
-							Politician []struct {
-								Name   string `json:"Name" xml:"Name"`
-								Score  string `json:"Score" xml:"Score"`
-								Target string `json:"Target" xml:"Target"`
-							} `json:"Politician" xml:"Politician"`
-						} `json:"Politicians" xml:"Politicians"`
-					} `json:"MediaDetailRecgResult" xml:"MediaDetailRecgResult"`
-				} `json:"MediaDetailRecgResults" xml:"MediaDetailRecgResults"`
-			} `json:"MediaDetailResult" xml:"MediaDetailResult"`
-		} `json:"Job" xml:"Job"`
-	} `json:"JobList" xml:"JobList"`
+	RequestId   string   `json:"RequestId"`
+	NonExistIds []string `json:"NonExistIds"`
+	JobList     []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		MediaDetailConfig struct {
+			Scenario   string `json:"Scenario"`
+			DetailType string `json:"DetailType"`
+			OutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"OutputFile"`
+		} `json:"MediaDetailConfig"`
+		MediaDetailResult struct {
+			Status                 string   `json:"Status"`
+			Tags                   []string `json:"Tags"`
+			MediaDetailRecgResults []struct {
+				ImageUrl    string   `json:"ImageUrl"`
+				Time        string   `json:"Time"`
+				OcrText     string   `json:"OcrText"`
+				FrameTags   []string `json:"FrameTags"`
+				Celebrities []struct {
+					Name   string `json:"Name"`
+					Score  string `json:"Score"`
+					Target string `json:"Target"`
+				} `json:"Celebrities"`
+				Sensitives []struct {
+					Name   string `json:"Name"`
+					Score  string `json:"Score"`
+					Target string `json:"Target"`
+				} `json:"Sensitives"`
+				Politicians []struct {
+					Name   string `json:"Name"`
+					Score  string `json:"Score"`
+					Target string `json:"Target"`
+				} `json:"Politicians"`
+				FrameTagInfos []struct {
+					Tag      string `json:"Tag"`
+					Score    string `json:"Score"`
+					Category string `json:"Category"`
+				} `json:"FrameTagInfos"`
+			} `json:"MediaDetailRecgResults"`
+		} `json:"MediaDetailResult"`
+	} `json:"JobList"`
 }
 
 func CreateQueryMediaDetailJobListRequest() (request *QueryMediaDetailJobListRequest) {

+ 98 - 106
services/mts/query_media_info_job_list.go

@@ -64,119 +64,111 @@ func (client *Client) QueryMediaInfoJobListWithCallback(request *QueryMediaInfoJ
 
 type QueryMediaInfoJobListRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	MediaInfoJobIds      string `position:"Query" name:"MediaInfoJobIds"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	MediaInfoJobIds      string `position:"Query" name:"MediaInfoJobIds"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryMediaInfoJobListResponse struct {
 	*responses.BaseResponse
-	RequestId               string `json:"RequestId" xml:"RequestId"`
-	NonExistMediaInfoJobIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistMediaInfoJobIds" xml:"NonExistMediaInfoJobIds"`
-	MediaInfoJobList struct {
-		MediaInfoJob []struct {
-			JobId        string `json:"JobId" xml:"JobId"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			Properties struct {
-				Width      string `json:"Width" xml:"Width"`
-				Height     string `json:"Height" xml:"Height"`
-				Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-				Duration   string `json:"Duration" xml:"Duration"`
-				Fps        string `json:"Fps" xml:"Fps"`
-				FileSize   string `json:"FileSize" xml:"FileSize"`
-				FileFormat string `json:"FileFormat" xml:"FileFormat"`
-				Streams    struct {
-					VideoStreamList struct {
-						VideoStream []struct {
-							Index          string `json:"Index" xml:"Index"`
-							CodecName      string `json:"CodecName" xml:"CodecName"`
-							CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-							Profile        string `json:"Profile" xml:"Profile"`
-							CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-							CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-							CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-							Width          string `json:"Width" xml:"Width"`
-							Height         string `json:"Height" xml:"Height"`
-							HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-							Sar            string `json:"Sar" xml:"Sar"`
-							Dar            string `json:"Dar" xml:"Dar"`
-							PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-							Level          string `json:"Level" xml:"Level"`
-							Fps            string `json:"Fps" xml:"Fps"`
-							AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-							Timebase       string `json:"Timebase" xml:"Timebase"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-							NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-							Lang           string `json:"Lang" xml:"Lang"`
-							Rotate         string `json:"Rotate" xml:"Rotate"`
-							NetworkCost    struct {
-								PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-								CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-								AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-							} `json:"NetworkCost" xml:"NetworkCost"`
-						} `json:"VideoStream" xml:"VideoStream"`
-					} `json:"VideoStreamList" xml:"VideoStreamList"`
-					AudioStreamList struct {
-						AudioStream []struct {
-							Index          string `json:"Index" xml:"Index"`
-							CodecName      string `json:"CodecName" xml:"CodecName"`
-							CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-							CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-							CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-							CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-							SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-							Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-							Channels       string `json:"Channels" xml:"Channels"`
-							ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-							Timebase       string `json:"Timebase" xml:"Timebase"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-							NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-							Lang           string `json:"Lang" xml:"Lang"`
-						} `json:"AudioStream" xml:"AudioStream"`
-					} `json:"AudioStreamList" xml:"AudioStreamList"`
-					SubtitleStreamList struct {
-						SubtitleStream []struct {
-							Index string `json:"Index" xml:"Index"`
-							Lang  string `json:"Lang" xml:"Lang"`
-						} `json:"SubtitleStream" xml:"SubtitleStream"`
-					} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-				} `json:"Streams" xml:"Streams"`
-				Format struct {
-					NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-					NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-					FormatName     string `json:"FormatName" xml:"FormatName"`
-					FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-					StartTime      string `json:"StartTime" xml:"StartTime"`
-					Duration       string `json:"Duration" xml:"Duration"`
-					Size           string `json:"Size" xml:"Size"`
-					Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-				} `json:"Format" xml:"Format"`
-			} `json:"Properties" xml:"Properties"`
-			MNSMessageResult struct {
-				MessageId    string `json:"MessageId" xml:"MessageId"`
-				ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-				ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-			} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-		} `json:"MediaInfoJob" xml:"MediaInfoJob"`
-	} `json:"MediaInfoJobList" xml:"MediaInfoJobList"`
+	RequestId               string   `json:"RequestId"`
+	NonExistMediaInfoJobIds []string `json:"NonExistMediaInfoJobIds"`
+	MediaInfoJobList        []struct {
+		JobId        string `json:"JobId"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		Properties struct {
+			Width      string `json:"Width"`
+			Height     string `json:"Height"`
+			Bitrate    string `json:"Bitrate"`
+			Duration   string `json:"Duration"`
+			Fps        string `json:"Fps"`
+			FileSize   string `json:"FileSize"`
+			FileFormat string `json:"FileFormat"`
+			Streams    struct {
+				VideoStreamList []struct {
+					Index          string `json:"Index"`
+					CodecName      string `json:"CodecName"`
+					CodecLongName  string `json:"CodecLongName"`
+					Profile        string `json:"Profile"`
+					CodecTimeBase  string `json:"CodecTimeBase"`
+					CodecTagString string `json:"CodecTagString"`
+					CodecTag       string `json:"CodecTag"`
+					Width          string `json:"Width"`
+					Height         string `json:"Height"`
+					HasBFrames     string `json:"HasBFrames"`
+					Sar            string `json:"Sar"`
+					Dar            string `json:"Dar"`
+					PixFmt         string `json:"PixFmt"`
+					Level          string `json:"Level"`
+					Fps            string `json:"Fps"`
+					AvgFPS         string `json:"AvgFPS"`
+					Timebase       string `json:"Timebase"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Bitrate        string `json:"Bitrate"`
+					NumFrames      string `json:"NumFrames"`
+					Lang           string `json:"Lang"`
+					Rotate         string `json:"Rotate"`
+					NetworkCost    struct {
+						PreloadTime   string `json:"PreloadTime"`
+						CostBandwidth string `json:"CostBandwidth"`
+						AvgBitrate    string `json:"AvgBitrate"`
+					} `json:"NetworkCost"`
+				} `json:"VideoStreamList"`
+				AudioStreamList []struct {
+					Index          string `json:"Index"`
+					CodecName      string `json:"CodecName"`
+					CodecTimeBase  string `json:"CodecTimeBase"`
+					CodecLongName  string `json:"CodecLongName"`
+					CodecTagString string `json:"CodecTagString"`
+					CodecTag       string `json:"CodecTag"`
+					SampleFmt      string `json:"SampleFmt"`
+					Samplerate     string `json:"Samplerate"`
+					Channels       string `json:"Channels"`
+					ChannelLayout  string `json:"ChannelLayout"`
+					Timebase       string `json:"Timebase"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Bitrate        string `json:"Bitrate"`
+					NumFrames      string `json:"NumFrames"`
+					Lang           string `json:"Lang"`
+				} `json:"AudioStreamList"`
+				SubtitleStreamList []struct {
+					Index string `json:"Index"`
+					Lang  string `json:"Lang"`
+				} `json:"SubtitleStreamList"`
+			} `json:"Streams"`
+			Format struct {
+				NumStreams     string `json:"NumStreams"`
+				NumPrograms    string `json:"NumPrograms"`
+				FormatName     string `json:"FormatName"`
+				FormatLongName string `json:"FormatLongName"`
+				StartTime      string `json:"StartTime"`
+				Duration       string `json:"Duration"`
+				Size           string `json:"Size"`
+				Bitrate        string `json:"Bitrate"`
+			} `json:"Format"`
+		} `json:"Properties"`
+		MNSMessageResult struct {
+			MessageId    string `json:"MessageId"`
+			ErrorMessage string `json:"ErrorMessage"`
+			ErrorCode    string `json:"ErrorCode"`
+		} `json:"MNSMessageResult"`
+	} `json:"MediaInfoJobList"`
 }
 
 func CreateQueryMediaInfoJobListRequest() (request *QueryMediaInfoJobListRequest) {

+ 124 - 140
services/mts/query_media_list.go

@@ -64,154 +64,138 @@ func (client *Client) QueryMediaListWithCallback(request *QueryMediaListRequest,
 
 type QueryMediaListRequest struct {
 	*requests.RpcRequest
-	IncludeMediaInfo     string `position:"Query" name:"IncludeMediaInfo"`
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	IncludeSnapshotList  string `position:"Query" name:"IncludeSnapshotList"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	IncludePlayList      string `position:"Query" name:"IncludePlayList"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
+	Action               string `position:"Query" name:"Action"`
 	MediaIds             string `position:"Query" name:"MediaIds"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	IncludePlayList      string `position:"Query" name:"IncludePlayList"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	IncludeMediaInfo     string `position:"Query" name:"IncludeMediaInfo"`
 }
 
 type QueryMediaListResponse struct {
 	*responses.BaseResponse
-	RequestId        string `json:"RequestId" xml:"RequestId"`
-	NonExistMediaIds struct {
-		MediaId []string `json:"MediaId" xml:"MediaId"`
-	} `json:"NonExistMediaIds" xml:"NonExistMediaIds"`
-	MediaList struct {
-		Media []struct {
-			MediaId      string `json:"MediaId" xml:"MediaId"`
-			Title        string `json:"Title" xml:"Title"`
-			Description  string `json:"Description" xml:"Description"`
-			CoverURL     string `json:"CoverURL" xml:"CoverURL"`
-			CateId       int64  `json:"CateId" xml:"CateId"`
-			Duration     string `json:"Duration" xml:"Duration"`
-			Format       string `json:"Format" xml:"Format"`
-			Size         string `json:"Size" xml:"Size"`
-			Bitrate      string `json:"Bitrate" xml:"Bitrate"`
-			Width        string `json:"Width" xml:"Width"`
-			Height       string `json:"Height" xml:"Height"`
-			Fps          string `json:"Fps" xml:"Fps"`
-			PublishState string `json:"PublishState" xml:"PublishState"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Tags         struct {
-				Tag []string `json:"Tag" xml:"Tag"`
-			} `json:"Tags" xml:"Tags"`
-			RunIdList struct {
-				RunId []string `json:"RunId" xml:"RunId"`
-			} `json:"RunIdList" xml:"RunIdList"`
-			File struct {
-				URL   string `json:"URL" xml:"URL"`
-				State string `json:"State" xml:"State"`
-			} `json:"File" xml:"File"`
-			MediaInfo struct {
-				Streams struct {
-					VideoStreamList struct {
-						VideoStream []struct {
-							Index          string `json:"Index" xml:"Index"`
-							CodecName      string `json:"CodecName" xml:"CodecName"`
-							CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-							Profile        string `json:"Profile" xml:"Profile"`
-							CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-							CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-							CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-							Width          string `json:"Width" xml:"Width"`
-							Height         string `json:"Height" xml:"Height"`
-							HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-							Sar            string `json:"Sar" xml:"Sar"`
-							Dar            string `json:"Dar" xml:"Dar"`
-							PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-							Level          string `json:"Level" xml:"Level"`
-							Fps            string `json:"Fps" xml:"Fps"`
-							AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-							Timebase       string `json:"Timebase" xml:"Timebase"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-							NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-							Lang           string `json:"Lang" xml:"Lang"`
-							Rotate         string `json:"Rotate" xml:"Rotate"`
-							NetworkCost    struct {
-								PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-								CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-								AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-							} `json:"NetworkCost" xml:"NetworkCost"`
-						} `json:"VideoStream" xml:"VideoStream"`
-					} `json:"VideoStreamList" xml:"VideoStreamList"`
-					AudioStreamList struct {
-						AudioStream []struct {
-							Index          string `json:"Index" xml:"Index"`
-							CodecName      string `json:"CodecName" xml:"CodecName"`
-							CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-							CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-							CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-							CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-							SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-							Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-							Channels       string `json:"Channels" xml:"Channels"`
-							ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-							Timebase       string `json:"Timebase" xml:"Timebase"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-							NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-							Lang           string `json:"Lang" xml:"Lang"`
-						} `json:"AudioStream" xml:"AudioStream"`
-					} `json:"AudioStreamList" xml:"AudioStreamList"`
-					SubtitleStreamList struct {
-						SubtitleStream []struct {
-							Index string `json:"Index" xml:"Index"`
-							Lang  string `json:"Lang" xml:"Lang"`
-						} `json:"SubtitleStream" xml:"SubtitleStream"`
-					} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-				} `json:"Streams" xml:"Streams"`
-				Format struct {
-					NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-					NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-					FormatName     string `json:"FormatName" xml:"FormatName"`
-					FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-					StartTime      string `json:"StartTime" xml:"StartTime"`
-					Duration       string `json:"Duration" xml:"Duration"`
-					Size           string `json:"Size" xml:"Size"`
-					Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-				} `json:"Format" xml:"Format"`
-			} `json:"MediaInfo" xml:"MediaInfo"`
-			PlayList struct {
-				Play []struct {
-					ActivityName      string `json:"ActivityName" xml:"ActivityName"`
-					MediaWorkflowId   string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-					MediaWorkflowName string `json:"MediaWorkflowName" xml:"MediaWorkflowName"`
-					Duration          string `json:"Duration" xml:"Duration"`
-					Format            string `json:"Format" xml:"Format"`
-					Size              string `json:"Size" xml:"Size"`
-					Bitrate           string `json:"Bitrate" xml:"Bitrate"`
-					Width             string `json:"Width" xml:"Width"`
-					Height            string `json:"Height" xml:"Height"`
-					Fps               string `json:"Fps" xml:"Fps"`
-					Encryption        string `json:"Encryption" xml:"Encryption"`
-					File1             struct {
-						URL   string `json:"URL" xml:"URL"`
-						State string `json:"State" xml:"State"`
-					} `json:"File" xml:"File"`
-				} `json:"Play" xml:"Play"`
-			} `json:"PlayList" xml:"PlayList"`
-			SnapshotList struct {
-				Snapshot []struct {
-					Type              string `json:"Type" xml:"Type"`
-					MediaWorkflowId   string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-					MediaWorkflowName string `json:"MediaWorkflowName" xml:"MediaWorkflowName"`
-					ActivityName      string `json:"ActivityName" xml:"ActivityName"`
-					Count             string `json:"Count" xml:"Count"`
-					File2             struct {
-						URL   string `json:"URL" xml:"URL"`
-						State string `json:"State" xml:"State"`
-					} `json:"File" xml:"File"`
-				} `json:"Snapshot" xml:"Snapshot"`
-			} `json:"SnapshotList" xml:"SnapshotList"`
-		} `json:"Media" xml:"Media"`
-	} `json:"MediaList" xml:"MediaList"`
+	RequestId        string   `json:"RequestId"`
+	NonExistMediaIds []string `json:"NonExistMediaIds"`
+	MediaList        []struct {
+		MediaId      string   `json:"MediaId"`
+		Title        string   `json:"Title"`
+		Description  string   `json:"Description"`
+		CoverURL     string   `json:"CoverURL"`
+		CateId       int64    `json:"CateId"`
+		Duration     string   `json:"Duration"`
+		Format       string   `json:"Format"`
+		Size         string   `json:"Size"`
+		Bitrate      string   `json:"Bitrate"`
+		Width        string   `json:"Width"`
+		Height       string   `json:"Height"`
+		Fps          string   `json:"Fps"`
+		PublishState string   `json:"PublishState"`
+		CreationTime string   `json:"CreationTime"`
+		Tags         []string `json:"Tags"`
+		RunIdList    []string `json:"RunIdList"`
+		File         struct {
+			URL   string `json:"URL"`
+			State string `json:"State"`
+		} `json:"File"`
+		MediaInfo struct {
+			Streams struct {
+				VideoStreamList []struct {
+					Index          string `json:"Index"`
+					CodecName      string `json:"CodecName"`
+					CodecLongName  string `json:"CodecLongName"`
+					Profile        string `json:"Profile"`
+					CodecTimeBase  string `json:"CodecTimeBase"`
+					CodecTagString string `json:"CodecTagString"`
+					CodecTag       string `json:"CodecTag"`
+					Width          string `json:"Width"`
+					Height         string `json:"Height"`
+					HasBFrames     string `json:"HasBFrames"`
+					Sar            string `json:"Sar"`
+					Dar            string `json:"Dar"`
+					PixFmt         string `json:"PixFmt"`
+					Level          string `json:"Level"`
+					Fps            string `json:"Fps"`
+					AvgFPS         string `json:"AvgFPS"`
+					Timebase       string `json:"Timebase"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Bitrate        string `json:"Bitrate"`
+					NumFrames      string `json:"NumFrames"`
+					Lang           string `json:"Lang"`
+					Rotate         string `json:"Rotate"`
+					NetworkCost    struct {
+						PreloadTime   string `json:"PreloadTime"`
+						CostBandwidth string `json:"CostBandwidth"`
+						AvgBitrate    string `json:"AvgBitrate"`
+					} `json:"NetworkCost"`
+				} `json:"VideoStreamList"`
+				AudioStreamList []struct {
+					Index          string `json:"Index"`
+					CodecName      string `json:"CodecName"`
+					CodecTimeBase  string `json:"CodecTimeBase"`
+					CodecLongName  string `json:"CodecLongName"`
+					CodecTagString string `json:"CodecTagString"`
+					CodecTag       string `json:"CodecTag"`
+					SampleFmt      string `json:"SampleFmt"`
+					Samplerate     string `json:"Samplerate"`
+					Channels       string `json:"Channels"`
+					ChannelLayout  string `json:"ChannelLayout"`
+					Timebase       string `json:"Timebase"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Bitrate        string `json:"Bitrate"`
+					NumFrames      string `json:"NumFrames"`
+					Lang           string `json:"Lang"`
+				} `json:"AudioStreamList"`
+				SubtitleStreamList []struct {
+					Index string `json:"Index"`
+					Lang  string `json:"Lang"`
+				} `json:"SubtitleStreamList"`
+			} `json:"Streams"`
+			Format struct {
+				NumStreams     string `json:"NumStreams"`
+				NumPrograms    string `json:"NumPrograms"`
+				FormatName     string `json:"FormatName"`
+				FormatLongName string `json:"FormatLongName"`
+				StartTime      string `json:"StartTime"`
+				Duration       string `json:"Duration"`
+				Size           string `json:"Size"`
+				Bitrate        string `json:"Bitrate"`
+			} `json:"Format"`
+		} `json:"MediaInfo"`
+		PlayList []struct {
+			ActivityName      string `json:"ActivityName"`
+			MediaWorkflowId   string `json:"MediaWorkflowId"`
+			MediaWorkflowName string `json:"MediaWorkflowName"`
+			Duration          string `json:"Duration"`
+			Format            string `json:"Format"`
+			Size              string `json:"Size"`
+			Bitrate           string `json:"Bitrate"`
+			Width             string `json:"Width"`
+			Height            string `json:"Height"`
+			Fps               string `json:"Fps"`
+			Encryption        string `json:"Encryption"`
+			File1             struct {
+				URL   string `json:"URL"`
+				State string `json:"State"`
+			} `json:"File"`
+		} `json:"PlayList"`
+		SnapshotList []struct {
+			Type              string `json:"Type"`
+			MediaWorkflowId   string `json:"MediaWorkflowId"`
+			MediaWorkflowName string `json:"MediaWorkflowName"`
+			ActivityName      string `json:"ActivityName"`
+			Count             string `json:"Count"`
+			File2             struct {
+				URL   string `json:"URL"`
+				State string `json:"State"`
+			} `json:"File"`
+		} `json:"SnapshotList"`
+	} `json:"MediaList"`
 }
 
 func CreateQueryMediaListRequest() (request *QueryMediaListRequest) {

+ 124 - 140
services/mts/query_media_list_by_u_r_l.go

@@ -64,154 +64,138 @@ func (client *Client) QueryMediaListByURLWithCallback(request *QueryMediaListByU
 
 type QueryMediaListByURLRequest struct {
 	*requests.RpcRequest
-	IncludeMediaInfo     string `position:"Query" name:"IncludeMediaInfo"`
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	FileURLs             string `position:"Query" name:"FileURLs"`
 	IncludeSnapshotList  string `position:"Query" name:"IncludeSnapshotList"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	FileURLs             string `position:"Query" name:"FileURLs"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	IncludePlayList      string `position:"Query" name:"IncludePlayList"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	IncludePlayList      string `position:"Query" name:"IncludePlayList"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	IncludeMediaInfo     string `position:"Query" name:"IncludeMediaInfo"`
 }
 
 type QueryMediaListByURLResponse struct {
 	*responses.BaseResponse
-	RequestId        string `json:"RequestId" xml:"RequestId"`
-	NonExistFileURLs struct {
-		FileURL []string `json:"FileURL" xml:"FileURL"`
-	} `json:"NonExistFileURLs" xml:"NonExistFileURLs"`
-	MediaList struct {
-		Media []struct {
-			MediaId      string `json:"MediaId" xml:"MediaId"`
-			Title        string `json:"Title" xml:"Title"`
-			Description  string `json:"Description" xml:"Description"`
-			CoverURL     string `json:"CoverURL" xml:"CoverURL"`
-			CateId       int64  `json:"CateId" xml:"CateId"`
-			Duration     string `json:"Duration" xml:"Duration"`
-			Format       string `json:"Format" xml:"Format"`
-			Size         string `json:"Size" xml:"Size"`
-			Bitrate      string `json:"Bitrate" xml:"Bitrate"`
-			Width        string `json:"Width" xml:"Width"`
-			Height       string `json:"Height" xml:"Height"`
-			Fps          string `json:"Fps" xml:"Fps"`
-			PublishState string `json:"PublishState" xml:"PublishState"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Tags         struct {
-				Tag []string `json:"Tag" xml:"Tag"`
-			} `json:"Tags" xml:"Tags"`
-			RunIdList struct {
-				RunId []string `json:"RunId" xml:"RunId"`
-			} `json:"RunIdList" xml:"RunIdList"`
-			File struct {
-				URL   string `json:"URL" xml:"URL"`
-				State string `json:"State" xml:"State"`
-			} `json:"File" xml:"File"`
-			MediaInfo struct {
-				Streams struct {
-					VideoStreamList struct {
-						VideoStream []struct {
-							Index          string `json:"Index" xml:"Index"`
-							CodecName      string `json:"CodecName" xml:"CodecName"`
-							CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-							Profile        string `json:"Profile" xml:"Profile"`
-							CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-							CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-							CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-							Width          string `json:"Width" xml:"Width"`
-							Height         string `json:"Height" xml:"Height"`
-							HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-							Sar            string `json:"Sar" xml:"Sar"`
-							Dar            string `json:"Dar" xml:"Dar"`
-							PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-							Level          string `json:"Level" xml:"Level"`
-							Fps            string `json:"Fps" xml:"Fps"`
-							AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-							Timebase       string `json:"Timebase" xml:"Timebase"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-							NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-							Lang           string `json:"Lang" xml:"Lang"`
-							Rotate         string `json:"Rotate" xml:"Rotate"`
-							NetworkCost    struct {
-								PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-								CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-								AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-							} `json:"NetworkCost" xml:"NetworkCost"`
-						} `json:"VideoStream" xml:"VideoStream"`
-					} `json:"VideoStreamList" xml:"VideoStreamList"`
-					AudioStreamList struct {
-						AudioStream []struct {
-							Index          string `json:"Index" xml:"Index"`
-							CodecName      string `json:"CodecName" xml:"CodecName"`
-							CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-							CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-							CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-							CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-							SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-							Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-							Channels       string `json:"Channels" xml:"Channels"`
-							ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-							Timebase       string `json:"Timebase" xml:"Timebase"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-							NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-							Lang           string `json:"Lang" xml:"Lang"`
-						} `json:"AudioStream" xml:"AudioStream"`
-					} `json:"AudioStreamList" xml:"AudioStreamList"`
-					SubtitleStreamList struct {
-						SubtitleStream []struct {
-							Index string `json:"Index" xml:"Index"`
-							Lang  string `json:"Lang" xml:"Lang"`
-						} `json:"SubtitleStream" xml:"SubtitleStream"`
-					} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-				} `json:"Streams" xml:"Streams"`
-				Format struct {
-					NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-					NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-					FormatName     string `json:"FormatName" xml:"FormatName"`
-					FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-					StartTime      string `json:"StartTime" xml:"StartTime"`
-					Duration       string `json:"Duration" xml:"Duration"`
-					Size           string `json:"Size" xml:"Size"`
-					Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-				} `json:"Format" xml:"Format"`
-			} `json:"MediaInfo" xml:"MediaInfo"`
-			PlayList struct {
-				Play []struct {
-					ActivityName      string `json:"ActivityName" xml:"ActivityName"`
-					MediaWorkflowId   string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-					MediaWorkflowName string `json:"MediaWorkflowName" xml:"MediaWorkflowName"`
-					Duration          string `json:"Duration" xml:"Duration"`
-					Format            string `json:"Format" xml:"Format"`
-					Size              string `json:"Size" xml:"Size"`
-					Bitrate           string `json:"Bitrate" xml:"Bitrate"`
-					Width             string `json:"Width" xml:"Width"`
-					Height            string `json:"Height" xml:"Height"`
-					Fps               string `json:"Fps" xml:"Fps"`
-					Encryption        string `json:"Encryption" xml:"Encryption"`
-					File1             struct {
-						URL   string `json:"URL" xml:"URL"`
-						State string `json:"State" xml:"State"`
-					} `json:"File" xml:"File"`
-				} `json:"Play" xml:"Play"`
-			} `json:"PlayList" xml:"PlayList"`
-			SnapshotList struct {
-				Snapshot []struct {
-					Type              string `json:"Type" xml:"Type"`
-					MediaWorkflowId   string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-					MediaWorkflowName string `json:"MediaWorkflowName" xml:"MediaWorkflowName"`
-					ActivityName      string `json:"ActivityName" xml:"ActivityName"`
-					Count             string `json:"Count" xml:"Count"`
-					File2             struct {
-						URL   string `json:"URL" xml:"URL"`
-						State string `json:"State" xml:"State"`
-					} `json:"File" xml:"File"`
-				} `json:"Snapshot" xml:"Snapshot"`
-			} `json:"SnapshotList" xml:"SnapshotList"`
-		} `json:"Media" xml:"Media"`
-	} `json:"MediaList" xml:"MediaList"`
+	RequestId        string   `json:"RequestId"`
+	NonExistFileURLs []string `json:"NonExistFileURLs"`
+	MediaList        []struct {
+		MediaId      string   `json:"MediaId"`
+		Title        string   `json:"Title"`
+		Description  string   `json:"Description"`
+		CoverURL     string   `json:"CoverURL"`
+		CateId       int64    `json:"CateId"`
+		Duration     string   `json:"Duration"`
+		Format       string   `json:"Format"`
+		Size         string   `json:"Size"`
+		Bitrate      string   `json:"Bitrate"`
+		Width        string   `json:"Width"`
+		Height       string   `json:"Height"`
+		Fps          string   `json:"Fps"`
+		PublishState string   `json:"PublishState"`
+		CreationTime string   `json:"CreationTime"`
+		Tags         []string `json:"Tags"`
+		RunIdList    []string `json:"RunIdList"`
+		File         struct {
+			URL   string `json:"URL"`
+			State string `json:"State"`
+		} `json:"File"`
+		MediaInfo struct {
+			Streams struct {
+				VideoStreamList []struct {
+					Index          string `json:"Index"`
+					CodecName      string `json:"CodecName"`
+					CodecLongName  string `json:"CodecLongName"`
+					Profile        string `json:"Profile"`
+					CodecTimeBase  string `json:"CodecTimeBase"`
+					CodecTagString string `json:"CodecTagString"`
+					CodecTag       string `json:"CodecTag"`
+					Width          string `json:"Width"`
+					Height         string `json:"Height"`
+					HasBFrames     string `json:"HasBFrames"`
+					Sar            string `json:"Sar"`
+					Dar            string `json:"Dar"`
+					PixFmt         string `json:"PixFmt"`
+					Level          string `json:"Level"`
+					Fps            string `json:"Fps"`
+					AvgFPS         string `json:"AvgFPS"`
+					Timebase       string `json:"Timebase"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Bitrate        string `json:"Bitrate"`
+					NumFrames      string `json:"NumFrames"`
+					Lang           string `json:"Lang"`
+					Rotate         string `json:"Rotate"`
+					NetworkCost    struct {
+						PreloadTime   string `json:"PreloadTime"`
+						CostBandwidth string `json:"CostBandwidth"`
+						AvgBitrate    string `json:"AvgBitrate"`
+					} `json:"NetworkCost"`
+				} `json:"VideoStreamList"`
+				AudioStreamList []struct {
+					Index          string `json:"Index"`
+					CodecName      string `json:"CodecName"`
+					CodecTimeBase  string `json:"CodecTimeBase"`
+					CodecLongName  string `json:"CodecLongName"`
+					CodecTagString string `json:"CodecTagString"`
+					CodecTag       string `json:"CodecTag"`
+					SampleFmt      string `json:"SampleFmt"`
+					Samplerate     string `json:"Samplerate"`
+					Channels       string `json:"Channels"`
+					ChannelLayout  string `json:"ChannelLayout"`
+					Timebase       string `json:"Timebase"`
+					StartTime      string `json:"StartTime"`
+					Duration       string `json:"Duration"`
+					Bitrate        string `json:"Bitrate"`
+					NumFrames      string `json:"NumFrames"`
+					Lang           string `json:"Lang"`
+				} `json:"AudioStreamList"`
+				SubtitleStreamList []struct {
+					Index string `json:"Index"`
+					Lang  string `json:"Lang"`
+				} `json:"SubtitleStreamList"`
+			} `json:"Streams"`
+			Format struct {
+				NumStreams     string `json:"NumStreams"`
+				NumPrograms    string `json:"NumPrograms"`
+				FormatName     string `json:"FormatName"`
+				FormatLongName string `json:"FormatLongName"`
+				StartTime      string `json:"StartTime"`
+				Duration       string `json:"Duration"`
+				Size           string `json:"Size"`
+				Bitrate        string `json:"Bitrate"`
+			} `json:"Format"`
+		} `json:"MediaInfo"`
+		PlayList []struct {
+			ActivityName      string `json:"ActivityName"`
+			MediaWorkflowId   string `json:"MediaWorkflowId"`
+			MediaWorkflowName string `json:"MediaWorkflowName"`
+			Duration          string `json:"Duration"`
+			Format            string `json:"Format"`
+			Size              string `json:"Size"`
+			Bitrate           string `json:"Bitrate"`
+			Width             string `json:"Width"`
+			Height            string `json:"Height"`
+			Fps               string `json:"Fps"`
+			Encryption        string `json:"Encryption"`
+			File1             struct {
+				URL   string `json:"URL"`
+				State string `json:"State"`
+			} `json:"File"`
+		} `json:"PlayList"`
+		SnapshotList []struct {
+			Type              string `json:"Type"`
+			MediaWorkflowId   string `json:"MediaWorkflowId"`
+			MediaWorkflowName string `json:"MediaWorkflowName"`
+			ActivityName      string `json:"ActivityName"`
+			Count             string `json:"Count"`
+			File2             struct {
+				URL   string `json:"URL"`
+				State string `json:"State"`
+			} `json:"File"`
+		} `json:"SnapshotList"`
+	} `json:"MediaList"`
 }
 
 func CreateQueryMediaListByURLRequest() (request *QueryMediaListByURLRequest) {

+ 36 - 40
services/mts/query_media_workflow_execution_list.go

@@ -64,54 +64,50 @@ func (client *Client) QueryMediaWorkflowExecutionListWithCallback(request *Query
 
 type QueryMediaWorkflowExecutionListRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	RunIds               string `position:"Query" name:"RunIds"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryMediaWorkflowExecutionListResponse struct {
 	*responses.BaseResponse
-	RequestId      string `json:"RequestId" xml:"RequestId"`
-	NonExistRunIds struct {
-		RunId []string `json:"RunId" xml:"RunId"`
-	} `json:"NonExistRunIds" xml:"NonExistRunIds"`
-	MediaWorkflowExecutionList struct {
-		MediaWorkflowExecution []struct {
-			RunId           string `json:"RunId" xml:"RunId"`
-			MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-			Name            string `json:"Name" xml:"Name"`
-			State           string `json:"State" xml:"State"`
-			MediaId         string `json:"MediaId" xml:"MediaId"`
-			CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-			Input           struct {
-				UserData  string `json:"UserData" xml:"UserData"`
-				InputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"InputFile" xml:"InputFile"`
-			} `json:"Input" xml:"Input"`
-			ActivityList struct {
-				Activity []struct {
-					Name             string `json:"Name" xml:"Name"`
-					Type             string `json:"Type" xml:"Type"`
-					JobId            string `json:"JobId" xml:"JobId"`
-					State            string `json:"State" xml:"State"`
-					Code             string `json:"Code" xml:"Code"`
-					Message          string `json:"Message" xml:"Message"`
-					StartTime        string `json:"StartTime" xml:"StartTime"`
-					EndTime          string `json:"EndTime" xml:"EndTime"`
-					MNSMessageResult struct {
-						MessageId    string `json:"MessageId" xml:"MessageId"`
-						ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-						ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-					} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-				} `json:"Activity" xml:"Activity"`
-			} `json:"ActivityList" xml:"ActivityList"`
-		} `json:"MediaWorkflowExecution" xml:"MediaWorkflowExecution"`
-	} `json:"MediaWorkflowExecutionList" xml:"MediaWorkflowExecutionList"`
+	RequestId                  string   `json:"RequestId"`
+	NonExistRunIds             []string `json:"NonExistRunIds"`
+	MediaWorkflowExecutionList []struct {
+		RunId           string `json:"RunId"`
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		State           string `json:"State"`
+		MediaId         string `json:"MediaId"`
+		CreationTime    string `json:"CreationTime"`
+		Input           struct {
+			UserData  string `json:"UserData"`
+			InputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"InputFile"`
+		} `json:"Input"`
+		ActivityList []struct {
+			Name             string `json:"Name"`
+			Type             string `json:"Type"`
+			JobId            string `json:"JobId"`
+			State            string `json:"State"`
+			Code             string `json:"Code"`
+			Message          string `json:"Message"`
+			StartTime        string `json:"StartTime"`
+			EndTime          string `json:"EndTime"`
+			MNSMessageResult struct {
+				MessageId    string `json:"MessageId"`
+				ErrorMessage string `json:"ErrorMessage"`
+				ErrorCode    string `json:"ErrorCode"`
+			} `json:"MNSMessageResult"`
+		} `json:"ActivityList"`
+	} `json:"MediaWorkflowExecutionList"`
 }
 
 func CreateQueryMediaWorkflowExecutionListRequest() (request *QueryMediaWorkflowExecutionListRequest) {

+ 13 - 15
services/mts/query_media_workflow_list.go

@@ -64,28 +64,26 @@ func (client *Client) QueryMediaWorkflowListWithCallback(request *QueryMediaWork
 
 type QueryMediaWorkflowListRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	MediaWorkflowIds     string `position:"Query" name:"MediaWorkflowIds"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	MediaWorkflowIds     string `position:"Query" name:"MediaWorkflowIds"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryMediaWorkflowListResponse struct {
 	*responses.BaseResponse
-	RequestId                string `json:"RequestId" xml:"RequestId"`
-	NonExistMediaWorkflowIds struct {
-		MediaWorkflowId []string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-	} `json:"NonExistMediaWorkflowIds" xml:"NonExistMediaWorkflowIds"`
-	MediaWorkflowList struct {
-		MediaWorkflow []struct {
-			MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-			Name            string `json:"Name" xml:"Name"`
-			Topology        string `json:"Topology" xml:"Topology"`
-			State           string `json:"State" xml:"State"`
-			CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-		} `json:"MediaWorkflow" xml:"MediaWorkflow"`
-	} `json:"MediaWorkflowList" xml:"MediaWorkflowList"`
+	RequestId                string   `json:"RequestId"`
+	NonExistMediaWorkflowIds []string `json:"NonExistMediaWorkflowIds"`
+	MediaWorkflowList        []struct {
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		Topology        string `json:"Topology"`
+		State           string `json:"State"`
+		CreationTime    string `json:"CreationTime"`
+	} `json:"MediaWorkflowList"`
 }
 
 func CreateQueryMediaWorkflowListRequest() (request *QueryMediaWorkflowListRequest) {

+ 17 - 19
services/mts/query_pipeline_list.go

@@ -64,33 +64,31 @@ func (client *Client) QueryPipelineListWithCallback(request *QueryPipelineListRe
 
 type QueryPipelineListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	PipelineIds          string `position:"Query" name:"PipelineIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryPipelineListResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	NonExistPids struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistPids" xml:"NonExistPids"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Speed        string `json:"Speed" xml:"Speed"`
-			SpeedLevel   int64  `json:"SpeedLevel" xml:"SpeedLevel"`
-			Role         string `json:"Role" xml:"Role"`
-			NotifyConfig struct {
-				Topic     string `json:"Topic" xml:"Topic"`
-				QueueName string `json:"QueueName" xml:"QueueName"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistPids []string `json:"NonExistPids"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Speed        string `json:"Speed"`
+		SpeedLevel   int64  `json:"SpeedLevel"`
+		Role         string `json:"Role"`
+		NotifyConfig struct {
+			Topic     string `json:"Topic"`
+			QueueName string `json:"QueueName"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateQueryPipelineListRequest() (request *QueryPipelineListRequest) {

+ 45 - 51
services/mts/query_porn_job_list.go

@@ -64,65 +64,59 @@ func (client *Client) QueryPornJobListWithCallback(request *QueryPornJobListRequ
 
 type QueryPornJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryPornJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	PornJobList struct {
-		PornJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			PornConfig struct {
-				Interval   string `json:"Interval" xml:"Interval"`
-				BizType    string `json:"BizType" xml:"BizType"`
-				OutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"OutputFile" xml:"OutputFile"`
-			} `json:"PornConfig" xml:"PornConfig"`
-			CensorPornResult struct {
-				Label           string `json:"Label" xml:"Label"`
-				Suggestion      string `json:"Suggestion" xml:"Suggestion"`
-				MaxScore        string `json:"MaxScore" xml:"MaxScore"`
-				AverageScore    string `json:"AverageScore" xml:"AverageScore"`
-				PornCounterList struct {
-					Counter []struct {
-						Count int    `json:"Count" xml:"Count"`
-						Label string `json:"Label" xml:"Label"`
-					} `json:"Counter" xml:"Counter"`
-				} `json:"PornCounterList" xml:"PornCounterList"`
-				PornTopList struct {
-					Top []struct {
-						Label     string `json:"Label" xml:"Label"`
-						Score     string `json:"Score" xml:"Score"`
-						Timestamp string `json:"Timestamp" xml:"Timestamp"`
-						Index     string `json:"Index" xml:"Index"`
-						Object    string `json:"Object" xml:"Object"`
-					} `json:"Top" xml:"Top"`
-				} `json:"PornTopList" xml:"PornTopList"`
-			} `json:"CensorPornResult" xml:"CensorPornResult"`
-		} `json:"PornJob" xml:"PornJob"`
-	} `json:"PornJobList" xml:"PornJobList"`
+	RequestId   string   `json:"RequestId"`
+	NonExistIds []string `json:"NonExistIds"`
+	PornJobList []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		PornConfig struct {
+			Interval   string `json:"Interval"`
+			BizType    string `json:"BizType"`
+			OutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"OutputFile"`
+		} `json:"PornConfig"`
+		CensorPornResult struct {
+			Label           string `json:"Label"`
+			Suggestion      string `json:"Suggestion"`
+			MaxScore        string `json:"MaxScore"`
+			AverageScore    string `json:"AverageScore"`
+			PornCounterList []struct {
+				Count int    `json:"Count"`
+				Label string `json:"Label"`
+			} `json:"PornCounterList"`
+			PornTopList []struct {
+				Label     string `json:"Label"`
+				Score     string `json:"Score"`
+				Timestamp string `json:"Timestamp"`
+				Index     string `json:"Index"`
+				Object    string `json:"Object"`
+			} `json:"PornTopList"`
+		} `json:"CensorPornResult"`
+	} `json:"PornJobList"`
 }
 
 func CreateQueryPornJobListRequest() (request *QueryPornJobListRequest) {

+ 15 - 17
services/mts/query_porn_pipeline_list.go

@@ -64,31 +64,29 @@ func (client *Client) QueryPornPipelineListWithCallback(request *QueryPornPipeli
 
 type QueryPornPipelineListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	PipelineIds          string `position:"Query" name:"PipelineIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryPornPipelineListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic string `json:"Topic" xml:"Topic"`
-				Queue string `json:"Queue" xml:"Queue"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistIds  []string `json:"NonExistIds"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateQueryPornPipelineListRequest() (request *QueryPornPipelineListRequest) {

+ 58 - 60
services/mts/query_snapshot_job_list.go

@@ -64,73 +64,71 @@ func (client *Client) QuerySnapshotJobListWithCallback(request *QuerySnapshotJob
 
 type QuerySnapshotJobListRequest struct {
 	*requests.RpcRequest
-	SnapshotJobIds       string `position:"Query" name:"SnapshotJobIds"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	SnapshotJobIds       string `position:"Query" name:"SnapshotJobIds"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QuerySnapshotJobListResponse struct {
 	*responses.BaseResponse
-	RequestId              string `json:"RequestId" xml:"RequestId"`
-	NonExistSnapshotJobIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistSnapshotJobIds" xml:"NonExistSnapshotJobIds"`
-	SnapshotJobList struct {
-		SnapshotJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Count        string `json:"Count" xml:"Count"`
-			TileCount    string `json:"TileCount" xml:"TileCount"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-				RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-			} `json:"Input" xml:"Input"`
-			SnapshotConfig struct {
-				Time       string `json:"Time" xml:"Time"`
-				Interval   string `json:"Interval" xml:"Interval"`
-				Num        string `json:"Num" xml:"Num"`
-				Width      string `json:"Width" xml:"Width"`
-				Height     string `json:"Height" xml:"Height"`
-				FrameType  string `json:"FrameType" xml:"FrameType"`
-				OutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-					RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-				} `json:"OutputFile" xml:"OutputFile"`
-				TileOutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-					RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-				} `json:"TileOutputFile" xml:"TileOutputFile"`
-				TileOut struct {
-					Lines         string `json:"Lines" xml:"Lines"`
-					Columns       string `json:"Columns" xml:"Columns"`
-					CellWidth     string `json:"CellWidth" xml:"CellWidth"`
-					CellHeight    string `json:"CellHeight" xml:"CellHeight"`
-					Margin        string `json:"Margin" xml:"Margin"`
-					Padding       string `json:"Padding" xml:"Padding"`
-					Color         string `json:"Color" xml:"Color"`
-					IsKeepCellPic string `json:"IsKeepCellPic" xml:"IsKeepCellPic"`
-				} `json:"TileOut" xml:"TileOut"`
-			} `json:"SnapshotConfig" xml:"SnapshotConfig"`
-			MNSMessageResult struct {
-				MessageId    string `json:"MessageId" xml:"MessageId"`
-				ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-				ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-			} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-		} `json:"SnapshotJob" xml:"SnapshotJob"`
-	} `json:"SnapshotJobList" xml:"SnapshotJobList"`
+	RequestId              string   `json:"RequestId"`
+	NonExistSnapshotJobIds []string `json:"NonExistSnapshotJobIds"`
+	SnapshotJobList        []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Count        string `json:"Count"`
+		TileCount    string `json:"TileCount"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+			RoleArn  string `json:"RoleArn"`
+		} `json:"Input"`
+		SnapshotConfig struct {
+			Time       string `json:"Time"`
+			Interval   string `json:"Interval"`
+			Num        string `json:"Num"`
+			Width      string `json:"Width"`
+			Height     string `json:"Height"`
+			FrameType  string `json:"FrameType"`
+			OutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"OutputFile"`
+			TileOutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+				RoleArn  string `json:"RoleArn"`
+			} `json:"TileOutputFile"`
+			TileOut struct {
+				Lines         string `json:"Lines"`
+				Columns       string `json:"Columns"`
+				CellWidth     string `json:"CellWidth"`
+				CellHeight    string `json:"CellHeight"`
+				Margin        string `json:"Margin"`
+				Padding       string `json:"Padding"`
+				Color         string `json:"Color"`
+				IsKeepCellPic string `json:"IsKeepCellPic"`
+			} `json:"TileOut"`
+		} `json:"SnapshotConfig"`
+		MNSMessageResult struct {
+			MessageId    string `json:"MessageId"`
+			ErrorMessage string `json:"ErrorMessage"`
+			ErrorCode    string `json:"ErrorCode"`
+		} `json:"MNSMessageResult"`
+	} `json:"SnapshotJobList"`
 }
 
 func CreateQuerySnapshotJobListRequest() (request *QuerySnapshotJobListRequest) {

+ 35 - 43
services/mts/query_tag_job_list.go

@@ -64,56 +64,48 @@ func (client *Client) QueryTagJobListWithCallback(request *QueryTagJobListReques
 
 type QueryTagJobListRequest struct {
 	*requests.RpcRequest
-	TagJobIds            string `position:"Query" name:"TagJobIds"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	TagJobIds            string `position:"Query" name:"TagJobIds"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryTagJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	TagJobList struct {
-		TagJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			VideoTagResult struct {
-				Details      string `json:"Details" xml:"Details"`
-				TagAnResults struct {
-					TagAnResult []struct {
-						Label string `json:"Label" xml:"Label"`
-						Score string `json:"Score" xml:"Score"`
-					} `json:"TagAnResult" xml:"TagAnResult"`
-				} `json:"TagAnResults" xml:"TagAnResults"`
-				TagFrResults struct {
-					TagFrResult []struct {
-						Time     string `json:"Time" xml:"Time"`
-						TagFaces struct {
-							TagFace []struct {
-								Name   string `json:"Name" xml:"Name"`
-								Score  string `json:"Score" xml:"Score"`
-								Target string `json:"Target" xml:"Target"`
-							} `json:"TagFace" xml:"TagFace"`
-						} `json:"TagFaces" xml:"TagFaces"`
-					} `json:"TagFrResult" xml:"TagFrResult"`
-				} `json:"TagFrResults" xml:"TagFrResults"`
-			} `json:"VideoTagResult" xml:"VideoTagResult"`
-		} `json:"TagJob" xml:"TagJob"`
-	} `json:"TagJobList" xml:"TagJobList"`
+	RequestId   string   `json:"RequestId"`
+	NonExistIds []string `json:"NonExistIds"`
+	TagJobList  []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		VideoTagResult struct {
+			Details      string `json:"Details"`
+			TagAnResults []struct {
+				Label string `json:"Label"`
+				Score string `json:"Score"`
+			} `json:"TagAnResults"`
+			TagFrResults []struct {
+				Time     string `json:"Time"`
+				TagFaces []struct {
+					Name   string `json:"Name"`
+					Score  string `json:"Score"`
+					Target string `json:"Target"`
+				} `json:"TagFaces"`
+			} `json:"TagFrResults"`
+		} `json:"VideoTagResult"`
+	} `json:"TagJobList"`
 }
 
 func CreateQueryTagJobListRequest() (request *QueryTagJobListRequest) {

+ 68 - 70
services/mts/query_template_list.go

@@ -64,84 +64,82 @@ func (client *Client) QueryTemplateListWithCallback(request *QueryTemplateListRe
 
 type QueryTemplateListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	TemplateIds          string `position:"Query" name:"TemplateIds"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryTemplateListResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	NonExistTids struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistTids" xml:"NonExistTids"`
-	TemplateList struct {
-		Template []struct {
-			Id        string `json:"Id" xml:"Id"`
-			Name      string `json:"Name" xml:"Name"`
-			State     string `json:"State" xml:"State"`
-			Container struct {
-				Format string `json:"Format" xml:"Format"`
-			} `json:"Container" xml:"Container"`
-			Video struct {
-				Codec      string `json:"Codec" xml:"Codec"`
-				Profile    string `json:"Profile" xml:"Profile"`
-				Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-				Crf        string `json:"Crf" xml:"Crf"`
-				Width      string `json:"Width" xml:"Width"`
-				Height     string `json:"Height" xml:"Height"`
-				Fps        string `json:"Fps" xml:"Fps"`
-				Gop        string `json:"Gop" xml:"Gop"`
-				Preset     string `json:"Preset" xml:"Preset"`
-				ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-				Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-				Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-				PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-				Degrain    string `json:"Degrain" xml:"Degrain"`
-				Qscale     string `json:"Qscale" xml:"Qscale"`
-				Remove     string `json:"Remove" xml:"Remove"`
-				Crop       string `json:"Crop" xml:"Crop"`
-				Pad        string `json:"Pad" xml:"Pad"`
-				MaxFps     string `json:"MaxFps" xml:"MaxFps"`
-				BitrateBnd struct {
-					Max string `json:"Max" xml:"Max"`
-					Min string `json:"Min" xml:"Min"`
-				} `json:"BitrateBnd" xml:"BitrateBnd"`
-			} `json:"Video" xml:"Video"`
-			Audio struct {
-				Codec      string `json:"Codec" xml:"Codec"`
-				Profile    string `json:"Profile" xml:"Profile"`
-				Samplerate string `json:"Samplerate" xml:"Samplerate"`
-				Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-				Channels   string `json:"Channels" xml:"Channels"`
-				Qscale     string `json:"Qscale" xml:"Qscale"`
-				Remove     string `json:"Remove" xml:"Remove"`
-			} `json:"Audio" xml:"Audio"`
-			TransConfig struct {
-				TransMode               string `json:"TransMode" xml:"TransMode"`
-				IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-				IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-				IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-				IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-				AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-				IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-				IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-			} `json:"TransConfig" xml:"TransConfig"`
-			MuxConfig struct {
-				Segment struct {
-					Duration string `json:"Duration" xml:"Duration"`
-				} `json:"Segment" xml:"Segment"`
-				Gif struct {
-					Loop            string `json:"Loop" xml:"Loop"`
-					FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-					IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-					DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-				} `json:"Gif" xml:"Gif"`
-			} `json:"MuxConfig" xml:"MuxConfig"`
-		} `json:"Template" xml:"Template"`
-	} `json:"TemplateList" xml:"TemplateList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistTids []string `json:"NonExistTids"`
+	TemplateList []struct {
+		Id        string `json:"Id"`
+		Name      string `json:"Name"`
+		State     string `json:"State"`
+		Container struct {
+			Format string `json:"Format"`
+		} `json:"Container"`
+		Video struct {
+			Codec      string `json:"Codec"`
+			Profile    string `json:"Profile"`
+			Bitrate    string `json:"Bitrate"`
+			Crf        string `json:"Crf"`
+			Width      string `json:"Width"`
+			Height     string `json:"Height"`
+			Fps        string `json:"Fps"`
+			Gop        string `json:"Gop"`
+			Preset     string `json:"Preset"`
+			ScanMode   string `json:"ScanMode"`
+			Bufsize    string `json:"Bufsize"`
+			Maxrate    string `json:"Maxrate"`
+			PixFmt     string `json:"PixFmt"`
+			Degrain    string `json:"Degrain"`
+			Qscale     string `json:"Qscale"`
+			Remove     string `json:"Remove"`
+			Crop       string `json:"Crop"`
+			Pad        string `json:"Pad"`
+			MaxFps     string `json:"MaxFps"`
+			BitrateBnd struct {
+				Max string `json:"Max"`
+				Min string `json:"Min"`
+			} `json:"BitrateBnd"`
+		} `json:"Video"`
+		Audio struct {
+			Codec      string `json:"Codec"`
+			Profile    string `json:"Profile"`
+			Samplerate string `json:"Samplerate"`
+			Bitrate    string `json:"Bitrate"`
+			Channels   string `json:"Channels"`
+			Qscale     string `json:"Qscale"`
+			Remove     string `json:"Remove"`
+		} `json:"Audio"`
+		TransConfig struct {
+			TransMode               string `json:"TransMode"`
+			IsCheckReso             string `json:"IsCheckReso"`
+			IsCheckResoFail         string `json:"IsCheckResoFail"`
+			IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+			IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+			AdjDarMethod            string `json:"AdjDarMethod"`
+			IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+			IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+		} `json:"TransConfig"`
+		MuxConfig struct {
+			Segment struct {
+				Duration string `json:"Duration"`
+			} `json:"Segment"`
+			Gif struct {
+				Loop            string `json:"Loop"`
+				FinalDelay      string `json:"FinalDelay"`
+				IsCustomPalette string `json:"IsCustomPalette"`
+				DitherMode      string `json:"DitherMode"`
+			} `json:"Gif"`
+		} `json:"MuxConfig"`
+	} `json:"TemplateList"`
 }
 
 func CreateQueryTemplateListRequest() (request *QueryTemplateListRequest) {

+ 45 - 51
services/mts/query_terrorism_job_list.go

@@ -64,65 +64,59 @@ func (client *Client) QueryTerrorismJobListWithCallback(request *QueryTerrorismJ
 
 type QueryTerrorismJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryTerrorismJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	TerrorismJobList struct {
-		TerrorismJob []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			TerrorismConfig struct {
-				Interval   string `json:"Interval" xml:"Interval"`
-				BizType    string `json:"BizType" xml:"BizType"`
-				OutputFile struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"OutputFile" xml:"OutputFile"`
-			} `json:"TerrorismConfig" xml:"TerrorismConfig"`
-			CensorTerrorismResult struct {
-				Label                string `json:"Label" xml:"Label"`
-				Suggestion           string `json:"Suggestion" xml:"Suggestion"`
-				MaxScore             string `json:"MaxScore" xml:"MaxScore"`
-				AverageScore         string `json:"AverageScore" xml:"AverageScore"`
-				TerrorismCounterList struct {
-					Counter []struct {
-						Count int    `json:"Count" xml:"Count"`
-						Label string `json:"Label" xml:"Label"`
-					} `json:"Counter" xml:"Counter"`
-				} `json:"TerrorismCounterList" xml:"TerrorismCounterList"`
-				TerrorismTopList struct {
-					Top []struct {
-						Label     string `json:"Label" xml:"Label"`
-						Score     string `json:"Score" xml:"Score"`
-						Timestamp string `json:"Timestamp" xml:"Timestamp"`
-						Index     string `json:"Index" xml:"Index"`
-						Object    string `json:"Object" xml:"Object"`
-					} `json:"Top" xml:"Top"`
-				} `json:"TerrorismTopList" xml:"TerrorismTopList"`
-			} `json:"CensorTerrorismResult" xml:"CensorTerrorismResult"`
-		} `json:"TerrorismJob" xml:"TerrorismJob"`
-	} `json:"TerrorismJobList" xml:"TerrorismJobList"`
+	RequestId        string   `json:"RequestId"`
+	NonExistIds      []string `json:"NonExistIds"`
+	TerrorismJobList []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		TerrorismConfig struct {
+			Interval   string `json:"Interval"`
+			BizType    string `json:"BizType"`
+			OutputFile struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"OutputFile"`
+		} `json:"TerrorismConfig"`
+		CensorTerrorismResult struct {
+			Label                string `json:"Label"`
+			Suggestion           string `json:"Suggestion"`
+			MaxScore             string `json:"MaxScore"`
+			AverageScore         string `json:"AverageScore"`
+			TerrorismCounterList []struct {
+				Count int    `json:"Count"`
+				Label string `json:"Label"`
+			} `json:"TerrorismCounterList"`
+			TerrorismTopList []struct {
+				Label     string `json:"Label"`
+				Score     string `json:"Score"`
+				Timestamp string `json:"Timestamp"`
+				Index     string `json:"Index"`
+				Object    string `json:"Object"`
+			} `json:"TerrorismTopList"`
+		} `json:"CensorTerrorismResult"`
+	} `json:"TerrorismJobList"`
 }
 
 func CreateQueryTerrorismJobListRequest() (request *QueryTerrorismJobListRequest) {

+ 15 - 17
services/mts/query_terrorism_pipeline_list.go

@@ -64,31 +64,29 @@ func (client *Client) QueryTerrorismPipelineListWithCallback(request *QueryTerro
 
 type QueryTerrorismPipelineListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	PipelineIds          string `position:"Query" name:"PipelineIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryTerrorismPipelineListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic string `json:"Topic" xml:"Topic"`
-				Queue string `json:"Queue" xml:"Queue"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistIds  []string `json:"NonExistIds"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic string `json:"Topic"`
+			Queue string `json:"Queue"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateQueryTerrorismPipelineListRequest() (request *QueryTerrorismPipelineListRequest) {

+ 116 - 0
services/mts/query_video_split_job_list.go

@@ -0,0 +1,116 @@
+package mts
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+func (client *Client) QueryVideoSplitJobList(request *QueryVideoSplitJobListRequest) (response *QueryVideoSplitJobListResponse, err error) {
+	response = CreateQueryVideoSplitJobListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+func (client *Client) QueryVideoSplitJobListWithChan(request *QueryVideoSplitJobListRequest) (<-chan *QueryVideoSplitJobListResponse, <-chan error) {
+	responseChan := make(chan *QueryVideoSplitJobListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryVideoSplitJobList(request)
+		responseChan <- response
+		errChan <- err
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+func (client *Client) QueryVideoSplitJobListWithCallback(request *QueryVideoSplitJobListRequest, callback func(response *QueryVideoSplitJobListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryVideoSplitJobListResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryVideoSplitJobList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+type QueryVideoSplitJobListRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	JobIds               string `position:"Query" name:"JobIds"`
+	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+}
+
+type QueryVideoSplitJobListResponse struct {
+	*responses.BaseResponse
+	RequestId   string   `json:"RequestId"`
+	NonExistIds []string `json:"NonExistIds"`
+	JobList     []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		VideoSplitResult struct {
+			VideoSplitList []struct {
+				StartTime string `json:"StartTime"`
+				EndTime   string `json:"EndTime"`
+				Path      string `json:"Path"`
+			} `json:"VideoSplitList"`
+		} `json:"VideoSplitResult"`
+	} `json:"JobList"`
+}
+
+func CreateQueryVideoSplitJobListRequest() (request *QueryVideoSplitJobListRequest) {
+	request = &QueryVideoSplitJobListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Mts", "2014-06-18", "QueryVideoSplitJobList", "", "")
+	return
+}
+
+func CreateQueryVideoSplitJobListResponse() (response *QueryVideoSplitJobListResponse) {
+	response = &QueryVideoSplitJobListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 25 - 29
services/mts/query_video_summary_job_list.go

@@ -64,43 +64,39 @@ func (client *Client) QueryVideoSummaryJobListWithCallback(request *QueryVideoSu
 
 type QueryVideoSummaryJobListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	JobIds               string `position:"Query" name:"JobIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryVideoSummaryJobListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	JobList struct {
-		Job []struct {
-			Id           string `json:"Id" xml:"Id"`
-			UserData     string `json:"UserData" xml:"UserData"`
-			PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-			State        string `json:"State" xml:"State"`
-			Code         string `json:"Code" xml:"Code"`
-			Message      string `json:"Message" xml:"Message"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Input        struct {
-				Bucket   string `json:"Bucket" xml:"Bucket"`
-				Location string `json:"Location" xml:"Location"`
-				Object   string `json:"Object" xml:"Object"`
-			} `json:"Input" xml:"Input"`
-			VideoSummaryResult struct {
-				VideoSummaryList struct {
-					VideoSummary []struct {
-						StartTime string `json:"StartTime" xml:"StartTime"`
-						EndTime   string `json:"EndTime" xml:"EndTime"`
-					} `json:"VideoSummary" xml:"VideoSummary"`
-				} `json:"VideoSummaryList" xml:"VideoSummaryList"`
-			} `json:"VideoSummaryResult" xml:"VideoSummaryResult"`
-		} `json:"Job" xml:"Job"`
-	} `json:"JobList" xml:"JobList"`
+	RequestId   string   `json:"RequestId"`
+	NonExistIds []string `json:"NonExistIds"`
+	JobList     []struct {
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		PipelineId   string `json:"PipelineId"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		CreationTime string `json:"CreationTime"`
+		Input        struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"Input"`
+		VideoSummaryResult struct {
+			VideoSummaryList []struct {
+				StartTime string `json:"StartTime"`
+				EndTime   string `json:"EndTime"`
+			} `json:"VideoSummaryList"`
+		} `json:"VideoSummaryResult"`
+	} `json:"JobList"`
 }
 
 func CreateQueryVideoSummaryJobListRequest() (request *QueryVideoSummaryJobListRequest) {

+ 15 - 17
services/mts/query_video_summary_pipeline_list.go

@@ -64,31 +64,29 @@ func (client *Client) QueryVideoSummaryPipelineListWithCallback(request *QueryVi
 
 type QueryVideoSummaryPipelineListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	PipelineIds          string `position:"Query" name:"PipelineIds"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryVideoSummaryPipelineListResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
-	NonExistIds struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistIds" xml:"NonExistIds"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Priority     string `json:"Priority" xml:"Priority"`
-			NotifyConfig struct {
-				Topic     string `json:"Topic" xml:"Topic"`
-				QueueName string `json:"QueueName" xml:"QueueName"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string   `json:"RequestId"`
+	NonExistIds  []string `json:"NonExistIds"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Priority     string `json:"Priority"`
+		NotifyConfig struct {
+			Topic     string `json:"Topic"`
+			QueueName string `json:"QueueName"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateQueryVideoSummaryPipelineListRequest() (request *QueryVideoSummaryPipelineListRequest) {

+ 26 - 28
services/mts/query_water_mark_template_list.go

@@ -64,42 +64,40 @@ func (client *Client) QueryWaterMarkTemplateListWithCallback(request *QueryWater
 
 type QueryWaterMarkTemplateListRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
 	WaterMarkTemplateIds string `position:"Query" name:"WaterMarkTemplateIds"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type QueryWaterMarkTemplateListResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	NonExistWids struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"NonExistWids" xml:"NonExistWids"`
-	WaterMarkTemplateList struct {
-		WaterMarkTemplate []struct {
-			Id       string `json:"Id" xml:"Id"`
-			Name     string `json:"Name" xml:"Name"`
-			Width    string `json:"Width" xml:"Width"`
-			Height   string `json:"Height" xml:"Height"`
-			Dx       string `json:"Dx" xml:"Dx"`
-			Dy       string `json:"Dy" xml:"Dy"`
-			ReferPos string `json:"ReferPos" xml:"ReferPos"`
-			Type     string `json:"Type" xml:"Type"`
-			State    string `json:"State" xml:"State"`
-			Timeline struct {
-				Start    string `json:"Start" xml:"Start"`
-				Duration string `json:"Duration" xml:"Duration"`
-			} `json:"Timeline" xml:"Timeline"`
-			RatioRefer struct {
-				Dx     string `json:"Dx" xml:"Dx"`
-				Dy     string `json:"Dy" xml:"Dy"`
-				Width  string `json:"Width" xml:"Width"`
-				Height string `json:"Height" xml:"Height"`
-			} `json:"RatioRefer" xml:"RatioRefer"`
-		} `json:"WaterMarkTemplate" xml:"WaterMarkTemplate"`
-	} `json:"WaterMarkTemplateList" xml:"WaterMarkTemplateList"`
+	RequestId             string   `json:"RequestId"`
+	NonExistWids          []string `json:"NonExistWids"`
+	WaterMarkTemplateList []struct {
+		Id       string `json:"Id"`
+		Name     string `json:"Name"`
+		Width    string `json:"Width"`
+		Height   string `json:"Height"`
+		Dx       string `json:"Dx"`
+		Dy       string `json:"Dy"`
+		ReferPos string `json:"ReferPos"`
+		Type     string `json:"Type"`
+		State    string `json:"State"`
+		Timeline struct {
+			Start    string `json:"Start"`
+			Duration string `json:"Duration"`
+		} `json:"Timeline"`
+		RatioRefer struct {
+			Dx     string `json:"Dx"`
+			Dy     string `json:"Dy"`
+			Width  string `json:"Width"`
+			Height string `json:"Height"`
+		} `json:"RatioRefer"`
+	} `json:"WaterMarkTemplateList"`
 }
 
 func CreateQueryWaterMarkTemplateListRequest() (request *QueryWaterMarkTemplateListRequest) {

+ 7 - 9
services/mts/refresh_cdn_domain_configs_cache.go

@@ -64,22 +64,20 @@ func (client *Client) RefreshCdnDomainConfigsCacheWithCallback(request *RefreshC
 
 type RefreshCdnDomainConfigsCacheRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Domains              string `position:"Query" name:"Domains"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Domains              string `position:"Query" name:"Domains"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type RefreshCdnDomainConfigsCacheResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
-	SucessDomains struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"SucessDomains" xml:"SucessDomains"`
-	FailedDomains struct {
-		String []string `json:"String" xml:"String"`
-	} `json:"FailedDomains" xml:"FailedDomains"`
+	RequestId     string   `json:"RequestId"`
+	SucessDomains []string `json:"SucessDomains"`
+	FailedDomains []string `json:"FailedDomains"`
 }
 
 func CreateRefreshCdnDomainConfigsCacheRequest() (request *RefreshCdnDomainConfigsCacheRequest) {

+ 118 - 0
services/mts/register_media_detail_person.go

@@ -0,0 +1,118 @@
+package mts
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+func (client *Client) RegisterMediaDetailPerson(request *RegisterMediaDetailPersonRequest) (response *RegisterMediaDetailPersonResponse, err error) {
+	response = CreateRegisterMediaDetailPersonResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+func (client *Client) RegisterMediaDetailPersonWithChan(request *RegisterMediaDetailPersonRequest) (<-chan *RegisterMediaDetailPersonResponse, <-chan error) {
+	responseChan := make(chan *RegisterMediaDetailPersonResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RegisterMediaDetailPerson(request)
+		responseChan <- response
+		errChan <- err
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+func (client *Client) RegisterMediaDetailPersonWithCallback(request *RegisterMediaDetailPersonRequest, callback func(response *RegisterMediaDetailPersonResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RegisterMediaDetailPersonResponse
+		var err error
+		defer close(result)
+		response, err = client.RegisterMediaDetailPerson(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+type RegisterMediaDetailPersonRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	Images               string `position:"Query" name:"Images"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	Category             string `position:"Query" name:"Category"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PersonName           string `position:"Query" name:"PersonName"`
+}
+
+type RegisterMediaDetailPersonResponse struct {
+	*responses.BaseResponse
+	RequestId            string `json:"RequestId"`
+	RegisteredPersonages []struct {
+		PersonName string `json:"PersonName"`
+		FaceId     string `json:"FaceId"`
+		Target     string `json:"Target"`
+		Quality    string `json:"Quality"`
+		Gender     string `json:"Gender"`
+		ImageId    string `json:"ImageId"`
+		ImageFile  struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"ImageFile"`
+	} `json:"RegisteredPersonages"`
+	FailedImages []struct {
+		Code       string `json:"Code"`
+		Success    string `json:"Success"`
+		ImageFile1 struct {
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"ImageFile"`
+	} `json:"FailedImages"`
+}
+
+func CreateRegisterMediaDetailPersonRequest() (request *RegisterMediaDetailPersonRequest) {
+	request = &RegisterMediaDetailPersonRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Mts", "2014-06-18", "RegisterMediaDetailPerson", "", "")
+	return
+}
+
+func CreateRegisterMediaDetailPersonResponse() (response *RegisterMediaDetailPersonResponse) {
+	response = &RegisterMediaDetailPersonResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 8 - 6
services/mts/register_media_detail_scenario.go

@@ -64,19 +64,21 @@ func (client *Client) RegisterMediaDetailScenarioWithCallback(request *RegisterM
 
 type RegisterMediaDetailScenarioRequest struct {
 	*requests.RpcRequest
-	Scenario             string `position:"Query" name:"Scenario"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Description          string `position:"Query" name:"Description"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	Scenario             string `position:"Query" name:"Scenario"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Description          string `position:"Query" name:"Description"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type RegisterMediaDetailScenarioResponse struct {
 	*responses.BaseResponse
-	RequestId  string `json:"RequestId" xml:"RequestId"`
-	ScenarioId string `json:"ScenarioId" xml:"ScenarioId"`
+	RequestId  string `json:"RequestId"`
+	ScenarioId string `json:"ScenarioId"`
 }
 
 func CreateRegisterMediaDetailScenarioRequest() (request *RegisterMediaDetailScenarioRequest) {

+ 7 - 5
services/mts/report_annotation_job_result.go

@@ -65,18 +65,20 @@ func (client *Client) ReportAnnotationJobResultWithCallback(request *ReportAnnot
 type ReportAnnotationJobResultRequest struct {
 	*requests.RpcRequest
 	Annotation           string `position:"Query" name:"Annotation"`
-	Details              string `position:"Query" name:"Details"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Details              string `position:"Query" name:"Details"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportAnnotationJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportAnnotationJobResultRequest() (request *ReportAnnotationJobResultRequest) {

+ 8 - 6
services/mts/report_censor_job_result.go

@@ -64,19 +64,21 @@ func (client *Client) ReportCensorJobResultWithCallback(request *ReportCensorJob
 
 type ReportCensorJobResultRequest struct {
 	*requests.RpcRequest
-	Detail               string `position:"Query" name:"Detail"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Label                string `position:"Query" name:"Label"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Label                string `position:"Query" name:"Label"`
+	Detail               string `position:"Query" name:"Detail"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportCensorJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportCensorJobResultRequest() (request *ReportCensorJobResultRequest) {

+ 6 - 4
services/mts/report_cover_job_result.go

@@ -65,17 +65,19 @@ func (client *Client) ReportCoverJobResultWithCallback(request *ReportCoverJobRe
 type ReportCoverJobResultRequest struct {
 	*requests.RpcRequest
 	Result               string `position:"Query" name:"Result"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportCoverJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportCoverJobResultRequest() (request *ReportCoverJobResultRequest) {

+ 8 - 6
services/mts/report_facerecog_job_result.go

@@ -64,19 +64,21 @@ func (client *Client) ReportFacerecogJobResultWithCallback(request *ReportFacere
 
 type ReportFacerecogJobResultRequest struct {
 	*requests.RpcRequest
-	Facerecog            string `position:"Query" name:"Facerecog"`
-	Details              string `position:"Query" name:"Details"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	Facerecog            string `position:"Query" name:"Facerecog"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Details              string `position:"Query" name:"Details"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportFacerecogJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportFacerecogJobResultRequest() (request *ReportFacerecogJobResultRequest) {

+ 97 - 0
services/mts/report_fp_shot_job_result.go

@@ -0,0 +1,97 @@
+package mts
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+func (client *Client) ReportFpShotJobResult(request *ReportFpShotJobResultRequest) (response *ReportFpShotJobResultResponse, err error) {
+	response = CreateReportFpShotJobResultResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+func (client *Client) ReportFpShotJobResultWithChan(request *ReportFpShotJobResultRequest) (<-chan *ReportFpShotJobResultResponse, <-chan error) {
+	responseChan := make(chan *ReportFpShotJobResultResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ReportFpShotJobResult(request)
+		responseChan <- response
+		errChan <- err
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+func (client *Client) ReportFpShotJobResultWithCallback(request *ReportFpShotJobResultRequest, callback func(response *ReportFpShotJobResultResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ReportFpShotJobResultResponse
+		var err error
+		defer close(result)
+		response, err = client.ReportFpShotJobResult(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+type ReportFpShotJobResultRequest struct {
+	*requests.RpcRequest
+	Result               string `position:"Query" name:"Result"`
+	JobId                string `position:"Query" name:"JobId"`
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Details              string `position:"Query" name:"Details"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+}
+
+type ReportFpShotJobResultResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
+}
+
+func CreateReportFpShotJobResultRequest() (request *ReportFpShotJobResultRequest) {
+	request = &ReportFpShotJobResultRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Mts", "2014-06-18", "ReportFpShotJobResult", "", "")
+	return
+}
+
+func CreateReportFpShotJobResultResponse() (response *ReportFpShotJobResultResponse) {
+	response = &ReportFpShotJobResultResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 8 - 6
services/mts/report_media_detail_job_result.go

@@ -64,19 +64,21 @@ func (client *Client) ReportMediaDetailJobResultWithCallback(request *ReportMedi
 
 type ReportMediaDetailJobResultRequest struct {
 	*requests.RpcRequest
-	Results              string `position:"Query" name:"Results"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Tag                  string `position:"Query" name:"Tag"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Tag                  string `position:"Query" name:"Tag"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	Results              string `position:"Query" name:"Results"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportMediaDetailJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportMediaDetailJobResultRequest() (request *ReportMediaDetailJobResultRequest) {

+ 8 - 6
services/mts/report_porn_job_result.go

@@ -64,19 +64,21 @@ func (client *Client) ReportPornJobResultWithCallback(request *ReportPornJobResu
 
 type ReportPornJobResultRequest struct {
 	*requests.RpcRequest
-	Detail               string `position:"Query" name:"Detail"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Label                string `position:"Query" name:"Label"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Label                string `position:"Query" name:"Label"`
+	Detail               string `position:"Query" name:"Detail"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportPornJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportPornJobResultRequest() (request *ReportPornJobResultRequest) {

+ 7 - 5
services/mts/report_tag_job_result.go

@@ -65,18 +65,20 @@ func (client *Client) ReportTagJobResultWithCallback(request *ReportTagJobResult
 type ReportTagJobResultRequest struct {
 	*requests.RpcRequest
 	Result               string `position:"Query" name:"Result"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Tag                  string `position:"Query" name:"Tag"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Tag                  string `position:"Query" name:"Tag"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportTagJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportTagJobResultRequest() (request *ReportTagJobResultRequest) {

+ 8 - 6
services/mts/report_terrorism_job_result.go

@@ -64,19 +64,21 @@ func (client *Client) ReportTerrorismJobResultWithCallback(request *ReportTerror
 
 type ReportTerrorismJobResultRequest struct {
 	*requests.RpcRequest
-	Detail               string `position:"Query" name:"Detail"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Label                string `position:"Query" name:"Label"`
+	JobId                string `position:"Query" name:"JobId"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Label                string `position:"Query" name:"Label"`
+	Detail               string `position:"Query" name:"Detail"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	JobId                string `position:"Query" name:"JobId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type ReportTerrorismJobResultResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateReportTerrorismJobResultRequest() (request *ReportTerrorismJobResultRequest) {

+ 97 - 0
services/mts/report_video_split_job_result.go

@@ -0,0 +1,97 @@
+package mts
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+func (client *Client) ReportVideoSplitJobResult(request *ReportVideoSplitJobResultRequest) (response *ReportVideoSplitJobResultResponse, err error) {
+	response = CreateReportVideoSplitJobResultResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+func (client *Client) ReportVideoSplitJobResultWithChan(request *ReportVideoSplitJobResultRequest) (<-chan *ReportVideoSplitJobResultResponse, <-chan error) {
+	responseChan := make(chan *ReportVideoSplitJobResultResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ReportVideoSplitJobResult(request)
+		responseChan <- response
+		errChan <- err
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+func (client *Client) ReportVideoSplitJobResultWithCallback(request *ReportVideoSplitJobResultRequest, callback func(response *ReportVideoSplitJobResultResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ReportVideoSplitJobResultResponse
+		var err error
+		defer close(result)
+		response, err = client.ReportVideoSplitJobResult(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+type ReportVideoSplitJobResultRequest struct {
+	*requests.RpcRequest
+	Result               string `position:"Query" name:"Result"`
+	JobId                string `position:"Query" name:"JobId"`
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	Details              string `position:"Query" name:"Details"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+}
+
+type ReportVideoSplitJobResultResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
+}
+
+func CreateReportVideoSplitJobResultRequest() (request *ReportVideoSplitJobResultRequest) {
+	request = &ReportVideoSplitJobResultRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Mts", "2014-06-18", "ReportVideoSplitJobResult", "", "")
+	return
+}
+
+func CreateReportVideoSplitJobResultResponse() (response *ReportVideoSplitJobResultResponse) {
+	response = &ReportVideoSplitJobResultResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 38 - 42
services/mts/search_media.go

@@ -64,56 +64,52 @@ func (client *Client) SearchMediaWithCallback(request *SearchMediaRequest, callb
 
 type SearchMediaRequest struct {
 	*requests.RpcRequest
-	To                   string `position:"Query" name:"To"`
-	PageSize             string `position:"Query" name:"PageSize"`
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Description          string `position:"Query" name:"Description"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	Title                string `position:"Query" name:"Title"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 	CateId               string `position:"Query" name:"CateId"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	From                 string `position:"Query" name:"From"`
 	SortBy               string `position:"Query" name:"SortBy"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
+	To                   string `position:"Query" name:"To"`
 	Tag                  string `position:"Query" name:"Tag"`
 	KeyWord              string `position:"Query" name:"KeyWord"`
-	From                 string `position:"Query" name:"From"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
-	Title                string `position:"Query" name:"Title"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Description          string `position:"Query" name:"Description"`
-	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
 }
 
 type SearchMediaResponse struct {
 	*responses.BaseResponse
-	RequestId  string `json:"RequestId" xml:"RequestId"`
-	TotalNum   int64  `json:"TotalNum" xml:"TotalNum"`
-	PageNumber int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize   int64  `json:"PageSize" xml:"PageSize"`
-	MediaList  struct {
-		Media []struct {
-			MediaId      string `json:"MediaId" xml:"MediaId"`
-			Title        string `json:"Title" xml:"Title"`
-			Description  string `json:"Description" xml:"Description"`
-			CoverURL     string `json:"CoverURL" xml:"CoverURL"`
-			CateId       int64  `json:"CateId" xml:"CateId"`
-			Duration     string `json:"Duration" xml:"Duration"`
-			Format       string `json:"Format" xml:"Format"`
-			Size         string `json:"Size" xml:"Size"`
-			Bitrate      string `json:"Bitrate" xml:"Bitrate"`
-			Width        string `json:"Width" xml:"Width"`
-			Height       string `json:"Height" xml:"Height"`
-			Fps          string `json:"Fps" xml:"Fps"`
-			PublishState string `json:"PublishState" xml:"PublishState"`
-			CreationTime string `json:"CreationTime" xml:"CreationTime"`
-			Tags         struct {
-				Tag []string `json:"Tag" xml:"Tag"`
-			} `json:"Tags" xml:"Tags"`
-			RunIdList struct {
-				RunId []string `json:"RunId" xml:"RunId"`
-			} `json:"RunIdList" xml:"RunIdList"`
-			File struct {
-				URL   string `json:"URL" xml:"URL"`
-				State string `json:"State" xml:"State"`
-			} `json:"File" xml:"File"`
-		} `json:"Media" xml:"Media"`
-	} `json:"MediaList" xml:"MediaList"`
+	RequestId  string `json:"RequestId"`
+	TotalNum   int64  `json:"TotalNum"`
+	PageNumber int64  `json:"PageNumber"`
+	PageSize   int64  `json:"PageSize"`
+	MediaList  []struct {
+		MediaId      string   `json:"MediaId"`
+		Title        string   `json:"Title"`
+		Description  string   `json:"Description"`
+		CoverURL     string   `json:"CoverURL"`
+		CateId       int64    `json:"CateId"`
+		Duration     string   `json:"Duration"`
+		Format       string   `json:"Format"`
+		Size         string   `json:"Size"`
+		Bitrate      string   `json:"Bitrate"`
+		Width        string   `json:"Width"`
+		Height       string   `json:"Height"`
+		Fps          string   `json:"Fps"`
+		PublishState string   `json:"PublishState"`
+		CreationTime string   `json:"CreationTime"`
+		Tags         []string `json:"Tags"`
+		RunIdList    []string `json:"RunIdList"`
+		File         struct {
+			URL   string `json:"URL"`
+			State string `json:"State"`
+		} `json:"File"`
+	} `json:"MediaList"`
 }
 
 func CreateSearchMediaRequest() (request *SearchMediaRequest) {

+ 17 - 17
services/mts/search_media_workflow.go

@@ -64,30 +64,30 @@ func (client *Client) SearchMediaWorkflowWithCallback(request *SearchMediaWorkfl
 
 type SearchMediaWorkflowRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	StateList            string `position:"Query" name:"StateList"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	StateList            string `position:"Query" name:"StateList"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type SearchMediaWorkflowResponse struct {
 	*responses.BaseResponse
-	RequestId         string `json:"RequestId" xml:"RequestId"`
-	TotalCount        int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber        int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize          int64  `json:"PageSize" xml:"PageSize"`
-	MediaWorkflowList struct {
-		MediaWorkflow []struct {
-			MediaWorkflowId string `json:"MediaWorkflowId" xml:"MediaWorkflowId"`
-			Name            string `json:"Name" xml:"Name"`
-			Topology        string `json:"Topology" xml:"Topology"`
-			State           string `json:"State" xml:"State"`
-			CreationTime    string `json:"CreationTime" xml:"CreationTime"`
-		} `json:"MediaWorkflow" xml:"MediaWorkflow"`
-	} `json:"MediaWorkflowList" xml:"MediaWorkflowList"`
+	RequestId         string `json:"RequestId"`
+	TotalCount        int64  `json:"TotalCount"`
+	PageNumber        int64  `json:"PageNumber"`
+	PageSize          int64  `json:"PageSize"`
+	MediaWorkflowList []struct {
+		MediaWorkflowId string `json:"MediaWorkflowId"`
+		Name            string `json:"Name"`
+		Topology        string `json:"Topology"`
+		State           string `json:"State"`
+		CreationTime    string `json:"CreationTime"`
+	} `json:"MediaWorkflowList"`
 }
 
 func CreateSearchMediaWorkflowRequest() (request *SearchMediaWorkflowRequest) {

+ 22 - 22
services/mts/search_pipeline.go

@@ -64,35 +64,35 @@ func (client *Client) SearchPipelineWithCallback(request *SearchPipelineRequest,
 
 type SearchPipelineRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type SearchPipelineResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	PipelineList struct {
-		Pipeline []struct {
-			Id           string `json:"Id" xml:"Id"`
-			Name         string `json:"Name" xml:"Name"`
-			State        string `json:"State" xml:"State"`
-			Speed        string `json:"Speed" xml:"Speed"`
-			SpeedLevel   int64  `json:"SpeedLevel" xml:"SpeedLevel"`
-			Role         string `json:"Role" xml:"Role"`
-			NotifyConfig struct {
-				Topic     string `json:"Topic" xml:"Topic"`
-				QueueName string `json:"QueueName" xml:"QueueName"`
-			} `json:"NotifyConfig" xml:"NotifyConfig"`
-		} `json:"Pipeline" xml:"Pipeline"`
-	} `json:"PipelineList" xml:"PipelineList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	PipelineList []struct {
+		Id           string `json:"Id"`
+		Name         string `json:"Name"`
+		State        string `json:"State"`
+		Speed        string `json:"Speed"`
+		SpeedLevel   int64  `json:"SpeedLevel"`
+		Role         string `json:"Role"`
+		NotifyConfig struct {
+			Topic     string `json:"Topic"`
+			QueueName string `json:"QueueName"`
+		} `json:"NotifyConfig"`
+	} `json:"PipelineList"`
 }
 
 func CreateSearchPipelineRequest() (request *SearchPipelineRequest) {

+ 73 - 73
services/mts/search_template.go

@@ -64,86 +64,86 @@ func (client *Client) SearchTemplateWithCallback(request *SearchTemplateRequest,
 
 type SearchTemplateRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type SearchTemplateResponse struct {
 	*responses.BaseResponse
-	RequestId    string `json:"RequestId" xml:"RequestId"`
-	TotalCount   int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber   int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize     int64  `json:"PageSize" xml:"PageSize"`
-	TemplateList struct {
-		Template []struct {
-			Id        string `json:"Id" xml:"Id"`
-			Name      string `json:"Name" xml:"Name"`
-			State     string `json:"State" xml:"State"`
-			Container struct {
-				Format string `json:"Format" xml:"Format"`
-			} `json:"Container" xml:"Container"`
-			Video struct {
-				Codec      string `json:"Codec" xml:"Codec"`
-				Profile    string `json:"Profile" xml:"Profile"`
-				Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-				Crf        string `json:"Crf" xml:"Crf"`
-				Width      string `json:"Width" xml:"Width"`
-				Height     string `json:"Height" xml:"Height"`
-				Fps        string `json:"Fps" xml:"Fps"`
-				Gop        string `json:"Gop" xml:"Gop"`
-				Preset     string `json:"Preset" xml:"Preset"`
-				ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-				Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-				Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-				PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-				Degrain    string `json:"Degrain" xml:"Degrain"`
-				Qscale     string `json:"Qscale" xml:"Qscale"`
-				Remove     string `json:"Remove" xml:"Remove"`
-				Crop       string `json:"Crop" xml:"Crop"`
-				Pad        string `json:"Pad" xml:"Pad"`
-				MaxFps     string `json:"MaxFps" xml:"MaxFps"`
-				BitrateBnd struct {
-					Max string `json:"Max" xml:"Max"`
-					Min string `json:"Min" xml:"Min"`
-				} `json:"BitrateBnd" xml:"BitrateBnd"`
-			} `json:"Video" xml:"Video"`
-			Audio struct {
-				Codec      string `json:"Codec" xml:"Codec"`
-				Profile    string `json:"Profile" xml:"Profile"`
-				Samplerate string `json:"Samplerate" xml:"Samplerate"`
-				Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-				Channels   string `json:"Channels" xml:"Channels"`
-				Qscale     string `json:"Qscale" xml:"Qscale"`
-				Remove     string `json:"Remove" xml:"Remove"`
-			} `json:"Audio" xml:"Audio"`
-			TransConfig struct {
-				TransMode               string `json:"TransMode" xml:"TransMode"`
-				IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-				IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-				IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-				IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-				AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-				IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-				IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-			} `json:"TransConfig" xml:"TransConfig"`
-			MuxConfig struct {
-				Segment struct {
-					Duration string `json:"Duration" xml:"Duration"`
-				} `json:"Segment" xml:"Segment"`
-				Gif struct {
-					Loop            string `json:"Loop" xml:"Loop"`
-					FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-					IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-					DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-				} `json:"Gif" xml:"Gif"`
-			} `json:"MuxConfig" xml:"MuxConfig"`
-		} `json:"Template" xml:"Template"`
-	} `json:"TemplateList" xml:"TemplateList"`
+	RequestId    string `json:"RequestId"`
+	TotalCount   int64  `json:"TotalCount"`
+	PageNumber   int64  `json:"PageNumber"`
+	PageSize     int64  `json:"PageSize"`
+	TemplateList []struct {
+		Id        string `json:"Id"`
+		Name      string `json:"Name"`
+		State     string `json:"State"`
+		Container struct {
+			Format string `json:"Format"`
+		} `json:"Container"`
+		Video struct {
+			Codec      string `json:"Codec"`
+			Profile    string `json:"Profile"`
+			Bitrate    string `json:"Bitrate"`
+			Crf        string `json:"Crf"`
+			Width      string `json:"Width"`
+			Height     string `json:"Height"`
+			Fps        string `json:"Fps"`
+			Gop        string `json:"Gop"`
+			Preset     string `json:"Preset"`
+			ScanMode   string `json:"ScanMode"`
+			Bufsize    string `json:"Bufsize"`
+			Maxrate    string `json:"Maxrate"`
+			PixFmt     string `json:"PixFmt"`
+			Degrain    string `json:"Degrain"`
+			Qscale     string `json:"Qscale"`
+			Remove     string `json:"Remove"`
+			Crop       string `json:"Crop"`
+			Pad        string `json:"Pad"`
+			MaxFps     string `json:"MaxFps"`
+			BitrateBnd struct {
+				Max string `json:"Max"`
+				Min string `json:"Min"`
+			} `json:"BitrateBnd"`
+		} `json:"Video"`
+		Audio struct {
+			Codec      string `json:"Codec"`
+			Profile    string `json:"Profile"`
+			Samplerate string `json:"Samplerate"`
+			Bitrate    string `json:"Bitrate"`
+			Channels   string `json:"Channels"`
+			Qscale     string `json:"Qscale"`
+			Remove     string `json:"Remove"`
+		} `json:"Audio"`
+		TransConfig struct {
+			TransMode               string `json:"TransMode"`
+			IsCheckReso             string `json:"IsCheckReso"`
+			IsCheckResoFail         string `json:"IsCheckResoFail"`
+			IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+			IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+			AdjDarMethod            string `json:"AdjDarMethod"`
+			IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+			IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+		} `json:"TransConfig"`
+		MuxConfig struct {
+			Segment struct {
+				Duration string `json:"Duration"`
+			} `json:"Segment"`
+			Gif struct {
+				Loop            string `json:"Loop"`
+				FinalDelay      string `json:"FinalDelay"`
+				IsCustomPalette string `json:"IsCustomPalette"`
+				DitherMode      string `json:"DitherMode"`
+			} `json:"Gif"`
+		} `json:"MuxConfig"`
+	} `json:"TemplateList"`
 }
 
 func CreateSearchTemplateRequest() (request *SearchTemplateRequest) {

+ 31 - 31
services/mts/search_water_mark_template.go

@@ -64,44 +64,44 @@ func (client *Client) SearchWaterMarkTemplateWithCallback(request *SearchWaterMa
 
 type SearchWaterMarkTemplateRequest struct {
 	*requests.RpcRequest
-	PageSize             string `position:"Query" name:"PageSize"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	PageNumber           string `position:"Query" name:"PageNumber"`
-	State                string `position:"Query" name:"State"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	PageSize             string `position:"Query" name:"PageSize"`
+	Action               string `position:"Query" name:"Action"`
+	State                string `position:"Query" name:"State"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	PageNumber           string `position:"Query" name:"PageNumber"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type SearchWaterMarkTemplateResponse struct {
 	*responses.BaseResponse
-	RequestId             string `json:"RequestId" xml:"RequestId"`
-	TotalCount            int64  `json:"TotalCount" xml:"TotalCount"`
-	PageNumber            int64  `json:"PageNumber" xml:"PageNumber"`
-	PageSize              int64  `json:"PageSize" xml:"PageSize"`
-	WaterMarkTemplateList struct {
-		WaterMarkTemplate []struct {
-			Id       string `json:"Id" xml:"Id"`
-			Name     string `json:"Name" xml:"Name"`
-			Width    string `json:"Width" xml:"Width"`
-			Height   string `json:"Height" xml:"Height"`
-			Dx       string `json:"Dx" xml:"Dx"`
-			Dy       string `json:"Dy" xml:"Dy"`
-			ReferPos string `json:"ReferPos" xml:"ReferPos"`
-			Type     string `json:"Type" xml:"Type"`
-			State    string `json:"State" xml:"State"`
-			Timeline struct {
-				Start    string `json:"Start" xml:"Start"`
-				Duration string `json:"Duration" xml:"Duration"`
-			} `json:"Timeline" xml:"Timeline"`
-			RatioRefer struct {
-				Dx     string `json:"Dx" xml:"Dx"`
-				Dy     string `json:"Dy" xml:"Dy"`
-				Width  string `json:"Width" xml:"Width"`
-				Height string `json:"Height" xml:"Height"`
-			} `json:"RatioRefer" xml:"RatioRefer"`
-		} `json:"WaterMarkTemplate" xml:"WaterMarkTemplate"`
-	} `json:"WaterMarkTemplateList" xml:"WaterMarkTemplateList"`
+	RequestId             string `json:"RequestId"`
+	TotalCount            int64  `json:"TotalCount"`
+	PageNumber            int64  `json:"PageNumber"`
+	PageSize              int64  `json:"PageSize"`
+	WaterMarkTemplateList []struct {
+		Id       string `json:"Id"`
+		Name     string `json:"Name"`
+		Width    string `json:"Width"`
+		Height   string `json:"Height"`
+		Dx       string `json:"Dx"`
+		Dy       string `json:"Dy"`
+		ReferPos string `json:"ReferPos"`
+		Type     string `json:"Type"`
+		State    string `json:"State"`
+		Timeline struct {
+			Start    string `json:"Start"`
+			Duration string `json:"Duration"`
+		} `json:"Timeline"`
+		RatioRefer struct {
+			Dx     string `json:"Dx"`
+			Dy     string `json:"Dy"`
+			Width  string `json:"Width"`
+			Height string `json:"Height"`
+		} `json:"RatioRefer"`
+	} `json:"WaterMarkTemplateList"`
 }
 
 func CreateSearchWaterMarkTemplateRequest() (request *SearchWaterMarkTemplateRequest) {

+ 7 - 5
services/mts/set_auth_config.go

@@ -64,19 +64,21 @@ func (client *Client) SetAuthConfigWithCallback(request *SetAuthConfigRequest, c
 
 type SetAuthConfigRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Key2                 string `position:"Query" name:"Key2"`
 	Key1                 string `position:"Query" name:"Key1"`
+	Key2                 string `position:"Query" name:"Key2"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
 }
 
 type SetAuthConfigResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	Key1      string `json:"Key1" xml:"Key1"`
-	Key2      string `json:"Key2" xml:"Key2"`
+	RequestId string `json:"RequestId"`
+	Key1      string `json:"Key1"`
+	Key2      string `json:"Key2"`
 }
 
 func CreateSetAuthConfigRequest() (request *SetAuthConfigRequest) {

+ 87 - 87
services/mts/submit_analysis_job.go

@@ -64,108 +64,108 @@ func (client *Client) SubmitAnalysisJobWithCallback(request *SubmitAnalysisJobRe
 
 type SubmitAnalysisJobRequest struct {
 	*requests.RpcRequest
-	UserData             string `position:"Query" name:"UserData"`
 	Input                string `position:"Query" name:"Input"`
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	Priority             string `position:"Query" name:"Priority"`
+	UserData             string `position:"Query" name:"UserData"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	AnalysisConfig       string `position:"Query" name:"AnalysisConfig"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
-	AnalysisConfig       string `position:"Query" name:"AnalysisConfig"`
+	Priority             string `position:"Query" name:"Priority"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitAnalysisJobResponse struct {
 	*responses.BaseResponse
-	RequestId   string `json:"RequestId" xml:"RequestId"`
+	RequestId   string `json:"RequestId"`
 	AnalysisJob struct {
-		Id           string `json:"Id" xml:"Id"`
-		UserData     string `json:"UserData" xml:"UserData"`
-		State        string `json:"State" xml:"State"`
-		Code         string `json:"Code" xml:"Code"`
-		Message      string `json:"Message" xml:"Message"`
-		Percent      int64  `json:"Percent" xml:"Percent"`
-		CreationTime string `json:"CreationTime" xml:"CreationTime"`
-		PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-		Priority     string `json:"Priority" xml:"Priority"`
+		Id           string `json:"Id"`
+		UserData     string `json:"UserData"`
+		State        string `json:"State"`
+		Code         string `json:"Code"`
+		Message      string `json:"Message"`
+		Percent      int64  `json:"Percent"`
+		CreationTime string `json:"CreationTime"`
+		PipelineId   string `json:"PipelineId"`
+		Priority     string `json:"Priority"`
 		InputFile    struct {
-			Bucket   string `json:"Bucket" xml:"Bucket"`
-			Location string `json:"Location" xml:"Location"`
-			Object   string `json:"Object" xml:"Object"`
-		} `json:"InputFile" xml:"InputFile"`
+			Bucket   string `json:"Bucket"`
+			Location string `json:"Location"`
+			Object   string `json:"Object"`
+		} `json:"InputFile"`
 		AnalysisConfig struct {
 			QualityControl struct {
-				RateQuality     string `json:"RateQuality" xml:"RateQuality"`
-				MethodStreaming string `json:"MethodStreaming" xml:"MethodStreaming"`
-			} `json:"QualityControl" xml:"QualityControl"`
+				RateQuality     string `json:"RateQuality"`
+				MethodStreaming string `json:"MethodStreaming"`
+			} `json:"QualityControl"`
 			PropertiesControl struct {
-				Deinterlace string `json:"Deinterlace" xml:"Deinterlace"`
+				Deinterlace string `json:"Deinterlace"`
 				Crop        struct {
-					Mode   string `json:"Mode" xml:"Mode"`
-					Width  string `json:"Width" xml:"Width"`
-					Height string `json:"Height" xml:"Height"`
-					Top    string `json:"Top" xml:"Top"`
-					Left   string `json:"Left" xml:"Left"`
-				} `json:"Crop" xml:"Crop"`
-			} `json:"PropertiesControl" xml:"PropertiesControl"`
-		} `json:"AnalysisConfig" xml:"AnalysisConfig"`
+					Mode   string `json:"Mode"`
+					Width  string `json:"Width"`
+					Height string `json:"Height"`
+					Top    string `json:"Top"`
+					Left   string `json:"Left"`
+				} `json:"Crop"`
+			} `json:"PropertiesControl"`
+		} `json:"AnalysisConfig"`
 		MNSMessageResult struct {
-			MessageId    string `json:"MessageId" xml:"MessageId"`
-			ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-			ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-		} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-		TemplateList struct {
-			Template []struct {
-				Id        string `json:"Id" xml:"Id"`
-				Name      string `json:"Name" xml:"Name"`
-				State     string `json:"State" xml:"State"`
-				Container struct {
-					Format string `json:"Format" xml:"Format"`
-				} `json:"Container" xml:"Container"`
-				Video struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Crf        string `json:"Crf" xml:"Crf"`
-					Width      string `json:"Width" xml:"Width"`
-					Height     string `json:"Height" xml:"Height"`
-					Fps        string `json:"Fps" xml:"Fps"`
-					Gop        string `json:"Gop" xml:"Gop"`
-					Preset     string `json:"Preset" xml:"Preset"`
-					ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-					Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-					Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-					PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-					Degrain    string `json:"Degrain" xml:"Degrain"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-					BitrateBnd struct {
-						Max string `json:"Max" xml:"Max"`
-						Min string `json:"Min" xml:"Min"`
-					} `json:"BitrateBnd" xml:"BitrateBnd"`
-				} `json:"Video" xml:"Video"`
-				Audio struct {
-					Codec      string `json:"Codec" xml:"Codec"`
-					Profile    string `json:"Profile" xml:"Profile"`
-					Samplerate string `json:"Samplerate" xml:"Samplerate"`
-					Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-					Channels   string `json:"Channels" xml:"Channels"`
-					Qscale     string `json:"Qscale" xml:"Qscale"`
-				} `json:"Audio" xml:"Audio"`
-				TransConfig struct {
-					TransMode string `json:"TransMode" xml:"TransMode"`
-				} `json:"TransConfig" xml:"TransConfig"`
-				MuxConfig struct {
-					Segment struct {
-						Duration string `json:"Duration" xml:"Duration"`
-					} `json:"Segment" xml:"Segment"`
-					Gif struct {
-						Loop       string `json:"Loop" xml:"Loop"`
-						FinalDelay string `json:"FinalDelay" xml:"FinalDelay"`
-					} `json:"Gif" xml:"Gif"`
-				} `json:"MuxConfig" xml:"MuxConfig"`
-			} `json:"Template" xml:"Template"`
-		} `json:"TemplateList" xml:"TemplateList"`
-	} `json:"AnalysisJob" xml:"AnalysisJob"`
+			MessageId    string `json:"MessageId"`
+			ErrorMessage string `json:"ErrorMessage"`
+			ErrorCode    string `json:"ErrorCode"`
+		} `json:"MNSMessageResult"`
+		TemplateList []struct {
+			Id        string `json:"Id"`
+			Name      string `json:"Name"`
+			State     string `json:"State"`
+			Container struct {
+				Format string `json:"Format"`
+			} `json:"Container"`
+			Video struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Bitrate    string `json:"Bitrate"`
+				Crf        string `json:"Crf"`
+				Width      string `json:"Width"`
+				Height     string `json:"Height"`
+				Fps        string `json:"Fps"`
+				Gop        string `json:"Gop"`
+				Preset     string `json:"Preset"`
+				ScanMode   string `json:"ScanMode"`
+				Bufsize    string `json:"Bufsize"`
+				Maxrate    string `json:"Maxrate"`
+				PixFmt     string `json:"PixFmt"`
+				Degrain    string `json:"Degrain"`
+				Qscale     string `json:"Qscale"`
+				BitrateBnd struct {
+					Max string `json:"Max"`
+					Min string `json:"Min"`
+				} `json:"BitrateBnd"`
+			} `json:"Video"`
+			Audio struct {
+				Codec      string `json:"Codec"`
+				Profile    string `json:"Profile"`
+				Samplerate string `json:"Samplerate"`
+				Bitrate    string `json:"Bitrate"`
+				Channels   string `json:"Channels"`
+				Qscale     string `json:"Qscale"`
+			} `json:"Audio"`
+			TransConfig struct {
+				TransMode string `json:"TransMode"`
+			} `json:"TransConfig"`
+			MuxConfig struct {
+				Segment struct {
+					Duration string `json:"Duration"`
+				} `json:"Segment"`
+				Gif struct {
+					Loop       string `json:"Loop"`
+					FinalDelay string `json:"FinalDelay"`
+				} `json:"Gif"`
+			} `json:"MuxConfig"`
+		} `json:"TemplateList"`
+	} `json:"AnalysisJob"`
 }
 
 func CreateSubmitAnalysisJobRequest() (request *SubmitAnalysisJobRequest) {

+ 8 - 6
services/mts/submit_annotation_job.go

@@ -64,20 +64,22 @@ func (client *Client) SubmitAnnotationJobWithCallback(request *SubmitAnnotationJ
 
 type SubmitAnnotationJobRequest struct {
 	*requests.RpcRequest
-	AnnotationConfig     string `position:"Query" name:"AnnotationConfig"`
-	UserData             string `position:"Query" name:"UserData"`
 	Input                string `position:"Query" name:"Input"`
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	UserData             string `position:"Query" name:"UserData"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	AnnotationConfig     string `position:"Query" name:"AnnotationConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitAnnotationJobResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateSubmitAnnotationJobRequest() (request *SubmitAnnotationJobRequest) {

+ 8 - 6
services/mts/submit_asr_job.go

@@ -64,20 +64,22 @@ func (client *Client) SubmitAsrJobWithCallback(request *SubmitAsrJobRequest, cal
 
 type SubmitAsrJobRequest struct {
 	*requests.RpcRequest
-	UserData             string `position:"Query" name:"UserData"`
 	Input                string `position:"Query" name:"Input"`
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	UserData             string `position:"Query" name:"UserData"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	OwnerId              string `position:"Query" name:"OwnerId"`
+	Action               string `position:"Query" name:"Action"`
 	AsrConfig            string `position:"Query" name:"AsrConfig"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitAsrJobResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateSubmitAsrJobRequest() (request *SubmitAsrJobRequest) {

+ 8 - 6
services/mts/submit_censor_job.go

@@ -64,20 +64,22 @@ func (client *Client) SubmitCensorJobWithCallback(request *SubmitCensorJobReques
 
 type SubmitCensorJobRequest struct {
 	*requests.RpcRequest
-	UserData             string `position:"Query" name:"UserData"`
 	Input                string `position:"Query" name:"Input"`
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	CensorConfig         string `position:"Query" name:"CensorConfig"`
+	UserData             string `position:"Query" name:"UserData"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	CensorConfig         string `position:"Query" name:"CensorConfig"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitCensorJobResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateSubmitCensorJobRequest() (request *SubmitCensorJobRequest) {

+ 8 - 6
services/mts/submit_cover_job.go

@@ -64,20 +64,22 @@ func (client *Client) SubmitCoverJobWithCallback(request *SubmitCoverJobRequest,
 
 type SubmitCoverJobRequest struct {
 	*requests.RpcRequest
-	UserData             string `position:"Query" name:"UserData"`
 	Input                string `position:"Query" name:"Input"`
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	CoverConfig          string `position:"Query" name:"CoverConfig"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	UserData             string `position:"Query" name:"UserData"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	CoverConfig          string `position:"Query" name:"CoverConfig"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitCoverJobResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateSubmitCoverJobRequest() (request *SubmitCoverJobRequest) {

+ 302 - 326
services/mts/submit_editing_jobs.go

@@ -64,340 +64,316 @@ func (client *Client) SubmitEditingJobsWithCallback(request *SubmitEditingJobsRe
 
 type SubmitEditingJobsRequest struct {
 	*requests.RpcRequest
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	EditingInputs        string `position:"Query" name:"EditingInputs"`
 	OutputBucket         string `position:"Query" name:"OutputBucket"`
-	OutputLocation       string `position:"Query" name:"OutputLocation"`
-	EditingJobOutputs    string `position:"Query" name:"EditingJobOutputs"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	EditingJobOutputs    string `position:"Query" name:"EditingJobOutputs"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	OutputLocation       string `position:"Query" name:"OutputLocation"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	EditingInputs        string `position:"Query" name:"EditingInputs"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitEditingJobsResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
-	JobResultList struct {
-		JobResult []struct {
-			Success bool   `json:"Success" xml:"Success"`
-			Code    string `json:"Code" xml:"Code"`
-			Message string `json:"Message" xml:"Message"`
-			Job     struct {
-				JobId         string `json:"JobId" xml:"JobId"`
-				State         string `json:"State" xml:"State"`
-				Code          string `json:"Code" xml:"Code"`
-				Message       string `json:"Message" xml:"Message"`
-				Percent       int64  `json:"Percent" xml:"Percent"`
-				PipelineId    string `json:"PipelineId" xml:"PipelineId"`
-				CreationTime  string `json:"CreationTime" xml:"CreationTime"`
-				FinishTime    string `json:"FinishTime" xml:"FinishTime"`
-				EditingConfig struct {
-					TemplateId         string `json:"TemplateId" xml:"TemplateId"`
-					UserData           string `json:"UserData" xml:"UserData"`
-					Rotate             string `json:"Rotate" xml:"Rotate"`
-					VideoStreamMap     string `json:"VideoStreamMap" xml:"VideoStreamMap"`
-					AudioStreamMap     string `json:"AudioStreamMap" xml:"AudioStreamMap"`
-					DeWatermark        string `json:"DeWatermark" xml:"DeWatermark"`
-					Priority           string `json:"Priority" xml:"Priority"`
-					WaterMarkConfigUrl string `json:"WaterMarkConfigUrl" xml:"WaterMarkConfigUrl"`
-					MergeConfigUrl     string `json:"MergeConfigUrl" xml:"MergeConfigUrl"`
-					DigiWaterMark      struct {
-						Type       string `json:"Type" xml:"Type"`
-						Alpha      string `json:"Alpha" xml:"Alpha"`
-						InputFile2 struct {
-							Bucket   string `json:"Bucket" xml:"Bucket"`
-							Location string `json:"Location" xml:"Location"`
-							Object   string `json:"Object" xml:"Object"`
-						} `json:"InputFile" xml:"InputFile"`
-					} `json:"DigiWaterMark" xml:"DigiWaterMark"`
-					OutputFile struct {
-						Bucket   string `json:"Bucket" xml:"Bucket"`
-						Location string `json:"Location" xml:"Location"`
-						Object   string `json:"Object" xml:"Object"`
-						RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-					} `json:"OutputFile" xml:"OutputFile"`
-					M3U8NonStandardSupport struct {
-						TS struct {
-							Md5Support  bool `json:"Md5Support" xml:"Md5Support"`
-							SizeSupport bool `json:"SizeSupport" xml:"SizeSupport"`
-						} `json:"TS" xml:"TS"`
-					} `json:"M3U8NonStandardSupport" xml:"M3U8NonStandardSupport"`
-					Properties struct {
-						Width      string `json:"Width" xml:"Width"`
-						Height     string `json:"Height" xml:"Height"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Duration   string `json:"Duration" xml:"Duration"`
-						Fps        string `json:"Fps" xml:"Fps"`
-						FileSize   string `json:"FileSize" xml:"FileSize"`
-						FileFormat string `json:"FileFormat" xml:"FileFormat"`
-						Streams    struct {
-							VideoStreamList struct {
-								VideoStream []struct {
-									Index          string `json:"Index" xml:"Index"`
-									CodecName      string `json:"CodecName" xml:"CodecName"`
-									CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-									Profile        string `json:"Profile" xml:"Profile"`
-									CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-									CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-									CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-									Width          string `json:"Width" xml:"Width"`
-									Height         string `json:"Height" xml:"Height"`
-									HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-									Sar            string `json:"Sar" xml:"Sar"`
-									Dar            string `json:"Dar" xml:"Dar"`
-									PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-									Level          string `json:"Level" xml:"Level"`
-									Fps            string `json:"Fps" xml:"Fps"`
-									AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-									Timebase       string `json:"Timebase" xml:"Timebase"`
-									StartTime      string `json:"StartTime" xml:"StartTime"`
-									Duration       string `json:"Duration" xml:"Duration"`
-									Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-									NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-									Lang           string `json:"Lang" xml:"Lang"`
-									NetworkCost    struct {
-										PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-										CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-										AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-									} `json:"NetworkCost" xml:"NetworkCost"`
-								} `json:"VideoStream" xml:"VideoStream"`
-							} `json:"VideoStreamList" xml:"VideoStreamList"`
-							AudioStreamList struct {
-								AudioStream []struct {
-									Index          string `json:"Index" xml:"Index"`
-									CodecName      string `json:"CodecName" xml:"CodecName"`
-									CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-									CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-									CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-									CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-									SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-									Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-									Channels       string `json:"Channels" xml:"Channels"`
-									ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-									Timebase       string `json:"Timebase" xml:"Timebase"`
-									StartTime      string `json:"StartTime" xml:"StartTime"`
-									Duration       string `json:"Duration" xml:"Duration"`
-									Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-									NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-									Lang           string `json:"Lang" xml:"Lang"`
-								} `json:"AudioStream" xml:"AudioStream"`
-							} `json:"AudioStreamList" xml:"AudioStreamList"`
-							SubtitleStreamList struct {
-								SubtitleStream []struct {
-									Index string `json:"Index" xml:"Index"`
-									Lang  string `json:"Lang" xml:"Lang"`
-								} `json:"SubtitleStream" xml:"SubtitleStream"`
-							} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-						} `json:"Streams" xml:"Streams"`
-						Format struct {
-							NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-							NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-							FormatName     string `json:"FormatName" xml:"FormatName"`
-							FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Size           string `json:"Size" xml:"Size"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-						} `json:"Format" xml:"Format"`
-					} `json:"Properties" xml:"Properties"`
-					Clip struct {
-						TimeSpan struct {
-							Seek     string `json:"Seek" xml:"Seek"`
-							Duration string `json:"Duration" xml:"Duration"`
-						} `json:"TimeSpan" xml:"TimeSpan"`
-					} `json:"Clip" xml:"Clip"`
-					SuperReso struct {
-						IsHalfSample string `json:"IsHalfSample" xml:"IsHalfSample"`
-					} `json:"SuperReso" xml:"SuperReso"`
-					SubtitleConfig struct {
-						SubtitleList struct {
-							Subtitle []struct {
-								Map string `json:"Map" xml:"Map"`
-							} `json:"Subtitle" xml:"Subtitle"`
-						} `json:"SubtitleList" xml:"SubtitleList"`
-						ExtSubtitleList struct {
-							ExtSubtitle []struct {
-								FontName string `json:"FontName" xml:"FontName"`
-								CharEnc  string `json:"CharEnc" xml:"CharEnc"`
-								Input    struct {
-									Bucket   string `json:"Bucket" xml:"Bucket"`
-									Location string `json:"Location" xml:"Location"`
-									Object   string `json:"Object" xml:"Object"`
-								} `json:"Input" xml:"Input"`
-							} `json:"ExtSubtitle" xml:"ExtSubtitle"`
-						} `json:"ExtSubtitleList" xml:"ExtSubtitleList"`
-					} `json:"SubtitleConfig" xml:"SubtitleConfig"`
-					TransConfig struct {
-						TransMode               string `json:"TransMode" xml:"TransMode"`
-						IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-						IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-						IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-						IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-						AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-						IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-						IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-						Duration                string `json:"Duration" xml:"Duration"`
-					} `json:"TransConfig" xml:"TransConfig"`
-					MuxConfig struct {
-						Segment struct {
-							Duration string `json:"Duration" xml:"Duration"`
-						} `json:"Segment" xml:"Segment"`
-						Gif struct {
-							Loop            string `json:"Loop" xml:"Loop"`
-							FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-							IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-							DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-						} `json:"Gif" xml:"Gif"`
-					} `json:"MuxConfig" xml:"MuxConfig"`
-					Audio struct {
-						Codec      string `json:"Codec" xml:"Codec"`
-						Profile    string `json:"Profile" xml:"Profile"`
-						Samplerate string `json:"Samplerate" xml:"Samplerate"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Channels   string `json:"Channels" xml:"Channels"`
-						Qscale     string `json:"Qscale" xml:"Qscale"`
-						Volume     struct {
-							Level  string `json:"Level" xml:"Level"`
-							Method string `json:"Method" xml:"Method"`
-						} `json:"Volume" xml:"Volume"`
-					} `json:"Audio" xml:"Audio"`
-					Video struct {
-						Codec      string `json:"Codec" xml:"Codec"`
-						Profile    string `json:"Profile" xml:"Profile"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Crf        string `json:"Crf" xml:"Crf"`
-						Width      string `json:"Width" xml:"Width"`
-						Height     string `json:"Height" xml:"Height"`
-						Fps        string `json:"Fps" xml:"Fps"`
-						Gop        string `json:"Gop" xml:"Gop"`
-						Preset     string `json:"Preset" xml:"Preset"`
-						ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-						Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-						Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-						PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-						Degrain    string `json:"Degrain" xml:"Degrain"`
-						Qscale     string `json:"Qscale" xml:"Qscale"`
-						Crop       string `json:"Crop" xml:"Crop"`
-						Pad        string `json:"Pad" xml:"Pad"`
-						MaxFps     string `json:"MaxFps" xml:"MaxFps"`
-						BitrateBnd struct {
-							Max string `json:"Max" xml:"Max"`
-							Min string `json:"Min" xml:"Min"`
-						} `json:"BitrateBnd" xml:"BitrateBnd"`
-					} `json:"Video" xml:"Video"`
-					Container struct {
-						Format string `json:"Format" xml:"Format"`
-					} `json:"Container" xml:"Container"`
-					Encryption struct {
-						Type    string `json:"Type" xml:"Type"`
-						Id      string `json:"Id" xml:"Id"`
-						Key     string `json:"Key" xml:"Key"`
-						KeyUri  string `json:"KeyUri" xml:"KeyUri"`
-						KeyType string `json:"KeyType" xml:"KeyType"`
-						SkipCnt string `json:"SkipCnt" xml:"SkipCnt"`
-					} `json:"Encryption" xml:"Encryption"`
-					Editing struct {
-						Timeline struct {
-							TimelineConfig struct {
-								TimelineConfigVideo struct {
-									Width   string `json:"Width" xml:"Width"`
-									Height  string `json:"Height" xml:"Height"`
-									BgColor string `json:"BgColor" xml:"BgColor"`
-									Fps     string `json:"Fps" xml:"Fps"`
-								} `json:"TimelineConfigVideo" xml:"TimelineConfigVideo"`
-								TimelineConfigAudio struct {
-									Samplerate    string `json:"Samplerate" xml:"Samplerate"`
-									ChannelLayout string `json:"ChannelLayout" xml:"ChannelLayout"`
-									Channels      string `json:"Channels" xml:"Channels"`
-								} `json:"TimelineConfigAudio" xml:"TimelineConfigAudio"`
-							} `json:"TimelineConfig" xml:"TimelineConfig"`
-							TrackList struct {
-								Track []struct {
-									Id    string `json:"Id" xml:"Id"`
-									Type  string `json:"Type" xml:"Type"`
-									Order string `json:"Order" xml:"Order"`
-									Clips struct {
-										Clip []struct {
-											ClipID      string `json:"clipID" xml:"clipID"`
-											In          string `json:"In" xml:"In"`
-											Out         string `json:"Out" xml:"Out"`
-											ClipsConfig struct {
-												ClipsConfigVideo struct {
-													L string `json:"L" xml:"L"`
-													T string `json:"T" xml:"T"`
-												} `json:"ClipsConfigVideo" xml:"ClipsConfigVideo"`
-											} `json:"ClipsConfig" xml:"ClipsConfig"`
-										} `json:"Clip" xml:"Clip"`
-									} `json:"Clips" xml:"Clips"`
-								} `json:"Track" xml:"Track"`
-							} `json:"TrackList" xml:"TrackList"`
-						} `json:"Timeline" xml:"Timeline"`
-						ClipList struct {
-							Clip []struct {
-								Id            string `json:"Id" xml:"Id"`
-								Type          string `json:"Type" xml:"Type"`
-								SourceType    string `json:"SourceType" xml:"SourceType"`
-								SourceID      string `json:"SourceID" xml:"SourceID"`
-								SourceStrmMap string `json:"SourceStrmMap" xml:"SourceStrmMap"`
-								In            string `json:"In" xml:"In"`
-								Out           string `json:"Out" xml:"Out"`
-								Effects       struct {
-									Effect []struct {
-										Effect       string `json:"Effect" xml:"Effect"`
-										EffectConfig string `json:"EffectConfig" xml:"EffectConfig"`
-									} `json:"Effect" xml:"Effect"`
-								} `json:"Effects" xml:"Effects"`
-							} `json:"Clip" xml:"Clip"`
-						} `json:"ClipList" xml:"ClipList"`
-					} `json:"Editing" xml:"Editing"`
-					WaterMarkList struct {
-						WaterMark []struct {
-							WaterMarkTemplateId string `json:"WaterMarkTemplateId" xml:"WaterMarkTemplateId"`
-							Width               string `json:"Width" xml:"Width"`
-							Height              string `json:"Height" xml:"Height"`
-							Dx                  string `json:"Dx" xml:"Dx"`
-							Dy                  string `json:"Dy" xml:"Dy"`
-							ReferPos            string `json:"ReferPos" xml:"ReferPos"`
-							Type                string `json:"Type" xml:"Type"`
-							InputFile1          struct {
-								Bucket   string `json:"Bucket" xml:"Bucket"`
-								Location string `json:"Location" xml:"Location"`
-								Object   string `json:"Object" xml:"Object"`
-							} `json:"InputFile" xml:"InputFile"`
-						} `json:"WaterMark" xml:"WaterMark"`
-					} `json:"WaterMarkList" xml:"WaterMarkList"`
-					MergeList struct {
-						Merge []struct {
-							MergeURL string `json:"MergeURL" xml:"MergeURL"`
-							Start    string `json:"Start" xml:"Start"`
-							Duration string `json:"Duration" xml:"Duration"`
-							RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-						} `json:"Merge" xml:"Merge"`
-					} `json:"MergeList" xml:"MergeList"`
-				} `json:"EditingConfig" xml:"EditingConfig"`
-				MNSMessageResult struct {
-					MessageId    string `json:"MessageId" xml:"MessageId"`
-					ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-					ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-				} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-				EditingInputs struct {
-					EditingInput []struct {
-						Id        string `json:"Id" xml:"Id"`
-						InputFile struct {
-							Bucket   string `json:"Bucket" xml:"Bucket"`
-							Location string `json:"Location" xml:"Location"`
-							Object   string `json:"Object" xml:"Object"`
-						} `json:"InputFile" xml:"InputFile"`
-						InputConfig struct {
-							DeinterlaceMethod string `json:"DeinterlaceMethod" xml:"DeinterlaceMethod"`
-							IsNormalSar       string `json:"IsNormalSar" xml:"IsNormalSar"`
-						} `json:"InputConfig" xml:"InputConfig"`
-					} `json:"EditingInput" xml:"EditingInput"`
-				} `json:"EditingInputs" xml:"EditingInputs"`
-			} `json:"Job" xml:"Job"`
-		} `json:"JobResult" xml:"JobResult"`
-	} `json:"JobResultList" xml:"JobResultList"`
+	RequestId     string `json:"RequestId"`
+	JobResultList []struct {
+		Success bool   `json:"Success"`
+		Code    string `json:"Code"`
+		Message string `json:"Message"`
+		Job     struct {
+			JobId         string `json:"JobId"`
+			State         string `json:"State"`
+			Code          string `json:"Code"`
+			Message       string `json:"Message"`
+			Percent       int64  `json:"Percent"`
+			PipelineId    string `json:"PipelineId"`
+			CreationTime  string `json:"CreationTime"`
+			FinishTime    string `json:"FinishTime"`
+			EditingConfig struct {
+				TemplateId         string `json:"TemplateId"`
+				UserData           string `json:"UserData"`
+				Rotate             string `json:"Rotate"`
+				VideoStreamMap     string `json:"VideoStreamMap"`
+				AudioStreamMap     string `json:"AudioStreamMap"`
+				DeWatermark        string `json:"DeWatermark"`
+				Priority           string `json:"Priority"`
+				WaterMarkConfigUrl string `json:"WaterMarkConfigUrl"`
+				MergeConfigUrl     string `json:"MergeConfigUrl"`
+				DigiWaterMark      struct {
+					Type       string `json:"Type"`
+					Alpha      string `json:"Alpha"`
+					InputFile2 struct {
+						Bucket   string `json:"Bucket"`
+						Location string `json:"Location"`
+						Object   string `json:"Object"`
+					} `json:"InputFile"`
+				} `json:"DigiWaterMark"`
+				OutputFile struct {
+					Bucket   string `json:"Bucket"`
+					Location string `json:"Location"`
+					Object   string `json:"Object"`
+					RoleArn  string `json:"RoleArn"`
+				} `json:"OutputFile"`
+				M3U8NonStandardSupport struct {
+					TS struct {
+						Md5Support  bool `json:"Md5Support"`
+						SizeSupport bool `json:"SizeSupport"`
+					} `json:"TS"`
+				} `json:"M3U8NonStandardSupport"`
+				Properties struct {
+					Width      string `json:"Width"`
+					Height     string `json:"Height"`
+					Bitrate    string `json:"Bitrate"`
+					Duration   string `json:"Duration"`
+					Fps        string `json:"Fps"`
+					FileSize   string `json:"FileSize"`
+					FileFormat string `json:"FileFormat"`
+					Streams    struct {
+						VideoStreamList []struct {
+							Index          string `json:"Index"`
+							CodecName      string `json:"CodecName"`
+							CodecLongName  string `json:"CodecLongName"`
+							Profile        string `json:"Profile"`
+							CodecTimeBase  string `json:"CodecTimeBase"`
+							CodecTagString string `json:"CodecTagString"`
+							CodecTag       string `json:"CodecTag"`
+							Width          string `json:"Width"`
+							Height         string `json:"Height"`
+							HasBFrames     string `json:"HasBFrames"`
+							Sar            string `json:"Sar"`
+							Dar            string `json:"Dar"`
+							PixFmt         string `json:"PixFmt"`
+							Level          string `json:"Level"`
+							Fps            string `json:"Fps"`
+							AvgFPS         string `json:"AvgFPS"`
+							Timebase       string `json:"Timebase"`
+							StartTime      string `json:"StartTime"`
+							Duration       string `json:"Duration"`
+							Bitrate        string `json:"Bitrate"`
+							NumFrames      string `json:"NumFrames"`
+							Lang           string `json:"Lang"`
+							NetworkCost    struct {
+								PreloadTime   string `json:"PreloadTime"`
+								CostBandwidth string `json:"CostBandwidth"`
+								AvgBitrate    string `json:"AvgBitrate"`
+							} `json:"NetworkCost"`
+						} `json:"VideoStreamList"`
+						AudioStreamList []struct {
+							Index          string `json:"Index"`
+							CodecName      string `json:"CodecName"`
+							CodecTimeBase  string `json:"CodecTimeBase"`
+							CodecLongName  string `json:"CodecLongName"`
+							CodecTagString string `json:"CodecTagString"`
+							CodecTag       string `json:"CodecTag"`
+							SampleFmt      string `json:"SampleFmt"`
+							Samplerate     string `json:"Samplerate"`
+							Channels       string `json:"Channels"`
+							ChannelLayout  string `json:"ChannelLayout"`
+							Timebase       string `json:"Timebase"`
+							StartTime      string `json:"StartTime"`
+							Duration       string `json:"Duration"`
+							Bitrate        string `json:"Bitrate"`
+							NumFrames      string `json:"NumFrames"`
+							Lang           string `json:"Lang"`
+						} `json:"AudioStreamList"`
+						SubtitleStreamList []struct {
+							Index string `json:"Index"`
+							Lang  string `json:"Lang"`
+						} `json:"SubtitleStreamList"`
+					} `json:"Streams"`
+					Format struct {
+						NumStreams     string `json:"NumStreams"`
+						NumPrograms    string `json:"NumPrograms"`
+						FormatName     string `json:"FormatName"`
+						FormatLongName string `json:"FormatLongName"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Size           string `json:"Size"`
+						Bitrate        string `json:"Bitrate"`
+					} `json:"Format"`
+				} `json:"Properties"`
+				Clip struct {
+					TimeSpan struct {
+						Seek     string `json:"Seek"`
+						Duration string `json:"Duration"`
+					} `json:"TimeSpan"`
+				} `json:"Clip"`
+				SuperReso struct {
+					IsHalfSample string `json:"IsHalfSample"`
+				} `json:"SuperReso"`
+				SubtitleConfig struct {
+					SubtitleList []struct {
+						Map string `json:"Map"`
+					} `json:"SubtitleList"`
+					ExtSubtitleList []struct {
+						FontName string `json:"FontName"`
+						CharEnc  string `json:"CharEnc"`
+						Input    struct {
+							Bucket   string `json:"Bucket"`
+							Location string `json:"Location"`
+							Object   string `json:"Object"`
+						} `json:"Input"`
+					} `json:"ExtSubtitleList"`
+				} `json:"SubtitleConfig"`
+				TransConfig struct {
+					TransMode               string `json:"TransMode"`
+					IsCheckReso             string `json:"IsCheckReso"`
+					IsCheckResoFail         string `json:"IsCheckResoFail"`
+					IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+					IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+					AdjDarMethod            string `json:"AdjDarMethod"`
+					IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+					IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+					Duration                string `json:"Duration"`
+				} `json:"TransConfig"`
+				MuxConfig struct {
+					Segment struct {
+						Duration string `json:"Duration"`
+					} `json:"Segment"`
+					Gif struct {
+						Loop            string `json:"Loop"`
+						FinalDelay      string `json:"FinalDelay"`
+						IsCustomPalette string `json:"IsCustomPalette"`
+						DitherMode      string `json:"DitherMode"`
+					} `json:"Gif"`
+				} `json:"MuxConfig"`
+				Audio struct {
+					Codec      string `json:"Codec"`
+					Profile    string `json:"Profile"`
+					Samplerate string `json:"Samplerate"`
+					Bitrate    string `json:"Bitrate"`
+					Channels   string `json:"Channels"`
+					Qscale     string `json:"Qscale"`
+					Volume     struct {
+						Level  string `json:"Level"`
+						Method string `json:"Method"`
+					} `json:"Volume"`
+				} `json:"Audio"`
+				Video struct {
+					Codec      string `json:"Codec"`
+					Profile    string `json:"Profile"`
+					Bitrate    string `json:"Bitrate"`
+					Crf        string `json:"Crf"`
+					Width      string `json:"Width"`
+					Height     string `json:"Height"`
+					Fps        string `json:"Fps"`
+					Gop        string `json:"Gop"`
+					Preset     string `json:"Preset"`
+					ScanMode   string `json:"ScanMode"`
+					Bufsize    string `json:"Bufsize"`
+					Maxrate    string `json:"Maxrate"`
+					PixFmt     string `json:"PixFmt"`
+					Degrain    string `json:"Degrain"`
+					Qscale     string `json:"Qscale"`
+					Crop       string `json:"Crop"`
+					Pad        string `json:"Pad"`
+					MaxFps     string `json:"MaxFps"`
+					BitrateBnd struct {
+						Max string `json:"Max"`
+						Min string `json:"Min"`
+					} `json:"BitrateBnd"`
+				} `json:"Video"`
+				Container struct {
+					Format string `json:"Format"`
+				} `json:"Container"`
+				Encryption struct {
+					Type    string `json:"Type"`
+					Id      string `json:"Id"`
+					Key     string `json:"Key"`
+					KeyUri  string `json:"KeyUri"`
+					KeyType string `json:"KeyType"`
+					SkipCnt string `json:"SkipCnt"`
+				} `json:"Encryption"`
+				Editing struct {
+					Timeline struct {
+						TimelineConfig struct {
+							TimelineConfigVideo struct {
+								Width   string `json:"Width"`
+								Height  string `json:"Height"`
+								BgColor string `json:"BgColor"`
+								Fps     string `json:"Fps"`
+							} `json:"TimelineConfigVideo"`
+							TimelineConfigAudio struct {
+								Samplerate    string `json:"Samplerate"`
+								ChannelLayout string `json:"ChannelLayout"`
+								Channels      string `json:"Channels"`
+							} `json:"TimelineConfigAudio"`
+						} `json:"TimelineConfig"`
+						TrackList []struct {
+							Id    string `json:"Id"`
+							Type  string `json:"Type"`
+							Order string `json:"Order"`
+							Clips []struct {
+								ClipID      string `json:"clipID"`
+								In          string `json:"In"`
+								Out         string `json:"Out"`
+								ClipsConfig struct {
+									ClipsConfigVideo struct {
+										L string `json:"L"`
+										T string `json:"T"`
+									} `json:"ClipsConfigVideo"`
+								} `json:"ClipsConfig"`
+							} `json:"Clips"`
+						} `json:"TrackList"`
+					} `json:"Timeline"`
+					ClipList []struct {
+						Id            string `json:"Id"`
+						Type          string `json:"Type"`
+						SourceType    string `json:"SourceType"`
+						SourceID      string `json:"SourceID"`
+						SourceStrmMap string `json:"SourceStrmMap"`
+						In            string `json:"In"`
+						Out           string `json:"Out"`
+						Effects       []struct {
+							Effect       string `json:"Effect"`
+							EffectConfig string `json:"EffectConfig"`
+						} `json:"Effects"`
+					} `json:"ClipList"`
+				} `json:"Editing"`
+				WaterMarkList []struct {
+					WaterMarkTemplateId string `json:"WaterMarkTemplateId"`
+					Width               string `json:"Width"`
+					Height              string `json:"Height"`
+					Dx                  string `json:"Dx"`
+					Dy                  string `json:"Dy"`
+					ReferPos            string `json:"ReferPos"`
+					Type                string `json:"Type"`
+					InputFile1          struct {
+						Bucket   string `json:"Bucket"`
+						Location string `json:"Location"`
+						Object   string `json:"Object"`
+					} `json:"InputFile"`
+				} `json:"WaterMarkList"`
+				MergeList []struct {
+					MergeURL string `json:"MergeURL"`
+					Start    string `json:"Start"`
+					Duration string `json:"Duration"`
+					RoleArn  string `json:"RoleArn"`
+				} `json:"MergeList"`
+			} `json:"EditingConfig"`
+			MNSMessageResult struct {
+				MessageId    string `json:"MessageId"`
+				ErrorMessage string `json:"ErrorMessage"`
+				ErrorCode    string `json:"ErrorCode"`
+			} `json:"MNSMessageResult"`
+			EditingInputs []struct {
+				Id        string `json:"Id"`
+				InputFile struct {
+					Bucket   string `json:"Bucket"`
+					Location string `json:"Location"`
+					Object   string `json:"Object"`
+				} `json:"InputFile"`
+				InputConfig struct {
+					DeinterlaceMethod string `json:"DeinterlaceMethod"`
+					IsNormalSar       string `json:"IsNormalSar"`
+				} `json:"InputConfig"`
+			} `json:"EditingInputs"`
+		} `json:"Job"`
+	} `json:"JobResultList"`
 }
 
 func CreateSubmitEditingJobsRequest() (request *SubmitEditingJobsRequest) {

+ 8 - 6
services/mts/submit_facerecog_job.go

@@ -64,20 +64,22 @@ func (client *Client) SubmitFacerecogJobWithCallback(request *SubmitFacerecogJob
 
 type SubmitFacerecogJobRequest struct {
 	*requests.RpcRequest
-	UserData             string `position:"Query" name:"UserData"`
 	Input                string `position:"Query" name:"Input"`
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
-	FacerecogConfig      string `position:"Query" name:"FacerecogConfig"`
+	UserData             string `position:"Query" name:"UserData"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	FacerecogConfig      string `position:"Query" name:"FacerecogConfig"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitFacerecogJobResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	JobId     string `json:"JobId" xml:"JobId"`
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
 }
 
 func CreateSubmitFacerecogJobRequest() (request *SubmitFacerecogJobRequest) {

+ 98 - 0
services/mts/submit_fp_shot_job.go

@@ -0,0 +1,98 @@
+package mts
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+func (client *Client) SubmitFpShotJob(request *SubmitFpShotJobRequest) (response *SubmitFpShotJobResponse, err error) {
+	response = CreateSubmitFpShotJobResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+func (client *Client) SubmitFpShotJobWithChan(request *SubmitFpShotJobRequest) (<-chan *SubmitFpShotJobResponse, <-chan error) {
+	responseChan := make(chan *SubmitFpShotJobResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SubmitFpShotJob(request)
+		responseChan <- response
+		errChan <- err
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+func (client *Client) SubmitFpShotJobWithCallback(request *SubmitFpShotJobRequest, callback func(response *SubmitFpShotJobResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SubmitFpShotJobResponse
+		var err error
+		defer close(result)
+		response, err = client.SubmitFpShotJob(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+type SubmitFpShotJobRequest struct {
+	*requests.RpcRequest
+	Input                string `position:"Query" name:"Input"`
+	UserData             string `position:"Query" name:"UserData"`
+	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	FpShotConfig         string `position:"Query" name:"FpShotConfig"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
+	Action               string `position:"Query" name:"Action"`
+	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
+}
+
+type SubmitFpShotJobResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId"`
+	JobId     string `json:"JobId"`
+}
+
+func CreateSubmitFpShotJobRequest() (request *SubmitFpShotJobRequest) {
+	request = &SubmitFpShotJobRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Mts", "2014-06-18", "SubmitFpShotJob", "", "")
+	return
+}
+
+func CreateSubmitFpShotJobResponse() (response *SubmitFpShotJobResponse) {
+	response = &SubmitFpShotJobResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 262 - 280
services/mts/submit_jobs.go

@@ -64,295 +64,277 @@ func (client *Client) SubmitJobsWithCallback(request *SubmitJobsRequest, callbac
 
 type SubmitJobsRequest struct {
 	*requests.RpcRequest
+	Outputs              string `position:"Query" name:"Outputs"`
 	Input                string `position:"Query" name:"Input"`
-	PipelineId           string `position:"Query" name:"PipelineId"`
-	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OutputBucket         string `position:"Query" name:"OutputBucket"`
-	OutputLocation       string `position:"Query" name:"OutputLocation"`
 	ResourceOwnerId      string `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string `position:"Query" name:"OwnerAccount"`
-	Outputs              string `position:"Query" name:"Outputs"`
+	Action               string `position:"Query" name:"Action"`
+	OutputLocation       string `position:"Query" name:"OutputLocation"`
 	OwnerId              string `position:"Query" name:"OwnerId"`
+	AccessKeyId          string `position:"Query" name:"AccessKeyId"`
+	PipelineId           string `position:"Query" name:"PipelineId"`
 }
 
 type SubmitJobsResponse struct {
 	*responses.BaseResponse
-	RequestId     string `json:"RequestId" xml:"RequestId"`
-	JobResultList struct {
-		JobResult []struct {
-			Success bool   `json:"Success" xml:"Success"`
-			Code    string `json:"Code" xml:"Code"`
-			Message string `json:"Message" xml:"Message"`
-			Job     struct {
-				JobId        string `json:"JobId" xml:"JobId"`
-				State        string `json:"State" xml:"State"`
-				Code         string `json:"Code" xml:"Code"`
-				Message      string `json:"Message" xml:"Message"`
-				Percent      int64  `json:"Percent" xml:"Percent"`
-				PipelineId   string `json:"PipelineId" xml:"PipelineId"`
-				CreationTime string `json:"CreationTime" xml:"CreationTime"`
-				FinishTime   string `json:"FinishTime" xml:"FinishTime"`
-				Input        struct {
-					Bucket   string `json:"Bucket" xml:"Bucket"`
-					Location string `json:"Location" xml:"Location"`
-					Object   string `json:"Object" xml:"Object"`
-				} `json:"Input" xml:"Input"`
-				Output struct {
-					TemplateId         string `json:"TemplateId" xml:"TemplateId"`
-					UserData           string `json:"UserData" xml:"UserData"`
-					Rotate             string `json:"Rotate" xml:"Rotate"`
-					VideoStreamMap     string `json:"VideoStreamMap" xml:"VideoStreamMap"`
-					AudioStreamMap     string `json:"AudioStreamMap" xml:"AudioStreamMap"`
-					DeWatermark        string `json:"DeWatermark" xml:"DeWatermark"`
-					Priority           string `json:"Priority" xml:"Priority"`
-					WaterMarkConfigUrl string `json:"WaterMarkConfigUrl" xml:"WaterMarkConfigUrl"`
-					MergeConfigUrl     string `json:"MergeConfigUrl" xml:"MergeConfigUrl"`
-					DigiWaterMark      struct {
-						Type       string `json:"Type" xml:"Type"`
-						Alpha      string `json:"Alpha" xml:"Alpha"`
-						InputFile1 struct {
-							Bucket   string `json:"Bucket" xml:"Bucket"`
-							Location string `json:"Location" xml:"Location"`
-							Object   string `json:"Object" xml:"Object"`
-						} `json:"InputFile" xml:"InputFile"`
-					} `json:"DigiWaterMark" xml:"DigiWaterMark"`
-					OutputFile struct {
-						Bucket   string `json:"Bucket" xml:"Bucket"`
-						Location string `json:"Location" xml:"Location"`
-						Object   string `json:"Object" xml:"Object"`
-						RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-					} `json:"OutputFile" xml:"OutputFile"`
-					M3U8NonStandardSupport struct {
-						TS struct {
-							Md5Support  bool `json:"Md5Support" xml:"Md5Support"`
-							SizeSupport bool `json:"SizeSupport" xml:"SizeSupport"`
-						} `json:"TS" xml:"TS"`
-					} `json:"M3U8NonStandardSupport" xml:"M3U8NonStandardSupport"`
-					Properties struct {
-						Width      string `json:"Width" xml:"Width"`
-						Height     string `json:"Height" xml:"Height"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Duration   string `json:"Duration" xml:"Duration"`
-						Fps        string `json:"Fps" xml:"Fps"`
-						FileSize   string `json:"FileSize" xml:"FileSize"`
-						FileFormat string `json:"FileFormat" xml:"FileFormat"`
-						Streams    struct {
-							VideoStreamList struct {
-								VideoStream []struct {
-									Index          string `json:"Index" xml:"Index"`
-									CodecName      string `json:"CodecName" xml:"CodecName"`
-									CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-									Profile        string `json:"Profile" xml:"Profile"`
-									CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-									CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-									CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-									Width          string `json:"Width" xml:"Width"`
-									Height         string `json:"Height" xml:"Height"`
-									HasBFrames     string `json:"HasBFrames" xml:"HasBFrames"`
-									Sar            string `json:"Sar" xml:"Sar"`
-									Dar            string `json:"Dar" xml:"Dar"`
-									PixFmt         string `json:"PixFmt" xml:"PixFmt"`
-									Level          string `json:"Level" xml:"Level"`
-									Fps            string `json:"Fps" xml:"Fps"`
-									AvgFPS         string `json:"AvgFPS" xml:"AvgFPS"`
-									Timebase       string `json:"Timebase" xml:"Timebase"`
-									StartTime      string `json:"StartTime" xml:"StartTime"`
-									Duration       string `json:"Duration" xml:"Duration"`
-									Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-									NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-									Lang           string `json:"Lang" xml:"Lang"`
-									NetworkCost    struct {
-										PreloadTime   string `json:"PreloadTime" xml:"PreloadTime"`
-										CostBandwidth string `json:"CostBandwidth" xml:"CostBandwidth"`
-										AvgBitrate    string `json:"AvgBitrate" xml:"AvgBitrate"`
-									} `json:"NetworkCost" xml:"NetworkCost"`
-								} `json:"VideoStream" xml:"VideoStream"`
-							} `json:"VideoStreamList" xml:"VideoStreamList"`
-							AudioStreamList struct {
-								AudioStream []struct {
-									Index          string `json:"Index" xml:"Index"`
-									CodecName      string `json:"CodecName" xml:"CodecName"`
-									CodecTimeBase  string `json:"CodecTimeBase" xml:"CodecTimeBase"`
-									CodecLongName  string `json:"CodecLongName" xml:"CodecLongName"`
-									CodecTagString string `json:"CodecTagString" xml:"CodecTagString"`
-									CodecTag       string `json:"CodecTag" xml:"CodecTag"`
-									SampleFmt      string `json:"SampleFmt" xml:"SampleFmt"`
-									Samplerate     string `json:"Samplerate" xml:"Samplerate"`
-									Channels       string `json:"Channels" xml:"Channels"`
-									ChannelLayout  string `json:"ChannelLayout" xml:"ChannelLayout"`
-									Timebase       string `json:"Timebase" xml:"Timebase"`
-									StartTime      string `json:"StartTime" xml:"StartTime"`
-									Duration       string `json:"Duration" xml:"Duration"`
-									Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-									NumFrames      string `json:"NumFrames" xml:"NumFrames"`
-									Lang           string `json:"Lang" xml:"Lang"`
-								} `json:"AudioStream" xml:"AudioStream"`
-							} `json:"AudioStreamList" xml:"AudioStreamList"`
-							SubtitleStreamList struct {
-								SubtitleStream []struct {
-									Index string `json:"Index" xml:"Index"`
-									Lang  string `json:"Lang" xml:"Lang"`
-								} `json:"SubtitleStream" xml:"SubtitleStream"`
-							} `json:"SubtitleStreamList" xml:"SubtitleStreamList"`
-						} `json:"Streams" xml:"Streams"`
-						Format struct {
-							NumStreams     string `json:"NumStreams" xml:"NumStreams"`
-							NumPrograms    string `json:"NumPrograms" xml:"NumPrograms"`
-							FormatName     string `json:"FormatName" xml:"FormatName"`
-							FormatLongName string `json:"FormatLongName" xml:"FormatLongName"`
-							StartTime      string `json:"StartTime" xml:"StartTime"`
-							Duration       string `json:"Duration" xml:"Duration"`
-							Size           string `json:"Size" xml:"Size"`
-							Bitrate        string `json:"Bitrate" xml:"Bitrate"`
-						} `json:"Format" xml:"Format"`
-					} `json:"Properties" xml:"Properties"`
-					Clip struct {
-						TimeSpan struct {
-							Seek     string `json:"Seek" xml:"Seek"`
-							Duration string `json:"Duration" xml:"Duration"`
-						} `json:"TimeSpan" xml:"TimeSpan"`
-					} `json:"Clip" xml:"Clip"`
-					SuperReso struct {
-						IsHalfSample string `json:"IsHalfSample" xml:"IsHalfSample"`
-					} `json:"SuperReso" xml:"SuperReso"`
-					SubtitleConfig struct {
-						SubtitleList struct {
-							Subtitle []struct {
-								Map string `json:"Map" xml:"Map"`
-							} `json:"Subtitle" xml:"Subtitle"`
-						} `json:"SubtitleList" xml:"SubtitleList"`
-						ExtSubtitleList struct {
-							ExtSubtitle []struct {
-								FontName string `json:"FontName" xml:"FontName"`
-								CharEnc  string `json:"CharEnc" xml:"CharEnc"`
-								Input2   struct {
-									Bucket   string `json:"Bucket" xml:"Bucket"`
-									Location string `json:"Location" xml:"Location"`
-									Object   string `json:"Object" xml:"Object"`
-								} `json:"Input" xml:"Input"`
-							} `json:"ExtSubtitle" xml:"ExtSubtitle"`
-						} `json:"ExtSubtitleList" xml:"ExtSubtitleList"`
-					} `json:"SubtitleConfig" xml:"SubtitleConfig"`
-					TransConfig struct {
-						TransMode               string `json:"TransMode" xml:"TransMode"`
-						IsCheckReso             string `json:"IsCheckReso" xml:"IsCheckReso"`
-						IsCheckResoFail         string `json:"IsCheckResoFail" xml:"IsCheckResoFail"`
-						IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate" xml:"IsCheckVideoBitrate"`
-						IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate" xml:"IsCheckAudioBitrate"`
-						AdjDarMethod            string `json:"AdjDarMethod" xml:"AdjDarMethod"`
-						IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail" xml:"IsCheckVideoBitrateFail"`
-						IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail" xml:"IsCheckAudioBitrateFail"`
-					} `json:"TransConfig" xml:"TransConfig"`
-					MuxConfig struct {
-						Segment struct {
-							Duration string `json:"Duration" xml:"Duration"`
-						} `json:"Segment" xml:"Segment"`
-						Gif struct {
-							Loop            string `json:"Loop" xml:"Loop"`
-							FinalDelay      string `json:"FinalDelay" xml:"FinalDelay"`
-							IsCustomPalette string `json:"IsCustomPalette" xml:"IsCustomPalette"`
-							DitherMode      string `json:"DitherMode" xml:"DitherMode"`
-						} `json:"Gif" xml:"Gif"`
-					} `json:"MuxConfig" xml:"MuxConfig"`
-					Audio struct {
-						Codec      string `json:"Codec" xml:"Codec"`
-						Profile    string `json:"Profile" xml:"Profile"`
-						Samplerate string `json:"Samplerate" xml:"Samplerate"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Channels   string `json:"Channels" xml:"Channels"`
-						Qscale     string `json:"Qscale" xml:"Qscale"`
-						Volume     struct {
-							Level  string `json:"Level" xml:"Level"`
-							Method string `json:"Method" xml:"Method"`
-						} `json:"Volume" xml:"Volume"`
-					} `json:"Audio" xml:"Audio"`
-					Video struct {
-						Codec      string `json:"Codec" xml:"Codec"`
-						Profile    string `json:"Profile" xml:"Profile"`
-						Bitrate    string `json:"Bitrate" xml:"Bitrate"`
-						Crf        string `json:"Crf" xml:"Crf"`
-						Width      string `json:"Width" xml:"Width"`
-						Height     string `json:"Height" xml:"Height"`
-						Fps        string `json:"Fps" xml:"Fps"`
-						Gop        string `json:"Gop" xml:"Gop"`
-						Preset     string `json:"Preset" xml:"Preset"`
-						ScanMode   string `json:"ScanMode" xml:"ScanMode"`
-						Bufsize    string `json:"Bufsize" xml:"Bufsize"`
-						Maxrate    string `json:"Maxrate" xml:"Maxrate"`
-						PixFmt     string `json:"PixFmt" xml:"PixFmt"`
-						Degrain    string `json:"Degrain" xml:"Degrain"`
-						Qscale     string `json:"Qscale" xml:"Qscale"`
-						Crop       string `json:"Crop" xml:"Crop"`
-						Pad        string `json:"Pad" xml:"Pad"`
-						MaxFps     string `json:"MaxFps" xml:"MaxFps"`
-						BitrateBnd struct {
-							Max string `json:"Max" xml:"Max"`
-							Min string `json:"Min" xml:"Min"`
-						} `json:"BitrateBnd" xml:"BitrateBnd"`
-					} `json:"Video" xml:"Video"`
-					Container struct {
-						Format string `json:"Format" xml:"Format"`
-					} `json:"Container" xml:"Container"`
-					Encryption struct {
-						Type    string `json:"Type" xml:"Type"`
-						Id      string `json:"Id" xml:"Id"`
-						Key     string `json:"Key" xml:"Key"`
-						KeyUri  string `json:"KeyUri" xml:"KeyUri"`
-						KeyType string `json:"KeyType" xml:"KeyType"`
-						SkipCnt string `json:"SkipCnt" xml:"SkipCnt"`
-					} `json:"Encryption" xml:"Encryption"`
-					WaterMarkList struct {
-						WaterMark []struct {
-							WaterMarkTemplateId string `json:"WaterMarkTemplateId" xml:"WaterMarkTemplateId"`
-							Width               string `json:"Width" xml:"Width"`
-							Height              string `json:"Height" xml:"Height"`
-							Dx                  string `json:"Dx" xml:"Dx"`
-							Dy                  string `json:"Dy" xml:"Dy"`
-							ReferPos            string `json:"ReferPos" xml:"ReferPos"`
-							Type                string `json:"Type" xml:"Type"`
-							InputFile           struct {
-								Bucket   string `json:"Bucket" xml:"Bucket"`
-								Location string `json:"Location" xml:"Location"`
-								Object   string `json:"Object" xml:"Object"`
-							} `json:"InputFile" xml:"InputFile"`
-						} `json:"WaterMark" xml:"WaterMark"`
-					} `json:"WaterMarkList" xml:"WaterMarkList"`
-					MergeList struct {
-						Merge []struct {
-							MergeURL string `json:"MergeURL" xml:"MergeURL"`
-							Start    string `json:"Start" xml:"Start"`
-							Duration string `json:"Duration" xml:"Duration"`
-							RoleArn  string `json:"RoleArn" xml:"RoleArn"`
-						} `json:"Merge" xml:"Merge"`
-					} `json:"MergeList" xml:"MergeList"`
-					OpeningList struct {
-						Opening []struct {
-							OpenUrl string `json:"openUrl" xml:"openUrl"`
-							Start   string `json:"Start" xml:"Start"`
-							Width   string `json:"Width" xml:"Width"`
-							Height  string `json:"Height" xml:"Height"`
-						} `json:"Opening" xml:"Opening"`
-					} `json:"OpeningList" xml:"OpeningList"`
-					TailSlateList struct {
-						TailSlate []struct {
-							TailUrl       string `json:"TailUrl" xml:"TailUrl"`
-							Start         string `json:"Start" xml:"Start"`
-							BlendDuration string `json:"BlendDuration" xml:"BlendDuration"`
-							Width         string `json:"Width" xml:"Width"`
-							Height        string `json:"Height" xml:"Height"`
-							IsMergeAudio  bool   `json:"IsMergeAudio" xml:"IsMergeAudio"`
-							BgColor       string `json:"BgColor" xml:"BgColor"`
-						} `json:"TailSlate" xml:"TailSlate"`
-					} `json:"TailSlateList" xml:"TailSlateList"`
-				} `json:"Output" xml:"Output"`
-				MNSMessageResult struct {
-					MessageId    string `json:"MessageId" xml:"MessageId"`
-					ErrorMessage string `json:"ErrorMessage" xml:"ErrorMessage"`
-					ErrorCode    string `json:"ErrorCode" xml:"ErrorCode"`
-				} `json:"MNSMessageResult" xml:"MNSMessageResult"`
-			} `json:"Job" xml:"Job"`
-		} `json:"JobResult" xml:"JobResult"`
-	} `json:"JobResultList" xml:"JobResultList"`
+	RequestId     string `json:"RequestId"`
+	JobResultList []struct {
+		Success bool   `json:"Success"`
+		Code    string `json:"Code"`
+		Message string `json:"Message"`
+		Job     struct {
+			JobId        string `json:"JobId"`
+			State        string `json:"State"`
+			Code         string `json:"Code"`
+			Message      string `json:"Message"`
+			Percent      int64  `json:"Percent"`
+			PipelineId   string `json:"PipelineId"`
+			CreationTime string `json:"CreationTime"`
+			FinishTime   string `json:"FinishTime"`
+			Input        struct {
+				Bucket   string `json:"Bucket"`
+				Location string `json:"Location"`
+				Object   string `json:"Object"`
+			} `json:"Input"`
+			Output struct {
+				TemplateId         string `json:"TemplateId"`
+				UserData           string `json:"UserData"`
+				Rotate             string `json:"Rotate"`
+				VideoStreamMap     string `json:"VideoStreamMap"`
+				AudioStreamMap     string `json:"AudioStreamMap"`
+				DeWatermark        string `json:"DeWatermark"`
+				Priority           string `json:"Priority"`
+				WaterMarkConfigUrl string `json:"WaterMarkConfigUrl"`
+				MergeConfigUrl     string `json:"MergeConfigUrl"`
+				DigiWaterMark      struct {
+					Type       string `json:"Type"`
+					Alpha      string `json:"Alpha"`
+					InputFile1 struct {
+						Bucket   string `json:"Bucket"`
+						Location string `json:"Location"`
+						Object   string `json:"Object"`
+					} `json:"InputFile"`
+				} `json:"DigiWaterMark"`
+				OutputFile struct {
+					Bucket   string `json:"Bucket"`
+					Location string `json:"Location"`
+					Object   string `json:"Object"`
+					RoleArn  string `json:"RoleArn"`
+				} `json:"OutputFile"`
+				M3U8NonStandardSupport struct {
+					TS struct {
+						Md5Support  bool `json:"Md5Support"`
+						SizeSupport bool `json:"SizeSupport"`
+					} `json:"TS"`
+				} `json:"M3U8NonStandardSupport"`
+				Properties struct {
+					Width      string `json:"Width"`
+					Height     string `json:"Height"`
+					Bitrate    string `json:"Bitrate"`
+					Duration   string `json:"Duration"`
+					Fps        string `json:"Fps"`
+					FileSize   string `json:"FileSize"`
+					FileFormat string `json:"FileFormat"`
+					Streams    struct {
+						VideoStreamList []struct {
+							Index          string `json:"Index"`
+							CodecName      string `json:"CodecName"`
+							CodecLongName  string `json:"CodecLongName"`
+							Profile        string `json:"Profile"`
+							CodecTimeBase  string `json:"CodecTimeBase"`
+							CodecTagString string `json:"CodecTagString"`
+							CodecTag       string `json:"CodecTag"`
+							Width          string `json:"Width"`
+							Height         string `json:"Height"`
+							HasBFrames     string `json:"HasBFrames"`
+							Sar            string `json:"Sar"`
+							Dar            string `json:"Dar"`
+							PixFmt         string `json:"PixFmt"`
+							Level          string `json:"Level"`
+							Fps            string `json:"Fps"`
+							AvgFPS         string `json:"AvgFPS"`
+							Timebase       string `json:"Timebase"`
+							StartTime      string `json:"StartTime"`
+							Duration       string `json:"Duration"`
+							Bitrate        string `json:"Bitrate"`
+							NumFrames      string `json:"NumFrames"`
+							Lang           string `json:"Lang"`
+							NetworkCost    struct {
+								PreloadTime   string `json:"PreloadTime"`
+								CostBandwidth string `json:"CostBandwidth"`
+								AvgBitrate    string `json:"AvgBitrate"`
+							} `json:"NetworkCost"`
+						} `json:"VideoStreamList"`
+						AudioStreamList []struct {
+							Index          string `json:"Index"`
+							CodecName      string `json:"CodecName"`
+							CodecTimeBase  string `json:"CodecTimeBase"`
+							CodecLongName  string `json:"CodecLongName"`
+							CodecTagString string `json:"CodecTagString"`
+							CodecTag       string `json:"CodecTag"`
+							SampleFmt      string `json:"SampleFmt"`
+							Samplerate     string `json:"Samplerate"`
+							Channels       string `json:"Channels"`
+							ChannelLayout  string `json:"ChannelLayout"`
+							Timebase       string `json:"Timebase"`
+							StartTime      string `json:"StartTime"`
+							Duration       string `json:"Duration"`
+							Bitrate        string `json:"Bitrate"`
+							NumFrames      string `json:"NumFrames"`
+							Lang           string `json:"Lang"`
+						} `json:"AudioStreamList"`
+						SubtitleStreamList []struct {
+							Index string `json:"Index"`
+							Lang  string `json:"Lang"`
+						} `json:"SubtitleStreamList"`
+					} `json:"Streams"`
+					Format struct {
+						NumStreams     string `json:"NumStreams"`
+						NumPrograms    string `json:"NumPrograms"`
+						FormatName     string `json:"FormatName"`
+						FormatLongName string `json:"FormatLongName"`
+						StartTime      string `json:"StartTime"`
+						Duration       string `json:"Duration"`
+						Size           string `json:"Size"`
+						Bitrate        string `json:"Bitrate"`
+					} `json:"Format"`
+				} `json:"Properties"`
+				Clip struct {
+					TimeSpan struct {
+						Seek     string `json:"Seek"`
+						Duration string `json:"Duration"`
+					} `json:"TimeSpan"`
+				} `json:"Clip"`
+				SuperReso struct {
+					IsHalfSample string `json:"IsHalfSample"`
+				} `json:"SuperReso"`
+				SubtitleConfig struct {
+					SubtitleList []struct {
+						Map string `json:"Map"`
+					} `json:"SubtitleList"`
+					ExtSubtitleList []struct {
+						FontName string `json:"FontName"`
+						CharEnc  string `json:"CharEnc"`
+						Input2   struct {
+							Bucket   string `json:"Bucket"`
+							Location string `json:"Location"`
+							Object   string `json:"Object"`
+						} `json:"Input"`
+					} `json:"ExtSubtitleList"`
+				} `json:"SubtitleConfig"`
+				TransConfig struct {
+					TransMode               string `json:"TransMode"`
+					IsCheckReso             string `json:"IsCheckReso"`
+					IsCheckResoFail         string `json:"IsCheckResoFail"`
+					IsCheckVideoBitrate     string `json:"IsCheckVideoBitrate"`
+					IsCheckAudioBitrate     string `json:"IsCheckAudioBitrate"`
+					AdjDarMethod            string `json:"AdjDarMethod"`
+					IsCheckVideoBitrateFail string `json:"IsCheckVideoBitrateFail"`
+					IsCheckAudioBitrateFail string `json:"IsCheckAudioBitrateFail"`
+				} `json:"TransConfig"`
+				MuxConfig struct {
+					Segment struct {
+						Duration string `json:"Duration"`
+					} `json:"Segment"`
+					Gif struct {
+						Loop            string `json:"Loop"`
+						FinalDelay      string `json:"FinalDelay"`
+						IsCustomPalette string `json:"IsCustomPalette"`
+						DitherMode      string `json:"DitherMode"`
+					} `json:"Gif"`
+				} `json:"MuxConfig"`
+				Audio struct {
+					Codec      string `json:"Codec"`
+					Profile    string `json:"Profile"`
+					Samplerate string `json:"Samplerate"`
+					Bitrate    string `json:"Bitrate"`
+					Channels   string `json:"Channels"`
+					Qscale     string `json:"Qscale"`
+					Volume     struct {
+						Level  string `json:"Level"`
+						Method string `json:"Method"`
+					} `json:"Volume"`
+				} `json:"Audio"`
+				Video struct {
+					Codec      string `json:"Codec"`
+					Profile    string `json:"Profile"`
+					Bitrate    string `json:"Bitrate"`
+					Crf        string `json:"Crf"`
+					Width      string `json:"Width"`
+					Height     string `json:"Height"`
+					Fps        string `json:"Fps"`
+					Gop        string `json:"Gop"`
+					Preset     string `json:"Preset"`
+					ScanMode   string `json:"ScanMode"`
+					Bufsize    string `json:"Bufsize"`
+					Maxrate    string `json:"Maxrate"`
+					PixFmt     string `json:"PixFmt"`
+					Degrain    string `json:"Degrain"`
+					Qscale     string `json:"Qscale"`
+					Crop       string `json:"Crop"`
+					Pad        string `json:"Pad"`
+					MaxFps     string `json:"MaxFps"`
+					BitrateBnd struct {
+						Max string `json:"Max"`
+						Min string `json:"Min"`
+					} `json:"BitrateBnd"`
+				} `json:"Video"`
+				Container struct {
+					Format string `json:"Format"`
+				} `json:"Container"`
+				Encryption struct {
+					Type    string `json:"Type"`
+					Id      string `json:"Id"`
+					Key     string `json:"Key"`
+					KeyUri  string `json:"KeyUri"`
+					KeyType string `json:"KeyType"`
+					SkipCnt string `json:"SkipCnt"`
+				} `json:"Encryption"`
+				WaterMarkList []struct {
+					WaterMarkTemplateId string `json:"WaterMarkTemplateId"`
+					Width               string `json:"Width"`
+					Height              string `json:"Height"`
+					Dx                  string `json:"Dx"`
+					Dy                  string `json:"Dy"`
+					ReferPos            string `json:"ReferPos"`
+					Type                string `json:"Type"`
+					InputFile           struct {
+						Bucket   string `json:"Bucket"`
+						Location string `json:"Location"`
+						Object   string `json:"Object"`
+					} `json:"InputFile"`
+				} `json:"WaterMarkList"`
+				MergeList []struct {
+					MergeURL string `json:"MergeURL"`
+					Start    string `json:"Start"`
+					Duration string `json:"Duration"`
+					RoleArn  string `json:"RoleArn"`
+				} `json:"MergeList"`
+				OpeningList []struct {
+					OpenUrl string `json:"openUrl"`
+					Start   string `json:"Start"`
+					Width   string `json:"Width"`
+					Height  string `json:"Height"`
+				} `json:"OpeningList"`
+				TailSlateList []struct {
+					TailUrl       string `json:"TailUrl"`
+					Start         string `json:"Start"`
+					BlendDuration string `json:"BlendDuration"`
+					Width         string `json:"Width"`
+					Height        string `json:"Height"`
+					IsMergeAudio  bool   `json:"IsMergeAudio"`
+					BgColor       string `json:"BgColor"`
+				} `json:"TailSlateList"`
+			} `json:"Output"`
+			MNSMessageResult struct {
+				MessageId    string `json:"MessageId"`
+				ErrorMessage string `json:"ErrorMessage"`
+				ErrorCode    string `json:"ErrorCode"`
+			} `json:"MNSMessageResult"`
+		} `json:"Job"`
+	} `json:"JobResultList"`
 }
 
 func CreateSubmitJobsRequest() (request *SubmitJobsRequest) {

Some files were not shown because too many files changed in this diff