A edição ao vivo cria um arquivo de saída combinando um ou mais segmentos de transmissões ao vivo. Após enviar um trabalho de edição ao vivo, ele é processado de forma assíncrona. Você pode então chamar a operação GetLiveEditingJob com o JobId retornado para consultar o status do trabalho, ou chamar a operação GetMediaInfo com o MediaId para obter detalhes do ativo de mídia gerado.
Descrição da operação
-
Esta é uma API assíncrona. Ao enviar um trabalho, o sistema retorna um JobId antes da conclusão do trabalho. O trabalho é então enfileirado para processamento assíncrono. Você receberá uma notificação de callback quando o trabalho for concluído. Alternativamente, você pode consultar o status do trabalho chamando a operação GetLiveEditingJob.
-
Você pode editar transmissões ao vivo que são gravadas no OSS ou no VOD. Ao editar várias transmissões ao vivo juntas, todas as transmissões devem ser gravadas no mesmo serviço, todas no OSS ou todas no VOD.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
ice:SubmitLiveEditingJob |
*All Resource
|
Nenhuma | Nenhuma |
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| Clips |
string |
Sim |
Uma matriz JSON que especifica os clipes a serem editados. O trabalho cria o arquivo de saída concatenando esses clipes na ordem especificada. Cada clipe inclui um horário de início e de fim. Se os parâmetros de transmissão ao vivo não forem especificados para um clipe, o sistema usará as configurações globais de LiveStreamConfig. Os carimbos de data e hora de início e fim devem estar em UTC. Para mais detalhes, consulte a estrutura de dados Clip abaixo. |
[{\"StartTime\": \" 2021-06-21T08:01:00Z\", \"EndTime\": \" 2021-06-21T08:03:00Z\" , "AppName": "app", "DomainName": "domain.com", "StreamName": "stream"}, {\"StartTime\": \" 2021-06-21T08:05:00Z\", \"EndTime\": \" 2021-06-21T08:09:00Z\" }] |
| ProjectId |
string |
Não |
O ID do projeto de edição ao vivo. Se você especificar este parâmetro, o sistema usará as configurações de armazenamento do projeto. Se deixado em branco, o sistema usará as configurações de armazenamento fornecidas na solicitação. |
****fddd7748b58bf1d47e95**** |
| LiveStreamConfig |
string |
Não |
A configuração da transmissão ao vivo de origem, especificada como um objeto JSON. Inclui os seguintes parâmetros:
|
{ "AppName": "app", "DomainName": "domain.com", "StreamName": "stream" } |
| OutputMediaConfig |
string |
Não |
A configuração de destino para o arquivo de saída, especificada como um objeto JSON. Você pode especificar uma URL no OSS ou um local de armazenamento em um bucket do VOD.
|
{ "MediaURL": "https://ice-auto-test.oss-cn-shanghai.aliyuncs.com/testfile.mp4" }, or { "StorageLocation": "bucket.oss-cn-shanghai.aliyuncs.com", "FileName": "output.mp4" } |
| MediaProduceConfig |
string |
Não |
A configuração de produção para o arquivo de saída, especificada como um objeto JSON. O parâmetro Mode especifica o modo de edição. Os valores válidos são:
|
{ "Mode": "AccurateFast"} |
| UserData |
string |
Não |
Dados personalizados do usuário, fornecidos como um objeto JSON. O comprimento máximo é de 512 bytes. |
{"key": "value"} |
| OutputMediaTarget |
string |
Não |
O tipo de destino para o arquivo de saída. Valores válidos:
|
oss-object |
Estrutura de dados do clipe
| Parâmetro | Tipo | Exemplo | Descrição | Obrigatório |
| StartTime | String | 2021-06-21T08:01:00Z | O horário de início do clipe, no formato UTC. | Sim |
| EndTime | String | 2021-06-21T08:05:00Z | O horário de término do clipe, no formato UTC. | Sim |
| AppName | String | app | O nome da aplicação à qual a transmissão pertence. Se não for especificado, o sistema usará as configurações globais de LiveStreamConfig. | Não |
| DomainName | String | domain.com | O nome de domínio da transmissão. Se não for especificado, o sistema usará as configurações globais de LiveStreamConfig. | Não |
| StreamName | String | stream | O nome da transmissão ao vivo. Se não for especificado, o sistema usará as configurações globais de LiveStreamConfig. | Não |
| CoverTime | String | 2021-06-21T08:03:00Z | Especifica um carimbo de data e hora dentro do clipe a ser usado para gerar uma imagem de capa para o arquivo de saída. O horário deve estar no formato UTC. Se vários clipes tiverem CoverTime definido, o sistema usará apenas o primeiro. O CoverTime deve ser maior ou igual a StartTime e menor ou igual a EndTime. | Não |
| CoverUrl | String | https://test.oss-cn-shanghai.aliyuncs.com/cover.jpg | A URL personalizada para a captura de tela de saída. O bucket do OSS deve estar na mesma região do serviço. Apenas buckets do OSS autogerenciados são suportados; buckets gerenciados pelo VOD não são suportados. | Não |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
O objeto de resposta. |
||
| RequestId |
string |
O ID da solicitação. |
****36-3C1E-4417-BDB2-1E034F**** |
| ProjectId |
string |
O ID do projeto de edição ao vivo. |
****fddd7748b58bf1d47e95**** |
| JobId |
string |
O ID do trabalho de edição ao vivo. |
****d80e4e4044975745c14b**** |
| MediaId |
string |
O ID do ativo de mídia de saída. |
****c469e944b5a856828dc2**** |
| MediaURL |
string |
A URL do arquivo de saída. |
http://test-bucket.cn-shanghai.aliyuncs.com/test.mp4 |
| VodMediaId |
string |
O ID do ativo de mídia do VOD. Este parâmetro é retornado apenas se o destino de saída for o VOD. |
****d7578s4h75ci945c14b**** |
Exemplos
Resposta de sucesso
JSON formato
{
"RequestId": "****36-3C1E-4417-BDB2-1E034F****",
"ProjectId": "****fddd7748b58bf1d47e95****",
"JobId": "****d80e4e4044975745c14b****",
"MediaId": "****c469e944b5a856828dc2****",
"MediaURL": "http://test-bucket.cn-shanghai.aliyuncs.com/test.mp4",
"VodMediaId": "****d7578s4h75ci945c14b****"
}
Códigos de erro
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.