Definindo propriedades em fontes

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

[Essa API não tem suporte e pode ser alterada ou indisponível no futuro.]

Quando você cria um novo objeto de origem, há algumas propriedades que você precisa definir e outras que você pode definir opcionalmente. Você deve definir as propriedades a seguir.

  • Os horários de início e parada, em relação ao resto do linha do tempo. Chame o método IAMTimelineObj::SetStartStop . Não defina tempos sobrepostos em objetos de origem dentro da mesma faixa ou isso causará um comportamento indefinido.
  • O arquivo de mídia a ser usado como um clipe de origem. Chame IAMTimelineSrc::SetMediaName.
  • Os tempos de início e parada da mídia, em relação ao arquivo de origem original. Chame o método IAMTimelineSrc::SetMediaTimes . Exceção: se a origem for uma imagem parada, não especifique os tempos de mídia. Para obter mais informações sobre os tempos de mídia, consulte Tempo nos Serviços de Edição do DirectShow.

Um objeto de origem herda seu tipo de mídia do grupo pai, portanto, não é necessário especificar um tipo de mídia.

As propriedades opcionais incluem o seguinte:

  • O modo de alongamento. O modo de alongamento especifica como o DES (Microsoft® DirectShow® Editing Services) renderiza uma fonte cujo tamanho não corresponde às dimensões de saída. Por padrão, o DES alonga uma imagem sem preservar a taxa de proporção. Como alternativa, o DES pode cortar uma imagem ou criar uma caixa de correio. Chame o método IAMTimelineSrc::SetStretchMode para especificar o modo de alongamento.
  • A duração do arquivo de origem. Se você definir essa propriedade antes de definir os tempos de mídia, o DES validará o tempo de parada de mídia e truncará o tempo de parada se exceder a duração do arquivo. Isso pode ajudar a evitar erros de renderização posteriormente. Você pode obter a duração do arquivo usando o detector de mídia, conforme descrito em Usando o Detector de Mídia. Chame o método IAMTimelineSrc::SetMediaLength para especificar a duração do arquivo.
  • O número do fluxo. Por padrão, um objeto de origem usa o primeiro fluxo no arquivo que corresponde ao tipo de mídia do grupo pai. Se um arquivo contiver dois ou mais fluxos do mesmo tipo de mídia, selecione qual fluxo usar chamando IAMTimelineSrc::SetStreamNumber. Você pode usar o detector de mídia para localizar o número de fluxos.

Trabalhando com fontes