Todos os produtos
Search
Central de documentação

Intelligent Media Services:SubmitMediaProducingJob

Última atualização: Jun 29, 2026

A API SubmitMediaProducingJob envia um job de produção de mídia. Este job fornece processamento automatizado para tarefas de pós-produção, como edição e composição de ativos de vídeo e áudio.

Descrição da operação

  • Cobrança: a edição de vídeo é cobrada com base na duração do vídeo de saída. Para obter mais informações, consulte edição de vídeo(~~2840899~~). Jobs com falha não incorrem em cobranças.

  • Capacidades de edição flexíveis: use esta operação para organizar e projetar ativos. Ela suporta edição de vídeo complexa por meio de configurações flexíveis de linha do tempo(~~198823~~).

  • Regras de referência de ativos: os ativos referenciados na linha do tempo podem ser ativos de mídia da sua biblioteca de ativos ou objetos do OSS. URLs externas e URLs de CDN não são suportadas. Se um ativo for um objeto do OSS, MediaUrl deve ser uma URL do OSS, por exemplo: https://seu-bucket.oss-nome-da-regiao.aliyuncs.com/seu-objeto.ext.

  • Execução assíncrona de jobs: esta operação cria uma tarefa assíncrona(~~3027141~~). Após enviar um job, a operação retorna um ID de tarefa e coloca o job na fila para processamento em segundo plano. O job ainda não está concluído neste estágio. O sistema entrega o resultado final por meio de uma notificação de callback. Você também pode consultar o status do job consultando o job de edição e composição(~~441149~~).

  • Consulta de status do job:

    1. Chame a operação Consultar um job de edição e composição(~~441149~~) e passe o JobId para consultar o status e o resultado do job.

    2. Ao enviar um job de edição e composição, você pode incluir uma URL de callback no parâmetro UserData da sua solicitação. Quando o job for concluído ou falhar, o sistema enviará uma notificação para esta URL de callback. Você pode usar os dados do callback para recuperar o status do job.

  • Registro e análise de ativos de mídia: após a conclusão da composição de vídeo, o sistema registra automaticamente um novo ativo de mídia, que inicialmente está em estado de análise. Após a conclusão da análise, você pode usar o MediaId para recuperar a duração e a resolução do vídeo de saída.

Limitações

  • O limite de limitação de taxa para esta operação é de 30 QPS. Os jobs enviados são colocados em fila e processados de forma assíncrona.

    Nota

    Se você exceder esse limite, poderá encontrar um erro Throttling.User. Para obter mais informações, consulte Erro Throttling.User ao enviar jobs de edição(~~453484~~).

  • Ao enviar um grande número de jobs (por exemplo, 1.000 ou 10.000), o sistema escala horizontalmente de forma automática, mas você pode experimentar atrasos na fila.

  • O número máximo de faixas é 100 para cada tipo: vídeo, imagem e legenda.

  • Embora não haja limite para o número de ativos, o tamanho total deles não deve exceder 1 TB.

  • A região do bucket do OSS de entrada ou saída deve corresponder à região do IMS.

  • Quando a saída é um vídeo, aplicam-se os seguintes limites de resolução:

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

A tabela abaixo descreve a autorização necessária para chamar esta API. Você pode defini-la em uma política do Resource Access Management (RAM). As colunas da tabela estão detalhadas abaixo:

  • Ação: As ações que podem ser usadas no elemento Action das instruções de política de permissão do RAM para conceder permissões para executar a operação.

  • API: A API que você pode chamar para executar a ação.

  • Nível de acesso: O nível de acesso predefinido concedido para cada API. Valores válidos: create, list, get, update e delete.

  • Tipo de recurso: O tipo de recurso que suporta autorização para executar a ação. Indica se a ação suporta permissão em nível de recurso. O recurso especificado deve ser compatível com a ação. Caso contrário, a política será ineficaz.

    • Para APIs com permissões em nível de recurso, os tipos de recursos obrigatórios são marcados com um asterisco (*). Especifique o Nome de Recurso Alibaba Cloud (ARN) correspondente no elemento Resource da política.

    • Para APIs sem permissões em nível de recurso, é exibido como Todos os Recursos. Use um asterisco (*) no elemento Resource da política.

  • Chave de condição: As chaves de condição definidas pelo serviço. A chave permite controle granular, aplicando-se somente a ações ou a ações associadas a recursos específicos. Além das chaves de condição específicas do serviço, o Alibaba Cloud fornece um conjunto de chaves de condição comuns aplicáveis a todos os serviços compatíveis com RAM.

  • Ação dependente: As ações dependentes necessárias para executar a ação. Para concluir a ação, o usuário RAM ou a função RAM deve ter permissões para executar todas as ações dependentes.

Ação

Nível de acesso

Tipo de recurso

Chave de condição

Ação dependente

ice:SubmitMediaProducingJob

*All Resource

*

Nenhuma Nenhuma

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

ProjectId

string

Não

O ID do projeto de edição. Chame a operação CreateEditingProject(~~441137~~) para criar um projeto de edição e obter o ProjectId para enviar um job de produção de mídia.

Importante Você deve especificar um dos parâmetros ProjectId, Timeline ou TemplateId. Os outros dois parâmetros devem ser deixados vazios.
CreateEditingProject

xxxxxfb2101cb318xxxxx

Timeline

string

Não

A linha do tempo para o job de edição na nuvem. Para organizar clipes e projetar efeitos, construa manualmente o parâmetro Timeline.

  • Uma linha do tempo consiste principalmente em três tipos de objetos: faixas, clipes e efeitos. Para obter mais informações, consulte Configuração da linha do tempo(~~198823~~).

  • Para obter mais exemplos de configurações de linha do tempo, consulte Práticas recomendadas(~~2766669~~).

Importante

Você deve especificar um dos parâmetros ProjectId, Timeline ou TemplateId. Os outros dois parâmetros devem ser deixados vazios.

[Configuração da linha do tempo](~~198823~~) [Práticas recomendadas](~~2766669~~)

{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]}

TemplateId

string

Não

O ID de um modelo para construir rapidamente uma linha do tempo. Você pode usar modelos básicos e avançados para edição de vídeo.

  • Ao enviar um job de produção de mídia usando um ID de modelo, você deve fornecer o parâmetro ClipsParam para ajustar ou substituir clipes no modelo.

  • Chame a operação GetTemplate(~~441164~~) para obter informações do modelo.

Importante

Você deve especificar um dos parâmetros ProjectId, Timeline ou TemplateId. Os outros dois parâmetros devem ser deixados vazios.

[GetTemplate](~~441164~~)

****96e8864746a0b6f3****

ClipsParam

string

Não

Os parâmetros de clipe que correspondem ao modelo, no formato JSON. Se TemplateId for especificado, este parâmetro será obrigatório. Para obter detalhes sobre o formato, consulte Criar e usar modelos básicos(~~445399~~) e Criar e usar modelos avançados(~~445389~~). Criar e usar modelos básicos Criar e usar modelos avançados

See the template user guide.

ProjectMetadata

string

Não

Os metadados do projeto de edição, no formato JSON. Para obter detalhes sobre a estrutura, consulte ProjectMetadata(~~357745#title-yvp-81k-wff~~). ProjectMetadata

{"Description":"Video editing description","Title":"Editing title test"}

OutputMediaTarget

string

Não

O tipo de destino para a mídia de saída. Valores válidos:

  • oss-object: um objeto no seu bucket do Alibaba Cloud OSS.

  • vod-media: um ativo de mídia no Alibaba Cloud VOD.

  • S3: um destino que suporta o protocolo S3.

oss-object

OutputMediaConfig

string

Sim

A configuração para o destino da mídia de saída, no formato JSON. Você pode definir a URL para a mídia de saída no OSS ou o local de armazenamento em um bucket do VOD.

  • Ao enviar a saída para o OSS, o parâmetro MediaURL é obrigatório.

  • Ao enviar a saída para o VOD, os parâmetros StorageLocation e FileName são obrigatórios.

Para obter mais informações, consulte Exemplos do parâmetro OutputMediaConfig(~~357745#title-4j6-ve7-g31~~). Exemplos do parâmetro OutputMediaConfig

{"MediaURL":"https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4"}

UserData

string

Não

Dados personalizados do usuário no formato JSON. O valor pode ter até 512 bytes de comprimento. Este parâmetro suporta a configuração de callback de conclusão de job(~~451631~~). Os campos incluem:

{"NotifyAddress":"https://xx.com/xx","RegisterMediaNotifyAddress":"https://xxx.com/xx"}

ClientToken

string

Não

Um token gerado pelo cliente que garante a idempotência da solicitação. Este token deve ser um valor exclusivo de até 64 caracteres ASCII.

****12e8864746a0a398****

Source

string

Não

A origem da solicitação do job de produção de mídia. Valores válidos:

  • OpenAPI: uma solicitação iniciada por meio de uma chamada de API.

  • AliyunConsole: uma solicitação originada do console do Alibaba Cloud.

  • WebSDK: uma solicitação enviada de uma página front-end que integra o WebSDK.

OPENAPI

EditingProduceConfig

string

Não

Os parâmetros para o job de produção de mídia. Para obter detalhes de configuração, consulte Detalhes do parâmetro EditingProduceConfig(~~357745#section-8a4-pb2-hkv~~).

Nota

Se uma capa não estiver configurada em EditingProduceConfig, o primeiro quadro do vídeo será usado como capa padrão.

  • AutoRegisterInputVodMedia: especifica se os ativos de mídia do VOD na sua linha do tempo devem ser registrados automaticamente no IMS. Valor padrão: true.

  • OutputWebmTransparentChannel: especifica se deve ser gerado um vídeo com um canal transparente. Valor padrão: false.

  • CoverConfig: os parâmetros para uma capa personalizada.

  • ... Detalhes do parâmetro EditingProduceConfig

{ "AutoRegisterInputVodMedia": "true", "OutputWebmTransparentChannel": "true" }

MediaMetadata

string

Não

Os metadados do vídeo de saída, no formato JSON. Para obter detalhes sobre a estrutura, consulte MediaMetadata(~~357745#97ff26d0e3c28~~). MediaMetadata

{ "Title":"test-title", "Tags":"test-tags1,tags2" }

Exemplos do parâmetro OutputMediaConfig

Exemplo: Saída para o OSS

{
  "MediaURL":"https://my-test-bucket.oss-cn-shanghai.aliyuncs.com/test/xxxxxtest001xxxxx.mp4",
  "Bitrate": 2000,  
  "Width": 800,  
  "Height": 680
}

Ao enviar a saída para o OSS, o parâmetro MediaURL é obrigatório. O parâmetro OutputMediaTarget tem como padrão oss-object, que envia a saída para o OSS. Outros parâmetros são opcionais. O parâmetro bitrate define a taxa de bits do arquivo de saída. Uma taxa de bits mais alta geralmente resulta em melhor qualidade, com um valor máximo de 5000 Kbps. Os parâmetros width e height definem a resolução do arquivo de saída.

O formato da URL do OSS é: https://bucketname.oss-region-name.aliyuncs.com/xxx/yyy.ext

bucketname é o nome do seu bucket do OSS.

oss-region-name.aliyuncs.com é o endpoint público para arquivos do OSS. Por exemplo, os endpoints públicos para as regiões China (Xangai), China (Pequim) e China (Hangzhou) são:

oss-cn-shanghai.aliyuncs.com
oss-cn-hangzhou.aliyuncs.com 
oss-cn-beijing.aliyuncs.com

Exemplo: Saída para o ApsaraVideo for VOD

{ 
  "StorageLocation": "outin-*xxxxxx7d2a3811eb83da00163exxxxxx.oss-cn-shanghai.aliyuncs.com",  
  "FileName": "output.mp4",  
  "Bitrate": 2000,  
  "Width": 800,  
  "Height": 680
}

Ao enviar a saída para o ApsaraVideo for VOD, os parâmetros storageLocation e FileName são obrigatórios. Defina o parâmetro OutputMediaTarget como vod-media para enviar a saída para um bucket de armazenamento do ApsaraVideo for VOD. Para encontrar locais de armazenamento disponíveis, visualize o local de armazenamento de um ativo de mídia carregado no console do ApsaraVideo for VOD.

Parâmetros em OutputMediaConfig

ParâmetroTipoDescrição
MediaURLStringA URL do ativo de mídia de saída. Quando OutputMediaTarget está definido como oss-object, especifique a URL HTTP do objeto do OSS. Por exemplo: http://xxx-bucket-name.oss-cn-shanghai.aliyuncs.com/. O bucket do OSS e o serviço que faz a chamada devem estar na mesma região.
StorageLocationStringQuando OutputMediaTarget está definido como vod-media, especifique o local de armazenamento no ApsaraVideo for VOD para o ativo de mídia. O local de armazenamento é o caminho de armazenamento de arquivos no ApsaraVideo for VOD e não deve incluir o prefixo http://. Por exemplo: outin-xxxxxx.oss-cn-shanghai.aliyuncs.com.
FileNameStringQuando OutputMediaTarget está definido como vod-media, especifique o nome do arquivo para o arquivo de saída. O nome do arquivo deve incluir a extensão do arquivo, mas não o caminho.
WidthIntegerA largura do arquivo de saída. Este parâmetro é opcional. Se não for especificado, o sistema usa a largura máxima entre todos os materiais de origem.
HeightIntegerA altura do arquivo de saída. Este parâmetro é opcional. Se não for especificado, o sistema usa a altura máxima entre todos os materiais de origem.
BitrateIntegerA taxa de bits do arquivo de saída, em Kbps. Este parâmetro é opcional. Se não for especificado, o sistema usa a taxa de bits mais alta entre todos os materiais de origem, com um limite de 5000 Kbps. Para reter a taxa de bits original mais alta, mesmo que exceda esse limite, defina EditingProduceConfig.KeepOriginMaxBitrate como true. Para obter mais informações, consulte EditingProduceConfig.
VodTemplateGroupIdStringAo enviar a saída para o ApsaraVideo for VOD, você pode especificar um grupo de modelos de transcodificação do VOD. Se a transcodificação não for necessária, defina este parâmetro como VOD_NO_TRANSCODE.

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

Esquema da resposta.

RequestId

string

O ID da solicitação.

****36-3C1E-4417-BDB2-1E034F****

ProjectId

string

O ID do projeto.

****b4549d46c88681030f6e****

JobId

string

O ID do job.

****d80e4e4044975745c14b****

MediaId

string

O ID da mídia.

****c469e944b5a856828dc2****

VodMediaId

string

O ID da mídia do VOD. Retornado se o destino de saída for o VOD.

****d8s4h75ci975745c14b****

Exemplos

Resposta de sucesso

JSON formato

{
  "RequestId": "****36-3C1E-4417-BDB2-1E034F****",
  "ProjectId": "****b4549d46c88681030f6e****",
  "JobId": "****d80e4e4044975745c14b****",
  "MediaId": "****c469e944b5a856828dc2****",
  "VodMediaId": "****d8s4h75ci975745c14b****"
}

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

400 InvalidParameter The specified parameter \ is not valid.
404 ProjectNotFound The specified project not found

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.