Função MFCreateTranscodeTopology (mfidl.h)
Cria uma topologia de transcodificação parcial.
O construtor de topologia subjacente cria uma topologia parcial conectando os objetos de pipeline necessários: origem, codificador e coletor. O codificador e o coletor são configurados de acordo com as configurações especificadas pelo chamador no perfil de transcodificação.
Para criar o objeto de perfil transcode, chame a função MFCreateTranscodeProfile e defina os atributos necessários chamando os métodos IMFTranscodeProfile apropriados.
O perfil de transcodificação configurado é passado para a função MFCreateTranscodeTopology , que cria a topologia transcode com as configurações apropriadas. Em seguida, o chamador pode definir essa topologia na Sessão de Mídia e iniciar a sessão para iniciar o processo de codificação. Quando a Sessão de Mídia termina, o arquivo transcodificado é gerado.
Sintaxe
HRESULT MFCreateTranscodeTopology(
[in] IMFMediaSource *pSrc,
[in] LPCWSTR pwszOutputFilePath,
[in] IMFTranscodeProfile *pProfile,
[out] IMFTopology **ppTranscodeTopo
);
Parâmetros
[in] pSrc
Um ponteiro para uma fonte de mídia que encapsula o arquivo de origem a ser transcodificado. O objeto de origem de mídia expõe a interface IMFMediaSource e pode ser criado usando o resolvedor de origem. Para obter mais informações, consulte Usando o resolvedor de origem.
[in] pwszOutputFilePath
Um ponteiro para uma cadeia de caracteres terminada em nulo que contém o nome e o caminho do arquivo de saída a ser gerado.
[in] pProfile
Um ponteiro para o perfil de transcodificação que contém as configurações do fluxo de áudio, do fluxo de vídeo e do contêiner no qual o arquivo é gravado. O objeto de perfil transcode expõe a interface IMFTranscodeProfile e deve ser criado chamando a função MFCreateTranscodeProfile . Depois que o objeto tiver sido criado, o chamador deverá fornecer as configurações chamando os métodos IMFTranscodeProfile apropriados.
[out] ppTranscodeTopo
Recebe um ponteiro para a interface IMFTopology do objeto de topologia transcode. O chamador deve liberar a interface.
Retornar valor
A função retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
A chamada de função foi bem-sucedida e ppTranscodeTopo recebe um ponteiro para a topologia transcode. |
|
pwszOutputFilePath contém caracteres inválidos. |
|
Nenhum fluxo é selecionado na fonte de mídia. |
|
O perfil não contém o atributo MF_TRANSCODE_CONTAINERTYPE . |
|
Para um ou mais fluxos, não é possível encontrar um codificador que aceite o tipo de mídia fornecido no perfil. |
|
O perfil não especifica um tipo de mídia para nenhum dos fluxos selecionados na fonte de mídia. |
Comentários
Por exemplo, código que usa essa função, confira os seguintes tópicos:
Requisitos
Requisito | Valor |
---|---|
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] |
Plataforma de Destino | Windows |
Cabeçalho | mfidl.h |
Biblioteca | Mf.lib |
DLL | Mf.dll |