Metode IMFTransform::SetOutputBounds (mftransform.h)

Mengatur rentang stempel waktu yang dibutuhkan klien untuk output.

Sintaks

HRESULT SetOutputBounds(
  LONGLONG hnsLowerBound,
  LONGLONG hnsUpperBound
);

Parameter

hnsLowerBound

Menentukan stempel waktu paling awal. Transformasi Media Foundation (MFT) akan menerima input hingga dapat menghasilkan sampel output yang dimulai saat ini; atau sampai dapat menghasilkan sampel yang berakhir pada saat ini atau yang lebih baru. Jika tidak ada batas yang lebih rendah, gunakan nilai MFT_OUTPUT_BOUND_LOWER_UNBOUNDED.

hnsUpperBound

Menentukan stempel waktu terbaru. MFT tidak akan menghasilkan sampel output dengan stempel waktu lebih lambat dari waktu ini. Jika tidak ada batas atas, gunakan nilai MFT_OUTPUT_BOUND_UPPER_UNBOUNDED.

Menampilkan nilai

Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.

Menampilkan kode Deskripsi
S_OK
Metode berhasil.
E_NOTIMPL
Tidak diterapkan.
MF_E_TRANSFORM_TYPE_NOT_SET
Jenis media tidak disetel pada satu atau beberapa aliran.

Keterangan

Metode ini dapat digunakan untuk mengoptimalkan pra-pendaftaran, terutama dalam format yang memiliki celah antara stempel waktu, atau format di mana data harus dimulai pada titik sinkronisasi, seperti MPEG-2. Memanggil metode ini bersifat opsional, dan implementasi metode ini oleh MFT bersifat opsional. Jika MFT tidak menerapkan metode , nilai yang dikembalikan E_NOTIMPL.

Jika MFT menerapkan metode ini, MFT harus membatasi data outputnya ke rentang waktu yang ditentukan oleh hnsLowerBound dan hnsUpperBound. MFT membuang data input apa pun yang tidak diperlukan untuk menghasilkan output dalam rentang ini. Jika batas sampel tidak sama persis dengan rentang, MFT harus membagi sampel output, jika memungkinkan. Jika tidak, sampel output dapat tumpang tindih dengan rentang.

Misalnya, rentang output adalah 100 hingga 150 milidetik (md), dan format outputnya adalah video dengan setiap bingkai berlangsung 33 mdtk. Sampel dengan stempel waktu 67 md tumpang tindih rentang (67 + 33 = 100) dan diproduksi sebagai output. Sampel dengan stempel waktu 66 md dibuang (66 + 33 = 99). Demikian pula, sampel dengan stempel waktu 150 md diproduksi sebagai output, tetapi sampel dengan stempel waktu 151 dibuang.

Jika MFT_UNIQUE_METHOD_NAMES ditentukan sebelum menyertakan mftransform.h, metode ini diganti namanya menjadi MFTSetOutputBounds. Lihat Membuat Objek DMO/MFT Hibrid.

Persyaratan

   
Klien minimum yang didukung Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header mftransform.h
Pustaka Mfuuid.lib

Lihat juga

IMFTransform

Transformasi Media Foundation