次の方法で共有


MFCreateADTSMediaSink 関数 (mfidl.h)

オーディオ データ トランスポート ストリーム (ADTS) メディア シンクのインスタンスを作成します。

構文

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

パラメーター

[in] pTargetByteStream

バイト ストリームの IMFByteStream インターフェイスへのポインター。 メディア シンクは、ADTS ストリームをこのバイト ストリームに書き込みます。 バイト ストリームは書き込み可能である必要があります。

[in] pAudioMediaType

IMFMediaType インターフェイスへのポインター。 このパラメーターは、ADTS ストリームのメディアの種類を指定します。 メディアの種類には、次の属性が含まれている必要があります。

属性
MF_MT_MAJOR_TYPE MFMediaType_Audio
MF_MT_SUBTYPE MFAudioFormat_AAC
MF_MT_AAC_PAYLOAD_TYPE 0 (生 AAC) または 1 (ADTS)

[out] ppMediaSink

IMFMediaSink インターフェイスへのポインターを受け取ります。 呼び出し元はインターフェイスを解放する必要があります。

戻り値

この関数が成功すると、 S_OKが返されます。 そうでない場合は、HRESULT エラー コードを返します。

注釈

ADTS メディア シンクは、Advanced Audio Coding (AAC) オーディオ パケットを ADTS ストリームに変換します。 このメディア シンクの主な用途は、ネットワーク経由で ADTS をストリーミングすることです。 出力はオーディオ ファイルではなく、ADTS ヘッダーを含むオーディオ フレームのストリームです。

メディア シンクは、生の AAC フレーム (MF_MT_AAC_PAYLOAD_TYPE = 0) または ADTS パケット (MF_MT_AAC_PAYLOAD_TYPE = 1) を受け取ることができます。 入力が生 AAC の場合、メディア シンクは各オーディオ フレームの先頭に ADTS ヘッダーを挿入します。 入力が ADTS パケットの場合、メディア シンクは変更せずに、パケットをバイト ストリームに渡します。

要件

要件
サポートされている最小のクライアント Windows 8 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mfidl.h
[DLL] Mf.dll

こちらもご覧ください

メディア ファンデーション機能