IMFSampleOutputStream 介面 (mfobjects.h)
將媒體範例寫入位元組資料流程。
繼承
IMFSampleOutputStream介面繼承自IUnknown介面。 IMFSampleOutputStream 也有下列類型的成員:
方法
IMFSampleOutputStream介面具有這些方法。
IMFSampleOutputStream::BeginWriteSample 開始非同步要求,以將媒體範例寫入資料流程。 |
IMFSampleOutputStream::EndWriteSample 完成非同步要求,以將媒體範例寫入資料流程。 |
備註
可寫入的位元組資料流程可以選擇性地實作此介面。
此介面可讓呼叫端將媒體範例傳送至位元組資料流程以供寫入,而不是使用 IMFByteStream::BeginWrite 方法來寫入不具類型資料的 Blob。 位元組資料流程可以使用媒體範例中包含的資訊,將寫入資料的方式優化。 例如,透過網路傳送媒體資料的位元組資料流程可以根據時間戳記進行優化。
若要取得這個介面的指標,請在位元組資料流程物件上呼叫 QueryInterface 。
任何將 IMFSampleOutputStream公開為介面的IMFByteStream實作都必須符合下列需求:
- 來自任一介面的所有寫入一律會移至完全相同的位元組資料流程物件。
- IMFSampleOutputStream和IMFByteStream的目前位置一律相同。 例如,寫入 IMFSampleOutputStream 也會更新 IMFByteStream的目前位置。
- 使用 BeginWriteSample 和 EndWriteSample 撰寫範例時,應該藉由從範例中的所有緩衝區寫入資料,依緩衝區儲存在樣本中的順序來序列化樣本。 (使用 IMFSample::GetBufferByIndex 依索引值取得個別緩衝區。) 複製的總位元組數應該是從所有緩衝區寫入的位元組數。
需求
最低支援的用戶端 | Windows 8 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2012 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | mfobjects.h (include Mfidl.h) |