Consulta os resultados de um trabalho de moderação de conteúdo.
Observações de uso
Os resultados da moderação de vídeo são organizados em ordem cronológica crescente em uma linha do tempo. Se o vídeo for longo, os resultados serão paginados e apenas a primeira página será retornada inicialmente. Chame esta operação para obter todos os resultados da moderação do vídeo.
Limite de QPS
É possível chamar esta API até 100 vezes por segundo por conta. Solicitações que excederem esse limite serão descartadas, causando interrupções no serviço. Considere essa restrição ao chamar esta operação. Para mais informações, consulte Limite de QPS.
Depuração
Parâmetros da solicitação
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
| Action | String | Sim | QueryMediaCensorJobDetail | A operação a ser executada. Defina o valor como QueryMediaCensorJobDetail. |
| JobId | String | Sim | 2288c6ca184c0e47098a5b665e2a12**** | ID do trabalho de moderação de conteúdo. Obtenha o ID do trabalho nos parâmetros de resposta da operação SubmitMediaCensorJob. |
| NextPageToken | String | Não | ae0fd49c0840e14daf0d66a75b83**** | Token usado para recuperar a próxima página dos resultados da consulta. Deixe este parâmetro vazio ao consultar os resultados de um trabalho de moderação de conteúdo pela primeira vez. O token da próxima página é retornado após a primeira consulta bem-sucedida. |
| MaximumPageSize | Long | Não | 30 | Número máximo de entradas a retornar em cada página.
|
Parâmetros de resposta
| Parâmetro | Tipo | Exemplo | Descrição |
| RequestId | String | B42299E6-F71F-465F-8FE9-4FC2E3D3C2CA | ID da solicitação. |
| MediaCensorJobDetail | Object | Resultados do trabalho de moderação de conteúdo. |
|
| CreationTime | String | 2018-09-13T16:32:24Z | Hora de criação do trabalho. |
| FinishTime | String | 2018-09-21 | Hora de conclusão do trabalho. |
| Suggestion | String | block | Resultado geral do trabalho. Valores válidos:
Se o resultado da moderação de qualquer tipo de conteúdo for "review", o resultado geral será "review". Se o resultado for "block", o resultado geral será "block". |
| CoverImageCensorResults | Array of CoverImageCensorResult | Resultados da moderação das miniaturas. |
|
| CoverImageCensorResult | |||
| Object | String | test/ai/censor/v2/vme-****.jpg | Objeto do Object Storage Service (OSS) usado como miniatura do vídeo. |
| Location | String | oss-cn-shanghai | Região do OSS onde a miniatura do vídeo está armazenada. |
| Bucket | String | bucket-out-test-**** | Bucket do OSS que armazena a miniatura do vídeo. |
| Results | Array of Result | Resultados da moderação. |
|
| Result | |||
| Suggestion | String | pass | Ação subsequente recomendada. Valores válidos:
|
| Label | String | normal | Rótulos do resultado da moderação. Vários rótulos são separados por vírgulas (,).
|
| Scene | String | porn | Cenário de moderação. Valores válidos:
|
| Rate | String | 100 | Pontuação. Valores válidos: 0 a 100. |
| State | String | Success | Status do trabalho. |
| TitleCensorResult | Object | Resultado da moderação do título. |
|
| Suggestion | String | block | Ação subsequente recomendada. Valores válidos:
|
| Label | String | meaningless | Rótulos do resultado da moderação. Valores válidos:
|
| Scene | String | antispam | Cenário de moderação. O valor é antispam. |
| Rate | String | 99.91 | Pontuação. |
| Message | String | The resource operated cannot be found | Mensagem de erro retornada se o trabalho falhar. Este parâmetro não é retornado se o trabalho for bem-sucedido. |
| Input | Object | Informações sobre a entrada do trabalho. |
|
| Object | String | test/ai/censor/test-****.mp4 | Objeto do OSS usado como arquivo de entrada. |
| Location | String | oss-cn-shanghai | Região do OSS onde o arquivo de entrada reside. |
| Bucket | String | bucket-test-in-**** | Bucket do OSS que armazena o arquivo de entrada. |
| BarrageCensorResult | Object | Resultado da moderação de comentários ao vivo. |
|
| Suggestion | String | pass | Ação subsequente recomendada. Valores válidos:
|
| Label | String | normal | Rótulos do resultado da moderação. Vários rótulos são separados por vírgulas (,). Valores válidos:
|
| Scene | String | antispam | Cenário de moderação. O valor é antispam. |
| Rate | String | 99.91 | Pontuação. |
| DescCensorResult | Object | Resultado da moderação da descrição. |
|
| Suggestion | String | review | Ação subsequente recomendada. Valores válidos:
|
| Label | String | normal | Rótulos do resultado da moderação. Valores válidos:
|
| Scene | String | antispam | Cenário de moderação. O valor é antispam. |
| Rate | String | 100 | Pontuação. |
| VideoCensorConfig | Object | Configurações de moderação de vídeo. |
|
| OutputFile | Object | Informações sobre snapshots de saída. |
|
| Object | String | output{Count}.jpg | Um ou mais objetos do OSS gerados como snapshots de saída. Nota No exemplo, {Count} é um espaço reservado. Os objetos do OSS gerados como snapshots de saída são nomeados como output00001-****.jpg, output00002-****.jpg, e assim por diante. |
| Location | String | oss-cn-shanghai | Região do OSS onde reside o bucket do OSS para armazenamento do snapshot de saída. |
| Bucket | String | test-bucket-**** | Bucket do OSS que armazena o snapshot de saída. |
| VideoCensor | String | true | Indica se o conteúdo do vídeo precisa ser moderado. Valor padrão: true. Valores válidos:
|
| BizType | String | common | Tipo de negócio personalizado. Valor padrão: common. |
| JobId | String | f8f166eea7a44e9bb0a4aecf9543**** | ID do trabalho de moderação de conteúdo. |
| UserData | String | example userdata **** | Dados personalizados. |
| Code | String | InvalidParameter.ResourceNotFound | Código de erro retornado se o trabalho falhar. Este parâmetro não é retornado se o trabalho for bem-sucedido. |
| VensorCensorResult | Object | Resultados da revisão de vídeo. |
|
| VideoTimelines | Array of VideoTimeline | Resultados da moderação ordenados cronologicamente de forma crescente. |
|
| VideoTimeline | |||
| Timestamp | String | 00:02:59.999 | Posição no vídeo. Formato: |
| Object | String | output{Count}.jpg | Um ou mais objetos do OSS gerados como snapshots de saída. Nota No exemplo, {Count} é um espaço reservado. Os objetos do OSS gerados como snapshots de saída são nomeados como output00001-****.jpg, output00002-****.jpg, e assim por diante. |
| CensorResults | Array of CensorResult | Resultados da moderação que incluem informações como rótulos e pontuações. |
|
| CensorResult | |||
| Suggestion | String | block | Ação subsequente recomendada. Valores válidos:
|
| Label | String | porn,ad | Rótulos do resultado da moderação. Vários rótulos são separados por vírgulas (,).
|
| Scene | String | porn | Cenário de moderação. Valores válidos:
|
| Rate | String | 99.99 | Pontuação. |
| NextPageToken | String | ea04afcca7cd4e80b9ece8fbb251**** | Token usado para recuperar a próxima página dos resultados da consulta. |
| CensorResults | Array of CensorResult | Conjunto de resultados da moderação. As informações incluem o resumo sobre vários cenários, como conteúdo pornográfico e terrorista. |
|
| CensorResult | |||
| Suggestion | String | review | Ação subsequente recomendada. Valores válidos:
|
| Label | String | meaningless | Rótulos do resultado da moderação. Vários rótulos são separados por vírgulas (,).
|
| Scene | String | terrorism | Cenário de moderação. Valores válidos:
|
| Rate | String | 100 | Pontuação. |
| PipelineId | String | c5b30b7c0d0e4a0abde1d5f9e751**** | ID da fila do ApsaraVideo Media Processing (MPS) usada para executar o trabalho. |
Exemplos
Exemplos de solicitações
http(s)://mts.cn-shanghai.aliyuncs.com/?Action=QueryMediaCensorJobDetail
&JobId=2288c6ca184c0e47098a5b665e2a12****
&NextPageToken=ae0fd49c0840e14daf0d66a75b83****
&MaximumPageSize=30
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<QueryMediaCensorJobDetailResponse>
<RequestId>B42299E6-F71F-465F-8FE9-4FC2E3D3C2CA</RequestId>
<MediaCensorJobDetail>
<CreationTime>2018-09-13T16:32:24Z</CreationTime>
<FinishTime>2018-09-21</FinishTime>
<Suggestion>block</Suggestion>
<CoverImageCensorResults>
<Object>test/ai/censor/v2/vme-****.jpg</Object>
<Location>oss-cn-shanghai</Location>
<Bucket>bucket-out-test-****</Bucket>
<Results>
<Suggestion>pass</Suggestion>
<Label>normal</Label>
<Scene>porn</Scene>
<Rate>100</Rate>
</Results>
</CoverImageCensorResults>
<State>Success</State>
<TitleCensorResult>
<Suggestion>block</Suggestion>
<Label>meaningless</Label>
<Scene>antispam</Scene>
<Rate>99.91</Rate>
</TitleCensorResult>
<Message>The resource operated cannot be found</Message>
<Input>
<Object>test/ai/censor/test-****.mp4</Object>
<Location>oss-cn-shanghai</Location>
<Bucket>bucket-test-in-****</Bucket>
</Input>
<BarrageCensorResult>
<Suggestion>pass</Suggestion>
<Label>normal</Label>
<Scene>antispam</Scene>
<Rate>99.91</Rate>
</BarrageCensorResult>
<DescCensorResult>
<Suggestion>review</Suggestion>
<Label>normal</Label>
<Scene>antispam</Scene>
<Rate>100</Rate>
</DescCensorResult>
<VideoCensorConfig>
<OutputFile>
<Object>output{Count}.jpg</Object>
<Location>oss-cn-shanghai</Location>
<Bucket>test-bucket-****</Bucket>
</OutputFile>
<VideoCensor>true</VideoCensor>
<BizType>common</BizType>
</VideoCensorConfig>
<JobId>f8f166eea7a44e9bb0a4aecf9543****</JobId>
<UserData>example userdata ****</UserData>
<Code>InvalidParameter.ResourceNotFound</Code>
<VensorCensorResult>
<VideoTimelines>
<Timestamp>00:02:59.999</Timestamp>
<Object>output{Count}.jpg</Object>
<CensorResults>
<Suggestion>block</Suggestion>
<Label>porn,ad</Label>
<Scene>porn</Scene>
<Rate>99.99</Rate>
</CensorResults>
</VideoTimelines>
<NextPageToken>ea04afcca7cd4e80b9ece8fbb251****</NextPageToken>
<CensorResults>
<Suggestion>review</Suggestion>
<Label>meaningless</Label>
<Scene>terrorism</Scene>
<Rate>100</Rate>
</CensorResults>
</VensorCensorResult>
<PipelineId>c5b30b7c0d0e4a0abde1d5f9e751****</PipelineId>
</MediaCensorJobDetail>
</QueryMediaCensorJobDetailResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "B42299E6-F71F-465F-8FE9-4FC2E3D3C2CA",
"MediaCensorJobDetail" : {
"CreationTime" : "2018-09-13T16:32:24Z",
"FinishTime" : "2018-09-21",
"Suggestion" : "block",
"CoverImageCensorResults" : [ {
"Object" : "test/ai/censor/v2/vme-****.jpg",
"Location" : "oss-cn-shanghai",
"Bucket" : "bucket-out-test-****",
"Results" : [ {
"Suggestion" : "pass",
"Label" : "normal",
"Scene" : "porn",
"Rate" : "100"
} ]
} ],
"State" : "Success",
"TitleCensorResult" : {
"Suggestion" : "block",
"Label" : "meaningless",
"Scene" : "antispam",
"Rate" : "99.91"
},
"Message" : "The resource operated cannot be found",
"Input" : {
"Object" : "test/ai/censor/test-****.mp4",
"Location" : "oss-cn-shanghai",
"Bucket" : "bucket-test-in-****"
},
"BarrageCensorResult" : {
"Suggestion" : "pass",
"Label" : "normal",
"Scene" : "antispam",
"Rate" : "99.91"
},
"DescCensorResult" : {
"Suggestion" : "review",
"Label" : "normal",
"Scene" : "antispam",
"Rate" : "100"
},
"VideoCensorConfig" : {
"OutputFile" : {
"Object" : "output{Count}.jpg",
"Location" : "oss-cn-shanghai",
"Bucket" : "test-bucket-****"
},
"VideoCensor" : "true",
"BizType" : "common"
},
"JobId" : "f8f166eea7a44e9bb0a4aecf9543****",
"UserData" : "example userdata ****",
"Code" : "InvalidParameter.ResourceNotFound",
"VensorCensorResult" : {
"VideoTimelines" : [ {
"Timestamp" : "00:02:59.999",
"Object" : "output{Count}.jpg",
"CensorResults" : [ {
"Suggestion" : "block",
"Label" : "porn,ad",
"Scene" : "porn",
"Rate" : "99.99"
} ]
} ],
"NextPageToken" : "ea04afcca7cd4e80b9ece8fbb251****",
"CensorResults" : [ {
"Suggestion" : "review",
"Label" : "meaningless",
"Scene" : "terrorism",
"Rate" : "100"
} ]
},
"PipelineId" : "c5b30b7c0d0e4a0abde1d5f9e751****"
}
}
Descrição adicional das respostas de exemplo
// Sample {jobId}.video_timeline file
// After the moderation is complete, the system generates a JSON file named {jobId}.video_timeline and stores the file in the OSS bucket specified by the CensorConfig.OutputFile parameter of the SubmitMediaCensorJob operation. Sample content of the file:
[
{
"CensorResults":[
{
"Label":"ad",
"Rate":"99.9100000000",
"Scene":"ad"
}
],
"Object":"gaoshen/test8/example-00001.jpg",
"Timestamp":"00:00:00.005"
},
{
"CensorResults":[
{
"Label":"ad",
"Rate":"99.9100000000",
"Scene":"ad"
}
],
"Object":"gaoshen/test8/example-00002.jpg",
"Timestamp":"00:00:05.005"
},
{
"CensorResults":[
{
"Label":"ad",
"Rate":"99.9100000000",
"Scene":"ad"
}
],
"Object":"gaoshen/test8/example-00003.jpg",
"Timestamp":"00:00:10.005"
},
{
"CensorResults":[
{
"Label":"ad",
"Rate":"99.9100000000",
"Scene":"ad"
}
],
"Object":"gaoshen/test8/example-00004.jpg",
"Timestamp":"00:00:15.005"
},
{
"CensorResults":[
{
"Label":"politics",
"Rate":"82.6500000000",
"Scene":"terrorism",
"SfaceData":[
{
"faces":[
{
"id":"AliFace_0006942",
"name":"Name",
"rate":82.65
}
],
"h":51,
"w":40,
"x":744,
"y":121
}
]
}
],
"Object":"gaoshen/test8/example-00008.jpg",
"Timestamp":"00:00:35.005"
},
{
"CensorResults":[
{
"Label":"politics",
"Rate":"93.6800000000",
"Scene":"terrorism",
"SfaceData":[
{
"faces":[
{
"id":"AliFace_0006942",
"name":"Name",
"rate":93.68
}
],
"h":119,
"w":94,
"x":662,
"y":94
}
]
}
],
"Object":"gaoshen/test8/example-00011.jpg",
"Timestamp":"00:00:50.005"
},
{
"CensorResults":[
{
"Label":"ad",
"Rate":"99.9100000000",
"Scene":"ad"
}
],
"Object":"gaoshen/test8/example-00011.jpg",
"Timestamp":"00:00:50.005"
},
{
"CensorResults":[
{
"Label":"politics",
"Rate":"89.2900000000",
"Scene":"terrorism",
"SfaceData":[
{
"faces":[
{
"id":"AliFace_0006942",
"name":"Name",
"rate":89.29
}
],
"h":112,
"w":98,
"x":665,
"y":138
}
]
}
],
"Object":"gaoshen/test8/example-00012.jpg",
"Timestamp":"00:00:55.005"
},
{
"CensorResults":[
{
"Label":"ad",
"Rate":"99.9100000000",
"Scene":"ad"
}
],
"Object":"gaoshen/test8/example-00012.jpg",
"Timestamp":"00:00:55.005"
},
{
"CensorResults":[
{
"Label":"politics",
"Rate":"92.1400000000",
"Scene":"terrorism",
"SfaceData":[
{
"faces":[
{
"id":"AliFace_0007536",
"name":"Name",
"rate":92.14
}
],
"h":117,
"w":91,
"x":665,
"y":79
}
]
}
],
"Object":"gaoshen/test8/example-00013.jpg",
"Timestamp":"00:01:00.005"
},
{
"CensorResults":[
{
"Label":"ad",
"Rate":"99.9100000000",
"Scene":"ad"
}
],
"Object":"gaoshen/test8/example-00013.jpg",
"Timestamp":"00:01:00.005"
},
{
"CensorResults":[
{
"Label":"politics",
"Rate":"93.0400000000",
"Scene":"terrorism",
"SfaceData":[
{
"faces":[
{
"id":"AliFace_0002750",
"name":"Name",
"rate":93.04
}
],
"h":120,
"w":93,
"x":673,
"y":79
}
]
}
],
"Object":"gaoshen/test8/example-00014.jpg",
"Timestamp":"00:01:05.005"
}
]
Códigos de erro
Para obter uma lista de códigos de erro, visite o API Error Center.