Freigeben über


MFCreateADTSMediaSink-Funktion (mfidl.h)

Erstellt eine Instanz der AdTS-Mediensenke (Audio Data Transport Stream).

Syntax

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

Die Parameter

[in] pTargetByteStream

Ein Zeiger auf die IMFByteStream-Schnittstelle eines Bytestreams. Die Mediensenke schreibt den ADTS-Stream in diesen Bytedatenstrom. Der Bytedatenstrom muss schreibbar sein.

[in] pAudioMediaType

Ein Zeiger auf die IMFMediaType-Schnittstelle . Dieser Parameter gibt den Medientyp für den ADTS-Datenstrom an. Der Medientyp muss die folgenden Attribute enthalten.

Merkmal Wert
MF_MT_MAJOR_TYPE MFMediaType_Audio
MF_MT_SUBTYPE MFAudioFormat_AAC
MF_MT_AAC_PAYLOAD_TYPE 0 (raw AAC) oder 1 (ADTS)

[out] ppMediaSink

Empfängt einen Zeiger auf die IMFMediaSink-Schnittstelle . Der Aufrufer muss die Schnittstelle freigeben.

Rückgabewert

Wenn diese Funktion erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein HRESULT-Fehlercode zurückgegeben.

Bemerkungen

Die ADTS-Mediensenke konvertiert AAC-Audiopakete (Advanced Audio Coding) in einen ADTS-Stream. Die primäre Verwendung für diese Mediensenke besteht darin, ADTS über ein Netzwerk zu streamen. Die Ausgabe ist keine Audiodatei, sondern ein Stream von Audioframes mit ADTS-Headern.

Die Mediensenke kann unformatierte AAC-Frames (MF_MT_AAC_PAYLOAD_TYPE = 0) oder ADTS-Pakete (MF_MT_AAC_PAYLOAD_TYPE = 1) akzeptieren. Wenn die Eingabe unformatiert ist, fügt die Mediensenke am Anfang jedes Audioframes einen ADTS-Header ein. Wenn es sich bei der Eingabe um ADTS-Pakete handelt, übergibt die Mediensenke die Pakete ohne Änderung an den Bytedatenstrom.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 8 [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows Server 2012 [nur Desktop-Apps]
Zielplattform Fenster
Header mfidl.h
Library Mf.lib
DLL Mf.dll

Siehe auch

Media Foundation-Funktionen