Função MFCreateADTSMediaSink (mfidl.h)

Cria uma instância do coletor de mídia do ADTS (fluxo de transporte de dados de áudio).

Sintaxe

HRESULT MFCreateADTSMediaSink(
  [in]  IMFByteStream *pTargetByteStream,
  [in]  IMFMediaType  *pAudioMediaType,
  [out] IMFMediaSink  **ppMediaSink
);

Parâmetros

[in] pTargetByteStream

Um ponteiro para a interface IMFByteStream de um fluxo de bytes. O coletor de mídia grava o fluxo do ADTS nesse fluxo de bytes. O fluxo de bytes deve ser gravável.

[in] pAudioMediaType

Um ponteiro para a interface IMFMediaType . Esse parâmetro especifica o tipo de mídia para o fluxo do ADTS. O tipo de mídia deve conter os atributos a seguir.

Atributo Valor
MF_MT_MAJOR_TYPE MFMediaType_Audio
MF_MT_SUBTYPE MFAudioFormat_AAC
MF_MT_AAC_PAYLOAD_TYPE 0 (AAC bruto) ou 1 (ADTS)

[out] ppMediaSink

Recebe um ponteiro para a interface IMFMediaSink . O chamador deve liberar a interface.

Retornar valor

Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

O coletor de mídia do ADTS converte pacotes de áudio AAC (Codificação Avançada de Áudio) em um fluxo do ADTS. O principal uso para esse coletor de mídia é transmitir o ADTS por uma rede. A saída não é um arquivo de áudio, mas um fluxo de quadros de áudio com cabeçalhos do ADTS.

O coletor de mídia pode aceitar quadros AAC brutos (MF_MT_AAC_PAYLOAD_TYPE = 0) ou pacotes ADTS (MF_MT_AAC_PAYLOAD_TYPE = 1). Se a entrada for AAC bruta, o coletor de mídia inserirá um cabeçalho do ADTS no início de cada quadro de áudio. Se a entrada for pacotes ADTS, o coletor de mídia passará os pacotes para o fluxo de bytes, sem modificação.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mfidl.h
DLL Mf.dll

Confira também

Funções do Media Foundation