Partilhar via


Sobre a origem do sequencer

A origem do sequenciador permite que um aplicativo reproduza uma coleção de Fontes de Mídia sequencialmente, com transições perfeitas entre as fontes. A origem do sequenciador pode ser usada para os seguintes cenários:

  • Crie uma playlist que mude diretamente de uma fonte de mídia para a próxima.
  • Reproduzir fluxos de várias fontes simultaneamente; por exemplo, reproduza o áudio de um arquivo com o vídeo de outro.
  • Alternar entre fluxos em diferentes fontes de mídia em entradas de playlist consecutivas; por exemplo, uma playlist pode ter entradas que compartilham a mesma fonte de vídeo, enquanto cada entrada contém uma fonte de áudio diferente.

Para cada elemento de uma playlist, o aplicativo cria uma topologia separada. As fontes de mídia nessas topologias são conhecidas como fontes nativas, para distingui-las da origem do sequenciador. Durante a reprodução, toda a sequência de topologias é chamada de apresentação e cada topologia dentro da sequência é chamada de segmento.

A reprodução é controlada pela Sessão de Mídia, que fornece controles de transporte, como reproduzir, pausar e parar. A Sessão de Mídia também gerencia o tempo de apresentação e envia eventos para o aplicativo. (Os eventos da origem do sequenciador são encaminhados para o aplicativo por meio da Sessão de Mídia.)

Para criar uma playlist, o aplicativo cria uma ou mais topologias de reprodução e as enfileira na origem do sequenciador na ordem de reprodução desejada. Internamente, a origem do sequenciador modifica as topologias para que os nós de origem apontem para a origem do sequenciador em vez da origem nativa. O aplicativo envia essas topologias modificadas, em vez das topologias originais, para a Sessão de Mídia. Isso permite que a origem do sequenciador agregue as fontes nativas e se comunique com a Sessão de Mídia.

Para obter transições perfeitas entre segmentos, a origem do sequenciador pré-registrará cada segmento. Enquanto um segmento está sendo reproduzido e antes que seja hora de reproduzir o segmento a seguir, a origem do sequenciador dispara um evento MENewPresentation que contém um descritor de apresentação. O aplicativo usa esse descritor de apresentação para obter a topologia para o próximo segmento na apresentação e enfileira a topologia na Sessão de Mídia.

A ilustração a seguir mostra o fluxo de dados para entradas de playlist por meio da origem do sequenciador. O aplicativo usa o resolvedor de origem para criar as fontes nativas, cria topologias para cada segmento e enfileira as topologias na origem do sequenciador.

diagrama mostrando o fluxo de dados de imfmediasession, imfsequencersource e segmentos de playlist que levam a imfmediasource

Como criar uma playlist

Topologias

Usando a origem do sequencer

Origem do sequenciador