Bagikan melalui


enumerasi tagAM_SAMPLE_PROPERTY_FLAGS (strmif.h)

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Menentukan nilai untuk struktur AM_SAMPLE2_PROPERTIES . Nilai-nilai ini menjelaskan properti sampel media.

Sintaks

typedef enum tagAM_SAMPLE_PROPERTY_FLAGS {
  AM_SAMPLE_SPLICEPOINT = 0x1,
  AM_SAMPLE_PREROLL = 0x2,
  AM_SAMPLE_DATADISCONTINUITY = 0x4,
  AM_SAMPLE_TYPECHANGED = 0x8,
  AM_SAMPLE_TIMEVALID = 0x10,
  AM_SAMPLE_TIMEDISCONTINUITY = 0x40,
  AM_SAMPLE_FLUSH_ON_PAUSE = 0x80,
  AM_SAMPLE_STOPVALID = 0x100,
  AM_SAMPLE_ENDOFSTREAM = 0x200,
  AM_STREAM_MEDIA = 0,
  AM_STREAM_CONTROL = 1
} ;

Konstanta

 
AM_SAMPLE_SPLICEPOINT
Nilai: 0x1
Sampel adalah titik splice (dapat didekodekan tanpa referensi ke data sebelumnya).
AM_SAMPLE_PREROLL
Nilai: 0x2
Sampel adalah sampel pra-pendaftaran.
AM_SAMPLE_DATADISCONTINUITY
Nilai: 0x4
Data awal dalam sampel ini adalah titik splice. Data dalam sampel sebelumnya tidak dimaksudkan untuk diikuti oleh data dalam sampel ini. Untuk informasi selengkapnya, lihat Keterangan.
AM_SAMPLE_TYPECHANGED
Nilai: 0x8
Jenis sampel berubah.
AM_SAMPLE_TIMEVALID
Nilai: 0x10
Waktu valid.
AM_SAMPLE_TIMEDISCONTINUITY
Nilai: 0x40
Kesenjangan waktu dalam data dimulai setelah sampel ini. Struktur AM_SAMPLE2_PROPERTIES dapat berupa NULL dalam hal ini.
AM_SAMPLE_FLUSH_ON_PAUSE
Nilai: 0x80
Hanya untuk data langsung; menunjukkan buang dalam status dijeda.
AM_SAMPLE_STOPVALID
Nilai: 0x100
Waktu berhenti valid.
AM_SAMPLE_ENDOFSTREAM
Nilai: 0x200
Akhir aliran terjadi setelah sampel ini. Bendera ini disediakan untuk streaming kernel. DirectShow saat ini tidak menggunakannya.
AM_STREAM_MEDIA
Nilai: 0
Pengidentifikasi aliran data normal.
AM_STREAM_CONTROL
Nilai: 1
Mengontrol pengidentifikasi aliran. Nilai yang lebih besar dari 0x7FFFFFFF menunjukkan aliran yang ditentukan aplikasi.

Keterangan

Bendera AM_SAMPLE_DATADISCONTINUITY menunjukkan bahwa data dalam sampel media saat ini tidak dianggap berseberangan dengan data dalam sampel sebelumnya. Filter yang menerima sampel dengan set bendera AM_SAMPLE_DATADISCONTINUITY tidak boleh membuang data yang tidak diolah di buffernya. Filter yang menunggu data masuk sebelum dapat memproses data yang di-buffer harus segera memproses data yang di-buffer; jadi, data yang di-buffer mungkin dibuang jika tidak lengkap.

Misalnya, filter dekompresor video mungkin menerima sampel media dengan bendera AM_SAMPLE_DATADISCONTINUITY diatur ketika memiliki dua bingkai video terkompresi lengkap dan satu bingkai video terkompresi yang tidak lengkap di buffer-nya. Dalam hal ini, filter mendekompresi dua bingkai lengkap dan membuang bingkai ketiga yang tidak lengkap sebelum mulai memproses data dari sampel media saat ini.

Bendera AM_SAMPLE_DATADISCONTINUITY diatur pada sampel pertama yang diterima setelah flush atau stop. Selain itu, Anda harus menggunakan bendera AM_SAMPLE_DATADISCONTINUITY saat konten dialihkan di sumbernya, ketika perubahan saluran terjadi (ketika mungkin juga ada perubahan format), atau ketika ada data yang hilang karena gangguan streaming.

Bendera AM_SAMPLE_DATADISCONTINUITY setara dengan metode IMediaSample::IsDiscontinuity yang mengembalikan S_OK.

Persyaratan

Persyaratan Nilai
Header strmif.h (termasuk DShow.h)

Lihat juga

Jenis DirectShow Enumerated