Utilizar a mudança de tempo e saídas em direto para criar a reprodução de vídeo a pedido

Logótipo dos Serviços de Multimédia v3


Aviso

Os Serviços de Multimédia do Azure serão descontinuados a 30 de junho de 2024. Para obter mais informações, veja o Guia de Extinção do AMS.

Nos Serviços de Multimédia do Azure, um objeto Live Output é como um gravador de vídeo digital que irá capturar e gravar a sua transmissão em fluxo em direto num recurso na sua conta dos Serviços de Multimédia. O conteúdo registado é mantido no contentor definido pelo Recurso ( o contentor está na conta de Armazenamento do Azure anexada à sua conta). O Live Output também lhe permite controlar algumas propriedades da transmissão em fluxo em direto de saída, como a quantidade de transmissão em fluxo mantida na gravação de arquivo (por exemplo, a capacidade do DVR da cloud) ou quando os visualizadores podem começar a ver a transmissão em direto. O arquivo no disco é uma "janela" de arquivo circular que contém apenas a quantidade de conteúdo especificado na propriedade archiveWindowLength da Saída Dinâmica. O conteúdo que cai fora desta janela é eliminado automaticamente do contentor de armazenamento e não é recuperável. O valor archiveWindowLength representa uma duração de período de tempo ISO-8601 (por exemplo, PTHH:MM:SS), que especifica a capacidade do DVR. O valor pode ser definido de um mínimo de um minuto para um máximo de 25 horas.

A relação entre um Evento em Direto e as respetivas Saídas em Direto é semelhante à difusão de TV tradicional, na qual um canal (Evento em Direto) representa um fluxo constante de vídeo e uma gravação (Live Output) está confinada a um segmento de hora específico (por exemplo, notícias noturnas das 18:30 às 19:00). Assim que tiver a transmissão em fluxo a fluir para o Evento em Direto, pode iniciar o evento de transmissão em fluxo ao criar um recurso, Uma Saída em Direto e um localizador de transmissão em fluxo. O Live Output irá arquivar a transmissão em fluxo e disponibilizá-la aos visualizadores através do Ponto Final de Transmissão em Fluxo. Pode criar várias Saídas em Direto (até três no máximo) num Evento em Direto com diferentes comprimentos e definições de arquivo. Para obter informações sobre o fluxo de trabalho de transmissão em fluxo em direto, veja a secção passos gerais .

Utilizar um DVR durante um evento

Esta secção aborda como utilizar um DVR durante um evento para controlar que partes do fluxo estão disponíveis para "recuar".

O archiveWindowLength valor determina até que ponto um visualizador pode ir da posição atual em direto. O archiveWindowLength valor também determina quanto tempo os manifestos de cliente podem aumentar.

Suponha que está a transmitir um jogo de futebol e tem ArchiveWindowLength apenas 30 minutos. Um visualizador que comece a ver o seu evento 45 minutos após o início do jogo pode voltar à marca de 15 minutos. As Saídas em Direto do jogo continuarão até que o Evento em Direto seja interrompido. Os conteúdos que se inserem fora do arquivoWindowLength são continuamente eliminados do armazenamento e não são recuperáveis. Neste exemplo, o vídeo entre o início do evento e a marca de 15 minutos teria sido removido do DVR e do contentor no armazenamento de blobs do recurso. O arquivo não é recuperável e é removido do contentor no armazenamento de blobs do Azure.

Um Evento em Direto suporta até três saídas em direto em simultâneo (pode criar, no máximo, 3 gravações/arquivos a partir de uma transmissão em fluxo em direto ao mesmo tempo). Este suporte permite-lhe publicar e arquivar diferentes partes de um evento, conforme necessário. Suponha que precisa de difundir um feed linear em direto 24 horas por dia e criar "gravações" dos diferentes programas ao longo do dia para oferecer aos clientes como conteúdo a pedido para visualização de recuperação. Para este cenário, primeiro vai criar uma Saída em Direto principal com uma janela de arquivo curta de 1 hora ou menos– esta é a transmissão em direto principal em que os visualizadores se ajustariam. Iria criar um Localizador de Transmissão em Fluxo para este Resultado Em Direto e publicá-lo na sua aplicação ou site como o feed "Live". Enquanto o Evento em Direto está em execução, pode criar programaticamente uma segunda Saída em Direto simultânea no início de um programa (ou 5 minutos antes para fornecer alguns identificadores para cortar mais tarde). Este segundo Live Output pode ser eliminado 5 minutos após o fim do programa. Com este segundo recurso, pode criar um novo Localizador de Transmissão em Fluxo para publicar este programa como um recurso a pedido no catálogo da sua aplicação. Pode repetir este processo várias vezes para outros limites do programa ou realçar que pretende partilhar como vídeos a pedido, enquanto o feed "Live" da primeira Saída em Direto continua a difundir o feed linear.

Utilizar rewindWindowLength

Também pode utilizar a rewindWindowLength propriedade para um Live Output para controlar a quantidade de tempo que um visualizador pode procurar para trás durante um Evento em Direto. A definição também ajuda a reduzir o tamanho do manifesto fornecido ao cliente através da rede durante a transmissão em fluxo em direto. Pode resultar numa experiência de transmissão em fluxo em direto mais eficiente e reduzir a utilização da memória no cliente. Assim que o Live Output parar, o vídeo arquivado utilizará o comprimento original da janela de arquivo descrito acima.

Após a conclusão da transmissão em fluxo, pode aceder ao ficheiro arquivado no recurso definido pela propriedade archiveWindowLength para o Live Output. Isto permite-lhe definir uma duração de arquivo diferente da duração anterior da "janela deslizante do DVR" que está visível para o leitor.

Isto é muito útil para quando quer transmitir em fluxo com uma janela de mudança de tempo muito pequena no leitor, mas quer arquivar todo o evento em direto para o elemento de saída.

Pode definir rewindWindowLength para um valor mínimo de 60 segundos.

Se criar um evento em direto com LowLatencyV2, o valor predefinido é 30 minutos.

Quando enviar um pedido para uma Saída Em Direto, inclua rewindWindowLength nas propriedades. No exemplo REST abaixo, PT1H30M é utilizado para indicar 1 hora e 30 minutos de comprimento da janela rebobinar.


{
  "properties": {
    "description": "test live output 1",
    "assetName": "6f3264f5-a189-48b4-a29a-a40f22575212",
    "archiveWindowLength": "PT5M",
    "rewindWindowLength": "PT1H30M",
    "manifestName": "testmanifest",
    "hls": {
      "fragmentsPerTsSegment": 5
    }
  }

Criar um arquivo para reprodução a pedido

O recurso Live Output torna-se automaticamente um recurso a pedido quando o Live Output é eliminado. Tem de eliminar todas as Saídas em Direto antes de poder parar um Evento em Direto. (Pode utilizar um sinalizador opcional removeOutputsOnStop para remover automaticamente Saídas em Direto em paragem.) Os utilizadores podem transmitir em fluxo os seus conteúdos arquivados a pedido, desde que não elimine o recurso.

Nota

Quando elimina o Live Output, não está a eliminar o elemento subjacente e o conteúdo no recurso.

Se publicou o elemento do seu Live Output através de um localizador de transmissão em fluxo, o Evento em Direto (até ao comprimento da janela do DVR) continuará a ser visualizável até à expiração ou eliminação do localizador de transmissão em fluxo, o que ocorrer primeiro.

Para obter mais informações, consulte:

Obter ajuda e suporte

Pode contactar os Serviços de Multimédia com perguntas ou seguir as nossas atualizações através de um dos seguintes métodos: