Bagikan melalui


Properti Sampel MPEG

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan 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 Audio/Video Capture 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.]

Sampel MPEG memiliki karakteristik berikut.

Stempel Waktu

Tidak semua sampel memiliki waktu mulai dan berhenti. Waktu berhenti sampel untuk data paket dan payload tidak berguna; biasanya diatur ke waktu mulai ditambah satu. Paket MPEG atau sampel data payload akan memiliki waktu mulai dan berhenti yang ditetapkan jika paket lapisan sistem yang dihasilkan dari memiliki PTS yang valid.

Untuk informasi selengkapnya tentang stempel waktu, lihat bagian 2.4.1 ISO1-11172: "Header paket mungkin berisi decoding dan/atau stempel waktu presentasi (DTS dan PTS) yang merujuk ke unit akses pertama dalam paket."

Untuk MPEG_Stream jenis utama, waktu mulai adalah posisi byte dari byte pertama, dinilai 1 byte per detik. Waktu berhenti adalah posisi byte dari byte terakhir. Dengan demikian, sampel berturut-turut harus memiliki waktu berhenti paket pertama yang sama dengan waktu mulai paket berikutnya. Untuk data CD Video, asal media harus cocok dengan format file video-CD yang diekspos oleh CDFS dengan gugus RIFF standar di awal.

Untuk jenis paket video dan payload MPEG, stempel waktu adalah waktu presentasi untuk bingkai video pertama yang kode mulai gambarnya dimulai dalam sampel.

Untuk jenis paket audio dan payload MPEG, stempel waktu adalah waktu presentasi untuk bingkai audio pertama yang kode sinkronisasinya dimulai dalam sampel.

Diasumsikan bahwa data paket dan payload tanpa stempel waktu dapat berhasil didaftarkan oleh filter penanganan.

Diskontinuitas

Jika ada jeda dalam aliran (misalnya, celah dalam data real-time, atau kesalahan dalam data atau setelah pencarian), properti penghentian diatur pada sampel media berikutnya. Ini juga memungkinkan penghentian stempel waktu.

Pemberitahuan Akhir Aliran

Ketika dekoder menerima pemberitahuan ini, decoder harus memproses data yang di-buffer. Data baru apa pun kemudian harus dimulai dengan properti penghentian.

Dukungan MPEG-2 di DirectShow