Freigeben über


MFCreateADTSMediaSink-Funktion (mfidl.h)

Erstellt eine instance der ADTS-Mediensenke (Audio Data Transport Stream).

Syntax

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

Parameter

[in] pTargetByteStream

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

[in] pAudioMediaType

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

attribute Wert
MF_MT_MAJOR_TYPE MFMediaType_Audio
MF_MT_SUBTYPE MFAudioFormat_AAC
MF_MT_AAC_PAYLOAD_TYPE 0 (roher 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, gibt sie S_OK zurück. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Hinweise

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 ein unformatierter AAC 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 Bytestream.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile mfidl.h
DLL Mf.dll

Weitere Informationen

Media Foundation-Funktionen