Compartilhar via


enumeração MF_TRANSCODE_ADJUST_PROFILE_FLAGS (mfidl.h)

Define os sinalizadores de perfil definidos no atributo MF_TRANSCODE_ADJUST_PROFILE .

Esses sinalizadores são verificados por MFCreateTranscodeTopology durante a compilação da topologia. Com base nesses sinalizadores, MFCreateTranscodeTopology ajusta o perfil de transcodificação modificando as definições de configuração para os fluxos de acordo com os requisitos de entrada do codificador usado na topologia.

Para obter mais informações sobre as configurações de fluxo que um aplicativo pode especificar, consulte Usando a API do Transcode.

Syntax

typedef enum _MF_TRANSCODE_ADJUST_PROFILE_FLAGS {
  MF_TRANSCODE_ADJUST_PROFILE_DEFAULT = 0,
  MF_TRANSCODE_ADJUST_PROFILE_USE_SOURCE_ATTRIBUTES = 1
} MF_TRANSCODE_ADJUST_PROFILE_FLAGS;

Constantes

 
MF_TRANSCODE_ADJUST_PROFILE_DEFAULT
Valor: 0
O Media Foundation usa as configurações especificadas pelo aplicativo para fluxos de áudio e vídeo. Se as configurações necessárias não forem fornecidas pelo aplicativo, a topologia será criada, mas a sessão de codificação falhará. Para o fluxo de vídeo, a taxa de quadros e as configurações do modo de entrelaçamento são modificadas. Para obter mais informações, consulte Comentários.
MF_TRANSCODE_ADJUST_PROFILE_USE_SOURCE_ATTRIBUTES
Valor: 1
Para fluxos de áudio e vídeo, as configurações de fluxo ausentes são preenchidas copiando os atributos de origem de entrada. Esse sinalizador garante que o arquivo de saída transcodificado seja a correspondência mais próxima do arquivo de entrada.

Comentários

Se o sinalizador MF_TRANSCODE_ADJUST_PROFILE_DEFAULT for especificado, as seguintes alterações serão feitas para o fluxo de vídeo:

  • Se a taxa de quadros da fonte de mídia especificada no parâmetro pSrc de MFCreateTranscodeTopology e a taxa de quadros especificada pelo aplicativo no atributo MF_MT_FRAME_RATE forem diferentes por menos de 1/1000, o perfil usará a taxa de quadros de origem da mídia. Isso ocorre porque o pipeline considera a diferença insignificante.
  • Se o aplicativo não especificar um modo entrelaçado definindo o atributo MF_MT_INTERLACE_MODE , o perfil será alterado para usar quadros progressivos.
O sinalizador MF_TRANSCODE_ADJUST_PROFILE_DEFAULT deve ser acompanhado com os atributos de fluxo de áudio e vídeo necessários fornecidos pelo aplicativo. Para o fluxo de áudio, os atributos necessários são os seguintes: Para o fluxo de vídeo, os atributos necessários são os seguintes: Se esses atributos não estiverem definidos, MFCreateTranscodeTopology criará a topologia, mas a Sessão de Mídia não gerará o arquivo codificado. O código de falha depende do nó MFT na topologia. Por exemplo, se o aplicativo não definir o tamanho do quadro, o codificador WMV não conseguirá codificar o conteúdo e o aplicativo obterá o código de erro MF_E_INVALIDMEDIATYPE por meio da Sessão de Mídia.

Use o sinalizador MF_TRANSCODE_ADJUST_PROFILE_USE_SOURCE_ATTRIBUTES quando quiser transcodificar o arquivo usando os atributos de fluxo de entrada. Os atributos de fluxo de origem de entrada são copiados para o tipo de mídia de saída antes que o nó MFT seja inserido na topologia. Se você definir atributos de fluxo adicionais, esse sinalizador não substituirá os valores definidos. Somente os atributos ausentes são preenchidos com os valores de atributo da fonte de entrada. Esse sinalizador é útil no cenário remux em que você deseja gerar o arquivo de saída no mesmo formato que a origem de entrada. Se você quiser executar a conversão de formato, defina o atributo MF_MT_SUBTYPE para o fluxo para especificar o codificador que o construtor de topologia deve usar. O nó de transformação é adicionado à topologia, a menos que MF_TRANSCODE_DONOT_INSERT_ENCODER esteja definido. Nesse caso, e o conteúdo não está codificado. Em vez disso, se permitido pelo contêiner, o conteúdo é inserido no contêiner especificado.

Por exemplo, suponha que sua fonte de entrada seja um arquivo MP3. Você define o contêiner como MFTranscodeContainerType_ASF, não define nenhum atributo de fluxo e define o sinalizador MF_TRANSCODE_ADJUST_PROFILE_USE_SOURCE_ATTRIBUTES . Nesse caso, o arquivo de saída gerado é um arquivo ASF (.wma) que contém dados de mídia MP3. Observe que, se você usar esse sinalizador, determinados atributos de fluxo de entrada e o tipo de contêiner poderão não ser compatíveis.

Requisitos

   
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Cabeçalho mfidl.h

Confira também

Enumerações do Media Foundation

Transcode API