Todos os produtos
Search
Central de documentação

AI Guardrails:Live Video Stream Moderation API 2.0

Última atualização: Jul 09, 2026

A moderação de transmissão de vídeo ao vivo 2.0 ajuda a detectar conteúdo de risco no vídeo e no áudio de transmissões ao vivo. Este tópico descreve como usar operações de API para moderar transmissões ao vivo.

Guia de integração

  1. Registre uma conta Alibaba Cloud e siga as instruções para concluir o registro.

  2. Ative o pagamento conforme o uso para o AI Guardrails. Certifique-se de que o serviço esteja ativado. Para mais informações, consulte Ativar serviço. Não há cobrança pela ativação do serviço. Após utilizar a API, o sistema gera a fatura automaticamente com base no uso. Para mais informações, consulte Descrição de faturamento.

  3. Crie uma AccessKey no console RAM. Para mais informações, consulte Criar uma AccessKey. Se você utilizar a AccessKey de um usuário do Resource Access Management (RAM), use sua conta Alibaba Cloud para conceder a permissão AliyunYundunGreenWebFullAccess ao usuário RAM. Para mais informações, consulte Conceder permissões a um usuário RAM.

  4. Desenvolva e integre o serviço. Recomendamos chamar a operação usando um kit de desenvolvimento de software (SDK). Para mais informações, consulte SDK de moderação de vídeo v2.0 e guia de integração.

  5. O serviço de moderação de transmissão de vídeo ao vivo inclui as três operações de API a seguir:

Enviar uma tarefa de moderação

Descrição da API

  • Operação de API: VideoModeration. Esta operação suporta apenas moderação assíncrona para transmissões de vídeo ao vivo.

  • Regiões e endpoints suportados:

    Região

    Endpoint público

    Endpoint VPC

    Serviços suportados

    Singapura

    green-cip.ap-southeast-1.aliyuncs.com

    green-cip-vpc.ap-southeast-1.aliyuncs.com

    liveStreamDetection_global, liveStreamDetectionByVL_global

    EUA (Virgínia)

    https://green-cip.us-east-1.aliyuncs.com

    https://green-cip-vpc.us-east-1.aliyuncs.com

    liveStreamDetection_global

    EUA (Vale do Silício)

    https://green-cip.us-west-1.aliyuncs.com

    Não disponível

    Alemanha (Frankfurt)

    green-cip.eu-central-1.aliyuncs.com

    Não disponível

  • Faturamento:

    Esta é uma operação paga. A cobrança ocorre com base nas políticas de moderação configuradas para os quadros de vídeo ao vivo e para o áudio. Para quadros de vídeo ao vivo, é possível selecionar vários serviços. A taxa total é calculada multiplicando-se o número de snapshots de vídeo pelo preço unitário de cada serviço. Caso você também modere o áudio da transmissão ao vivo em busca de violações, uma taxa adicional será cobrada. Essa taxa é calculada multiplicando-se a duração do vídeo pelo preço unitário do recurso de moderação de áudio. Para mais informações sobre os métodos de faturamento, consulte Faturamento.

  • Objeto de detecção: Transmissões de vídeo ao vivo.

  • Resposta: Tarefas de moderação assíncronas não retornam resultados em tempo real. Obtenha o resultado da moderação por meio de callback ou polling.

    • Use um callback para obter o resultado da moderação: Ao enviar uma tarefa de moderação assíncrona, especifique o parâmetro callback na solicitação para receber o resultado automaticamente.

    • Use polling para obter o resultado da moderação: Ao enviar uma tarefa de moderação assíncrona, não especifique o parâmetro callback. Após o envio da tarefa, chame a operação de consulta de resultados para obter o resultado da moderação.

  • Requisitos da transmissão ao vivo:

    • Protocolos suportados: RTMP, HLS, HTTP-FLV e RTSP.

    • Limite de duração da transmissão ao vivo: Uma única tarefa de moderação de fluxo de vídeo pode durar no máximo 24 horas. A tarefa termina automaticamente se exceder esse limite.

  • Configuração de regras de detecção:

    • Na primeira chamada, configure as regras de moderação de transmissão ao vivo no Console de Moderação de Conteúdo.

    • Se nenhuma regra for definida, a API de Moderação de Transmissão ao Vivo V2.0 utiliza as seguintes configurações padrão:

      Serviço

      Configurações padrão

      Detecção de transmissão ao vivo (liveStreamDetection_global)

      • Frequência fixa de captura de quadros: 1 quadro/segundo

      • Serviço de detecção de quadros de vídeo: Detecção de linha de base geral (baselineCheck_global)

      • Detecção de áudio de vídeo: Ativada

      • Serviço de detecção de áudio de vídeo: Detecção de transmissão ao vivo social e de entretenimento (live_stream_detection_global)

      • Método de retorno de resultados: Retorna apenas resultados com ameaças detectadas

      Detecção de transmissão ao vivo (modelo grande) (liveStreamDetectionByVL_global)

      Nota

      Atualmente suportado apenas nas regiões de Pequim e Xangai. A versão de modelo grande é limitada a 10 endpoints de ingestão simultâneos.

      • Frequência fixa de captura de quadros: 1 quadro/segundo

      • Serviço de detecção de quadros de vídeo: Serviço de moderação de imagem com modelos grandes e pequenos (postImageCheckByVL)

      • Detecção de áudio de vídeo: Ativada

      • Serviço de detecção de áudio de vídeo: Detecção de transmissão ao vivo social e de entretenimento para regiões fora da China (live_stream_detection_cb)

      • Método de retorno de resultados: Retorna apenas resultados com ameaças detectadas

Limites de QPS

O limite de consultas por segundo (QPS) para esta operação é de 100 por usuário. O número de fluxos de moderação simultâneos é limitado a 50. Isso significa que no máximo 50 tarefas podem ser processadas ao mesmo tempo. Para aumentar o limite, entre em contato com seu gerente de contas. Se o limite for excedido, a chamada de API sofrerá throttling, o que pode afetar seus negócios. Utilize a operação de maneira adequada.

Depuração

Antes da integração, utilize o Alibaba Cloud OpenAPI para depurar a API VideoModeration online. Assim, você visualiza códigos de exemplo, informações de dependência do SDK e obtém uma visão geral dos métodos e parâmetros da API.

Importante

O recurso de depuração online utiliza a conta atualmente conectada para chamar as operações de API do AI Guardrails. Portanto, o número de chamadas é incluído no uso faturável da conta.

Parâmetros da solicitação

Nome

Tipo

Obrigatório

Exemplo

Descrição

Service

String

Sim

liveStreamDetection_global

O tipo de serviço de moderação. Valores válidos:

  • liveStreamDetection_global: moderação de transmissão de vídeo ao vivo

  • liveStreamDetectionByVL_global: moderação de transmissão de vídeo ao vivo (edição modelo grande)

ServiceParameters

JSONString

Sim

Os parâmetros necessários para o serviço de moderação. Este parâmetro é uma string JSON. Para mais informações sobre os parâmetros, consulte a Tabela 1. ServiceParameters.

Tabela 1. ServiceParameters

Nome

Tipo

Obrigatório

Exemplo

Descrição

url

String

Sim

http://www.aliyundoc.com/a.flv

A URL do objeto a ser moderado. Certifique-se de que a URL seja acessível pela Internet. A URL pode ter até 2.048 caracteres.

Nota

A URL não pode conter caracteres chineses. Especifique apenas uma URL por solicitação.

callback

String

Não

http://www.aliyundoc.com

A URL para a qual o resultado da moderação é enviado via callback. HTTP e HTTPS são suportados. Se este parâmetro for deixado vazio, será necessário usar polling para obter o resultado da moderação.

A interface de callback deve suportar solicitações POST, dados codificados em UTF-8 e os parâmetros de formulário checksum e content.

O AI Guardrails define os parâmetros checksum e content com base nas seguintes regras e formato, e chama sua interface de callback para retornar o resultado da moderação.

  • checksum: Uma string gerada aplicando o algoritmo SHA256 a uma nova string criada pela concatenação de user UID + seed + content. O UID do usuário é o ID da sua conta Alibaba Cloud, encontrado no Console de Gerenciamento Alibaba Cloud. Para evitar adulterações, ao receber o resultado enviado, gere uma string usando o mesmo algoritmo e verifique-a comparando com o checksum.

    Nota

    O UID do usuário deve ser o UID de uma conta Alibaba Cloud, não o UID de um usuário RAM.

  • content: O valor é uma string formatada em JSON. Analise e inverta a string para obter um objeto JSON. Para um exemplo do resultado de content, consulte a resposta de exemplo de uma consulta de detecção.

Nota

Após o servidor de callback receber o resultado enviado pelo AI Guardrails, um código de status HTTP 200 indica recebimento bem-sucedido. Outros códigos de status HTTP indicam falha. Em caso de falha no recebimento, o AI Guardrails tenta reenviar o resultado da moderação até 16 vezes. Se o resultado ainda não for recebido após 16 tentativas, ele deixa de ser enviado. Recomendamos verificar o status da sua interface de callback.

seed

String

Não

abc****

Uma string aleatória usada para a assinatura na solicitação de notificação de callback.

A string pode conter letras, dígitos e sublinhados (_), com até 64 caracteres. Personalize este valor para verificar se a solicitação de notificação de callback foi iniciada pelo serviço AI Guardrails da Alibaba Cloud.

Nota

Este parâmetro é obrigatório ao usar um callback.

cryptType

String

Não

SHA256

O algoritmo de criptografia para a assinatura na notificação de callback. O AI Guardrails calcula a assinatura para o resultado retornado (a string <b>user uid + seed + content</b>) com base no algoritmo de criptografia especificado e envia a assinatura para sua URL de callback. Valores válidos:

  • SHA256 (padrão): usa o algoritmo de criptografia SHA256.

  • SM3: usa o algoritmo criptográfico chinês HMAC-SM3. Uma string hexadecimal composta por letras minúsculas e dígitos é retornada.

    Por exemplo, após abc ser criptografado usando o algoritmo SM3, 66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0 é retornado.

dataId

String

Não

videoId****

O ID de dados do objeto.

O ID pode conter letras maiúsculas, letras minúsculas, dígitos, sublinhados (_), hífens (-) e pontos (.), com até 128 caracteres. Use este ID para identificar exclusivamente seus dados comerciais.

liveId

String

Não

liveId****

O ID da transmissão de vídeo ao vivo.

Este parâmetro serve para remover tarefas duplicadas de moderação de transmissão de vídeo ao vivo e evitar moderações repetidas. Se você especificar este parâmetro, o sistema verifica se há uma tarefa de moderação de transmissão ao vivo em andamento com base na combinação <b>uid+service+liveId</b>. Caso exista uma tarefa em andamento, o sistema retorna o taskId da tarefa existente e não inicia uma nova.

Nota

Após o servidor de callback receber o resultado enviado pelo AI Guardrails, um código de status HTTP 200 indica que o resultado foi recebido com sucesso. Outros códigos de status HTTP indicam falha. Se o resultado não for recebido, o AI Guardrails tenta reenviar o resultado da moderação até 16 vezes. Se o resultado ainda não for recebido após 16 tentativas, o AI Guardrails interrompe o envio. Recomendamos verificar o status da sua interface de callback.

Parâmetros de resposta

Nome

Tipo

Exemplo

Descrição

Code

Integer

200

O código de status. Para mais informações, consulte a Descrição de códigos.

Data

JSONObject

{"TaskId": "AAAAA-BBBBB"}

Os dados do resultado da moderação.

Message

String

OK

A mensagem de resposta da solicitação.

RequestId

String

ABCD1234-1234-1234-1234-123****

O ID da solicitação.

Exemplos

Solicitação de exemplo

{
    "Service": "liveStreamDetection_global",
    "ServiceParameters": {
        "url": "http://www.aliyundoc.com/a.flv",
        "dataId": "videoId****",
        "liveId": "liveId****"
    }
}

Resposta de sucesso de exemplo

{
    "Msg": "OK",
    "Code": 200,
    "Data":
    {
        "TaskId": "AAAAA-BBBBB",
        "DataId": "videoId****"
    },
    "RequestId": "ABCD1234-1234-1234-1234-123****"
}

Consultar o resultado de uma tarefa de moderação de transmissão ao vivo

Descrição da API

  • Operação de API: VideoModerationResult.

  • Faturamento: Esta operação não é cobrada.

  • Tempo limite de consulta: Defina o intervalo de consulta para 30 segundos. Isso significa que você pode consultar o resultado 30 segundos após enviar a tarefa de moderação assíncrona. O período máximo de consulta é de 24 horas. Após 24 horas, o resultado é excluído automaticamente.

  • Retorno de resultados: Se a transmissão ao vivo estiver em andamento, os últimos 10 resultados de moderação são retornados para cada consulta. Se a transmissão ao vivo tiver terminado, todos os resultados de moderação são retornados.

Limites de QPS

O limite de QPS para esta operação é de 100 por usuário. Se o limite for excedido, a chamada de API sofrerá throttling, o que pode afetar seus negócios. Utilize a operação de maneira adequada.

Depuração

Antes da integração, utilize o Alibaba Cloud OpenAPI para depurar a API VideoModerationResult online. Assim, você visualiza códigos de exemplo, informações de dependência do SDK e obtém uma visão geral dos métodos e parâmetros da API.

Parâmetros da solicitação

Nome

Tipo

Obrigatório

Exemplo

Descrição

Service

String

Sim

liveStreamDetection_global

O tipo de serviço de moderação. O valor deve ser igual ao tipo de serviço especificado ao enviar a tarefa de moderação.

ServiceParameters

JSONString

Sim

Os parâmetros necessários para o serviço de moderação. Este parâmetro é uma string JSON. Para mais informações sobre os parâmetros, consulte a Tabela 1. ServiceParameters.

Tabela 1. ServiceParameters

Nome

Tipo

Obrigatório

Exemplo

Descrição

taskId

string

Sim

abcd****

O taskId da tarefa de moderação a ser consultada. Especifique apenas um taskId por vez.

Nota

Obtenha o taskId de uma tarefa de moderação nos dados de resposta após o envio da tarefa.

Parâmetros de resposta

Nome

Tipo

Exemplo

Descrição

RequestId

String

ABCD1234-1234-1234-1234-123****

O ID da solicitação. Trata-se de um identificador exclusivo gerado pela Alibaba Cloud para a solicitação, útil para solução de problemas.

Data

Object

O resultado da moderação de conteúdo da transmissão ao vivo. Para mais informações, consulte a Tabela 2. Data.

Code

String

200

O código de status. Para mais informações, consulte a Descrição de códigos.

Message

String

OK

A mensagem de resposta da solicitação.

Tabela 2. Data

Nome

Tipo

Exemplo

Descrição

DataId

String

videoId****

O ID de dados do objeto.

Nota

Se o parâmetro dataId foi especificado na solicitação de moderação, o DataId correspondente é retornado.

LiveId

String

liveId****

O ID da transmissão ao vivo.

Nota

Se o parâmetro liveId foi especificado na solicitação de moderação, o LiveId correspondente é retornado.

TaskId

String

AAAAA-BBBBB

O ID da tarefa de moderação.

RiskLevel

String

high

O nível de risco da transmissão ao vivo. O valor é determinado com base nos resultados de moderação tanto dos quadros de vídeo quanto do áudio. Valores válidos:

  • high: alto risco

  • medium: risco médio

  • low: baixo risco

  • none: nenhum risco detectado

Nota

Recomendamos tratar conteúdos de alto risco diretamente, revisar manualmente conteúdos de risco médio e tratar conteúdos de baixo risco apenas quando alta recuperação for necessária. Nos demais casos, trate conteúdos de baixo risco da mesma forma que conteúdos sem riscos detectados. Configure as pontuações de risco para quadros de vídeo no console AI Guardrails.

FrameResult

JSONObject

O resultado da moderação dos quadros de vídeo. Se a chamada for bem-sucedida (code=200), uma estrutura é retornada. Para mais informações sobre a estrutura, consulte a Tabela 3. FrameResult.

Nota

Para moderação de fluxo de vídeo, o código de status 280 indica que a moderação está em andamento, e 200 indica que a moderação foi concluída. Se a moderação estiver em andamento, o resultado contém as detecções desde o início da moderação até o momento atual.

AudioResult

JSONObject

O resultado da moderação do áudio. Uma estrutura é retornada. Para mais informações sobre a estrutura, consulte a Tabela 8. audioResult.

Tabela 3. FrameResult

Nome

Tipo

Exemplo

Descrição

FrameNum

Integer

200

O número de snapshots retornados para os quadros de vídeo.

FrameSummarys

JSONArray

Um resumo dos rótulos para os quadros de vídeo. Para mais informações sobre a estrutura, consulte a Tabela 4. FrameSummarys.

RiskLevel

String

high

O nível de risco dos quadros de vídeo. O valor é calculado com base em todos os snapshots da transmissão ao vivo. Valores válidos:

  • high: alto risco

  • medium: risco médio

  • low: baixo risco

  • none: nenhum risco detectado

Frames

JSONArray

Informações sobre os quadros da transmissão ao vivo que acionaram um rótulo. Para mais informações sobre a estrutura, consulte a Tabela 5. Frames.

Tabela 4. FrameSummarys

Nome

Tipo

Exemplo

Descrição

Label

String

violent_armedForces

O rótulo do quadro de vídeo.

Description

String

Suspeita de conter fogos de artifício

A descrição do campo Label.

Importante

Este campo fornece uma explicação do campo Label e pode sofrer alterações. Recomendamos tratar os resultados com base no campo Label, e não neste campo.

LabelSum

Integer

8

O número de vezes que o rótulo aparece.

Tabela 5. Frames

Nome

Tipo

Exemplo

Descrição

TempUrl

String

http://www.aliyundoc.com/test.jpg

A URL temporária do quadro da transmissão ao vivo. A URL é válida por 30 minutos. Salve o quadro prontamente.

Nota

Se o armazenamento de evidências de vídeo estiver ativado, a URL do OSS do quadro de vídeo armazenado é retornada.

Offset

Float

50,5

O carimbo de data/hora do quadro da transmissão ao vivo em relação ao início da transmissão. Unidade: segundos.

Timestamp

Integer

1684559739000

O carimbo de data/hora absoluto de quando o quadro foi processado. Unidade: milissegundos.

RiskLevel

String

high

O nível de risco do quadro da transmissão ao vivo, retornado com base nas pontuações de risco alto e baixo configuradas. Valores válidos:

  • high: alto risco

  • medium: risco médio

  • low: baixo risco

  • none: nenhum risco detectado

Nota

Recomendamos tratar conteúdos de alto risco diretamente, revisar manualmente conteúdos de risco médio e tratar conteúdos de baixo risco apenas quando alta recuperação for necessária. Nos demais casos, trate conteúdos de baixo risco da mesma forma que conteúdos sem riscos detectados. Configure as pontuações de risco para quadros de vídeo na configuração de regras do console AI Guardrails.

Results

JSONArray

Os resultados da moderação do quadro da transmissão ao vivo, incluindo rótulos de risco e pontuações de confiança. Para mais informações, consulte a Tabela 6. Results.

Tabela 6. Results

Nome

Tipo

Exemplo

Descrição

Service

String

baselineCheck_global

O serviço de moderação de quadros chamado.

Result

Array

Os resultados da moderação do quadro da transmissão ao vivo, incluindo rótulos de risco e pontuações de confiança. Para mais informações, consulte a Tabela 7. Result.

Tabela 7. Result

Nome

Tipo

Exemplo

Descrição

Label

String

violent_explosion

O rótulo de risco retornado pela moderação do quadro da transmissão ao vivo. O rótulo identifica o tipo específico de risco detectado no quadro, como conteúdo político, adulto, violento ou violações de publicidade. Um quadro pode ter vários rótulos, cada um com uma pontuação de confiança correspondente. Os rótulos variam conforme o serviço de moderação configurado na solicitação (parâmetro service):

  • Serviços gerais de segurança de conteúdo (baselineCheck, baselineCheck_pro, baselineCheck_cb, baselineCheck_global): retornam rótulos para categorias comuns de risco, como conteúdo político, pornográfico, violento e publicitário.

  • Serviços de detecção de transmissão ao vivo e riscos gerais (liveStreamCheck, riskDetection, riskDetection_cb): retornam rótulos para riscos específicos de transmissões ao vivo.

  • Serviços de detecção de conteúdo gerado por IA (aigcCheck, aigcCheck_cb, aigcDetector_global): retornam rótulos que identificam conteúdo gerado por IA.

  • Serviços de modelo de linguagem visual (baselineCheckByVL e outros serviços de moderação de imagem baseados em modelos grandes): retornam rótulos de risco detalhados.

  • Serviços de moderação direcionada (profilePhotoCheck, postImageCheck, advertisingCheck, tonalityImprove): retornam rótulos específicos para o tipo de conteúdo sendo moderado.

Para a lista completa de rótulos suportados por cada serviço de moderação, consulte a API Enhanced 2.0 de Moderação de Arquivos de Vídeo.

Confidence

Float

81,22

A pontuação de confiança, variando de 0 a 100. O valor tem precisão de duas casas decimais.

Description

String

Suspeita de conter fogos de artifício

A descrição do campo Label.

Importante

Este campo fornece uma explicação do campo Label e pode sofrer alterações. Recomendamos tratar os resultados com base no campo Label, e não neste campo.

Tabela 8. audioResult

Nome

Tipo

Exemplo

Descrição

AudioSummarys

JSONArray

Um resumo dos rótulos de áudio. Para mais informações sobre a estrutura, consulte a Tabela 9. AudioSummarys.

RiskLevel

String

high

O nível de risco do áudio. O valor é calculado com base em todos os segmentos de áudio. Valores válidos:

  • high: alto risco

  • medium: risco médio

  • low: baixo risco

  • none: nenhum risco detectado

SliceDetails

JSONArray

Os detalhes do texto convertido a partir do áudio. Cada elemento corresponde a uma frase. O valor contém um ou mais elementos. Para mais informações sobre a estrutura, consulte a Tabela 10. SliceDetails.

Nota

Os campos de resultado de risco retornados em cada elemento SliceDetails dependem da versão do serviço de moderação de áudio configurada na regra de moderação da transmissão ao vivo:

  • Versão modelo grande (por exemplo, liveStreamDetectionByVL, liveStreamDetectionByVL_cb ou liveStreamDetectionByVL_global): Os resultados de risco são retornados no campo result.

  • Versão modelo pequeno (por exemplo, liveStreamDetection, liveStreamDetection_cb ou liveStreamDetection_global): Os resultados de risco são retornados nos campos Labels, RiskLevel, RiskWords e RiskTips.

Tabela 9. AudioSummarys

Nome

Tipo

Exemplo

Descrição

Label

String

profanity

O rótulo do áudio do vídeo.

LabelSum

Integer

8

O número de vezes que o rótulo aparece.

Tabela 10. SliceDetails

Nome

Tipo

Exemplo

Descrição

StartTime

Integer

0

O horário de início da frase. Unidade: segundos.

EndTime

Integer

4065

O horário de término da frase. Unidade: segundos.

StartTimestamp

Integer

1678854649720

O carimbo de data/hora de início do segmento. Unidade: milissegundos.

EndTimestamp

Integer

1678854649720

O carimbo de data/hora de término do segmento. Unidade: milissegundos.

Text

String

disgusting

O conteúdo de texto convertido a partir do áudio.

Url

String

https://aliyundoc.com/test.wav

Se o conteúdo moderado for um fluxo de áudio, este parâmetro indica a URL temporária do fluxo de áudio correspondente ao texto. A URL é válida por 30 minutos. Salve o fluxo de áudio prontamente.

RiskLevel

String

high

O nível de risco do segmento de áudio. Valores válidos:

  • high: alto risco

  • medium: risco médio

  • low: baixo risco

  • none: nenhum risco detectado

Labels

String

political_content,xxxx

Os detalhes dos rótulos. Vários rótulos são separados por vírgulas. Quando a versão modelo pequeno do serviço de moderação de áudio é selecionada, os resultados de risco são retornados nos campos Labels, RiskWords, RiskTips e Extend. Quando a versão modelo grande é selecionada, os resultados de risco são retornados no campo Result. Valores válidos:

  • ad: Conteúdo relacionado a anúncios

  • violence: Conteúdo violento ou terrorista

  • political_content: Conteúdo político

  • specified_speaking: Conteúdo falado específico

  • specified_lyrics: Letras de músicas específicas

  • sexual_content: Conteúdo sexual

  • sexual_sounds: Sons sexuais

  • contraband: Conteúdo de contrabando

  • profanity: Conteúdo abusivo

  • religion: Conteúdo religioso

  • cyberbullying: Cyberbullying

  • negative_content: Conteúdo negativo

  • nontalk: Áudio silencioso

  • C_customized: Correspondência em biblioteca personalizada

RiskWords

String

AAA,BBB,CCC

As palavras de risco acionadas. Várias palavras são separadas por vírgulas.

RiskTips

String

porn_vulgar_words,porn_description

Os sub-rótulos. Vários rótulos são separados por vírgulas.

Extend

String

{"riskTips":"porn_vulgar_words","riskWords":"pornographic_service"}

Um campo reservado.

Result

JSONArray

Os resultados detalhados de detecção de risco para este segmento de áudio. Este campo é retornado apenas quando o serviço de moderação de áudio está configurado para usar a versão modelo grande. Quando a versão modelo pequeno é usada, este campo não é retornado e os resultados de risco são devolvidos nos campos Labels, RiskWords, RiskTips e outros. A estrutura do campo é consistente com o campo Result da API de modelo grande de moderação de áudio. As descrições dos subcampos são as seguintes.

Tabela 10-1. Result

Parâmetro

Tipo

Exemplo

Descrição

Label

String

political_entity

Os rótulos retornados após a detecção de conteúdo de áudio. Vários rótulos e pontuações podem ser detectados. Contém rótulos de política de texto e rótulos específicos de áudio:

  • Para rótulos de política de texto, consulte a seção Rótulos de Risco

  • Os rótulos específicos de áudio incluem:

    • specified_nontalk: Áudio silencioso

    • specified_speaking: Voz especificada

    • sexual_sounds: Sons de gemidos

Nota

Voz especificada e sons de gemidos não são detectados por padrão. Entre em contato com seu gerente de contas para ativar a detecção.

Description

String

Suspeita de conteúdo pornográfico

Uma descrição do campo Label.

Importante

Este campo fornece uma explicação do campo Label e pode mudar. Ao processar resultados, utilize o campo Label em vez deste campo.

Confidence

Float

81,22

Pontuação de confiança, variando de 0 a 100, arredondada para 2 casas decimais. Alguns rótulos podem não ter pontuação de confiança.

RiskLevel

String

high

O nível de risco do rótulo atual. Valores válidos:

  • high: Alto risco

  • medium: Risco médio

  • low: Baixo risco

  • none: Nenhum risco detectado

Riskwords

String

AA,BB,CC

Palavras sensíveis detectadas, separadas por vírgulas. Alguns rótulos podem não retornar palavras sensíveis.

CustomizedHit

JSONArray

[{"LibName":"...","Keywords":"..."}]

Quando uma biblioteca personalizada é correspondida, o Label é personalizado, e o nome da biblioteca personalizada e as palavras personalizadas são retornados. Para detalhes, consulte a Tabela 10-2 CustomizedHit.

RiskPositions

JSONArray

Informações de posição das palavras sensíveis detectadas. Para mais informações, consulte a Tabela 10-3 RiskPositions.

Tabela 10-2. CustomizedHit

Parâmetro

Tipo

Exemplo

Descrição

LibName

String

CustomLib1

Nome da biblioteca personalizada

Keywords

String

keyword1,keyword2

Palavras personalizadas, separadas por vírgulas.

Tabela 10-3. RiskPositions

Parâmetro

Tipo

Exemplo

Descrição

RiskWord

String

AA

Palavras sensíveis detectadas.

StartPos

Integer

10

Posição inicial da palavra sensível.

EndPos

Integer

12

Posição final da palavra sensível.

Exemplos

Solicitação de exemplo

{
    "Service": "liveStreamDetection_global",
    "ServiceParameters": {
        "taskId": "abcd****"
    }
}

Resposta de sucesso de exemplo

  • Moderando apenas vídeo de transmissão ao vivo

{
    "Code": 200,
    "RequestId": "25106421-XXXX-XXXX-XXXX-15DA5AAAC546",
    "Message": "success finished",
    "Data": {
        "DataId": "dc16c28f-xxxx-xxxx-xxxx-51efe0131080",
        "LiveId": "live0307-0728-****",
        "RiskLevel": "high",
        "FrameResult": {
            "FrameNum": 2,
            "FrameSummarys": [
                {
                    "Label": "violent_explosion",
                    "Description": "Suspected to contain fireworks",
                    "LabelSum": 8
                },
                {
                    "Label": "sexual_cleavage",
                    "Description": "Suspected to contain nudity or sexual content",
                    "LabelSum": 8
                }
            ],
            "RiskLevel": "medium",
            "Frames": [
                {
                    "Offset": 1,
                    "RiskLevel": "none",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Label": "nonLabel",
                                    "Description": "No risk detected"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test1.jpg",
                    "Timestamp": 1704769999000
                },
                {
                    "Offset": 2,
                    "RiskLevel": "medium",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Confidence": 78.88,
                                    "Label": "sexual_cleavage",
                                    "Description": "Suspected to contain nudity or sexual content"
                                },
                              	{
                                    "Confidence": 74.18,
                                    "Label": "violent_explosion",
                                    "Description": "Suspected to contain fireworks"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test2.jpg",
                    "Timestamp": 1704769989000
                }
            ]
        }
    }
}
  • Moderando vídeo e áudio de transmissão ao vivo

{
    "Code": 200,
    "RequestId": "25106421-XXXX-XXXX-XXXX-15DA5AAAC546",
    "Message": "success finished",
    "Data": {
        "DataId": "dc16c28f-xxxx-xxxx-xxxx-51efe0131080",
        "LiveId": "live0307-0728-****",
        "RiskLevel": "high",
        "AudioResult": {
            "AudioSummarys": [
                {
                    "Label": "sexual_sounds",
                    "LabelSum": 3
                }
            ],
            "RiskLevel": "high",
            "SliceDetails": [
                {
                    "EndTime": 60,
                    "EndTimestamp": 1698912813192,
                    "Labels": "",
                    "RiskLevel": "none",
                    "StartTime": 30,
                    "StartTimestamp": 1698912783192,
                    "Text": "AI Guardrails",
                    "Url": "http://abc.oss-ap-southeast-1.aliyuncs.com/test.wav"
                },
                {
                    "EndTime": 30,
                    "EndTimestamp": 1698912813192,
                    "Extend": "{\"customizedWords\":\"service\",\"customizedLibs\":\"test\"}",
                    "Labels": "C_customized",
                    "RiskLevel": "high",
                    "StartTime": 0,
                    "StartTimestamp": 1698912783192,
                    "Text": "Welcome to Alibaba Cloud AI Guardrails service",
                    "Url": "http://abc.oss-ap-southeast-1.aliyuncs.com/test.wav"
                }
            ]
        },
        "FrameResult": {
            "FrameNum": 2,
            "FrameSummarys": [
                {
                    "Label": "violent_explosion",
                    "Description": "Suspected to contain fireworks",
                    "LabelSum": 8
                },
                {
                    "Label": "sexual_cleavage",
                    "Description": "Suspected to contain nudity or sexual content",
                    "LabelSum": 8
                }
            ],
            "RiskLevel": "medium",
            "Frames": [
                {
                    "Offset": 1,
                    "RiskLevel": "none",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Label": "nonLabel",
                                    "Description": "No risk detected"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test1.jpg",
                    "Timestamp": 1704769999000
                },
                {
                    "Offset": 2,
                    "RiskLevel": "medium",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Confidence": 74.18,
                                    "Label": "violent_explosion",
                                    "Description": "Suspected to contain fireworks"
                                },
                                {
                                    "Confidence": 78.88,
                                    "Label": "sexual_cleavage",
                                    "Description": "Suspected to contain nudity or sexual content"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test2.jpg",
                    "Timestamp": 1704769989000
                }
            ]
        }
    }
}

Cancelar uma tarefa de moderação de transmissão ao vivo

Descrição da API

Chame esta operação para cancelar uma tarefa de moderação de transmissão ao vivo.

  • Operação de API: VideoModerationCancel.

  • Faturamento: Esta operação não é cobrada.

Depuração

Antes da integração, utilize o Alibaba Cloud OpenAPI para depurar a API VideoModerationCancel online e visualizar códigos de chamada de exemplo e informações de dependência do SDK para obter uma visão geral do uso e dos parâmetros da API.

Parâmetros da solicitação

Nome

Tipo

Obrigatório

Exemplo

Descrição

Service

String

Sim

liveStreamDetection_global

O tipo de serviço de moderação. O valor deve ser igual ao tipo de serviço especificado ao enviar a tarefa de moderação.

ServiceParameters

JSONString

Sim

Os parâmetros necessários para o serviço. Este parâmetro é uma string JSON. Para mais informações sobre os parâmetros, consulte a Tabela 11. ServiceParameters.

Tabela 11. ServiceParameters

Nome

Tipo

Obrigatório

Exemplo

Descrição

taskId

string

Sim

abcd****

O taskId da tarefa de moderação a ser cancelada. Especifique apenas um taskId por vez.

Nota: Obtenha o taskId de uma tarefa de moderação nos dados de resposta após o envio da tarefa.

Parâmetros de resposta

Nome

Tipo

Exemplo

Descrição

Code

Integer

200

O código de status. Para mais informações, consulte a Descrição de códigos.

Message

String

OK

A mensagem de resposta da solicitação.

RequestId

String

AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****

O ID da solicitação.

Exemplo

Solicitação de exemplo

{
    "Service": "liveStreamDetection",
    "ServiceParameters": {
        "taskId": "abcd****"
    }
}

Resposta de exemplo

{
    "Msg": "OK",
    "Code": 200,
    "RequestId": "70ED13B0-BC22-576D-9CCF-1CC12FEAC477"
}

Descrição de códigos

Este tópico descreve os códigos de resposta para a API de moderação de transmissão de vídeo ao vivo 2.0. A cobrança ocorre apenas para solicitações que retornam código de resposta 200 ou 280. Solicitações que retornam outros códigos de resposta não são cobradas.

Código

Descrição

200

A solicitação foi bem-sucedida ou a moderação foi concluída.

280

Moderação em andamento.

400

Os parâmetros da solicitação estão vazios.

401

Os parâmetros da solicitação são inválidos.

402

O comprimento de um parâmetro da solicitação não atende aos requisitos. Verifique o parâmetro e tente novamente.

403

O número de consultas por segundo (QPS) excede o limite. Verifique o número de solicitações simultâneas e tente novamente.

404

Ocorreu um erro ao baixar o vídeo. Verifique o vídeo e tente novamente.

405

O download do vídeo expirou. O vídeo pode estar inacessível. Verifique o vídeo e tente novamente.

406

O vídeo é muito grande. Verifique o tamanho do vídeo e tente novamente.

407

O formato do vídeo não é suportado. Verifique o formato e tente novamente.

408

Você não tem autorização para chamar esta operação. Sua conta pode não ter o serviço ativado, pode estar com pagamento pendente ou não ter as permissões necessárias concedidas.

409

O TaskId especificado não existe. O resultado pode ter expirado porque foi retido por mais de 24 horas.

480

O número de fluxos de moderação simultâneos excede o limite. Verifique o número de solicitações simultâneas e tente novamente.

500

Ocorreu um erro do sistema.