Overlay DDI

Bagian ini hanya berlaku untuk Windows 7 dan yang lebih baru, dan Windows Server 2008 R2 dan versi sistem operasi Windows yang lebih baru.

Overlay DDI adalah ekstensi ke DDI Direct3D versi 9 untuk memverifikasi dukungan overlay. Overlay DDI terdiri dari titik masuk berikut:

  • Nilai D3DDDICAPS_CHECKOVERLAYSUPPORT dari enumerasi D3DDDICAPS_TYPE digunakan oleh runtime Direct3D untuk memverifikasi apakah perangkat tampilan mendukung overlay tertentu. Runtime mengatur D3DDDICAPS_CHECKOVERLAYSUPPORT di anggota Jenis struktur D3DDDIARG_GETCAPS yang dituju oleh parameter pData fungsi GetCaps driver saat runtime memanggil GetCaps. Runtime juga mengatur anggota pInfo D3DDDIARG_GETCAPS ke penunjuk ke struktur DDICHECKOVERLAYSUPPORTINPUT yang menjelaskan overlay. Jika driver mendukung overlay, driver menetapkan anggota struktur D3DOVERLAYCAPS dan mengembalikan penunjuk ke struktur ini di anggota pDataD3DDDIARG_GETCAPS. Jika tidak, jika driver tidak mendukung overlay, driver gagal melakukan panggilan ke fungsi GetCaps-nya dengan D3DDDIERR_UNSUPPORTEDOVERLAYFORMAT atau D3DDDIERR_UNSUPPORTEDOVERLAY tergantung pada apakah kurangnya dukungan didasarkan pada format overlay. D3DOVERLAYCAPS dijelaskan dalam dokumentasi DirectX SDK.

    Driver mengatur anggota MaxOverlayDisplayWidth dan MaxOverlayDisplayHeight dari D3DOVERLAYCAPS untuk menunjukkan batasan apa pun yang mungkin dimiliki driver dan perangkat keras, yang melibatkan ukuran overlay akhir (setelah meregangkan data overlay).

    Driver mengatur bit kemampuan D3DOVERLAYCAPS_STRETCHX (0x00000040) dan D3DOVERLAYCAPS_STRETCHY (0x00000080) di anggota Caps D3DOVERLAYCAPS untuk menunjukkan bahwa perangkat keras overlay mampu meregangkan dan menyusutkan data overlay secara semena-mena. Driver tidak boleh mencoba meniru peregangan overlay melalui GPU dan hanya boleh mengatur tutup ini jika perangkat keras overlay mendukung peregangan. Overhead yang lebih sedikit biasanya diperlukan bagi aplikasi untuk melakukan peregangan GPU sebagai bagian dari fase pemrosesan dan komposisi video daripada bagi driver untuk melakukan pass terpisah di bagian paling akhir untuk meniru peregangan overlay.

  • Driver harus menangani bendera bidang bit baru berikut dari struktur D3DDDI_OVERLAYINFOFLAGS . Struktur D3DDDI_OVERLAYINFOFLAGS mengidentifikasi jenis operasi overlay yang akan dilakukan. Struktur D3DDDI_OVERLAYINFOFLAGS ditentukan dalam anggota Bendera struktur D3DDDI_OVERLAYINFO dalam panggilan ke fungsi CreateOverlay atau UpdateOverlay driver.

    LimitedRGB
    Overlay adalah RGB rentang terbatas daripada RGB rentang penuh. Dalam rentang terbatas RGB, rentang RGB dikompresi sehingga 16:16:16 berwarna hitam dan 235:235:235 berwarna putih.

    YCbCrBT709
    Overlay-nya adalah BT.709, yang menunjukkan TV definisi tinggi (HDTV), bukan BT.601.

    YCbCrxvYCC
    Overlay diperpanjang YCbCr (xvYCC) daripada YCbCr konvensional.

  • Ketika format tampilan adalah 64 bit daripada 32 bit (misalnya, ketika Desktop Windows Manager (DWM) menggunakan D3DFMT_A16B16G16R16F untuk mode tampilan), runtime menempatkan 32 bit bawah dari colorkey overlay di anggota DstColorKeyLow dari struktur D3DDDI_OVERLAYINFO dan 32 bit atas di anggota DstColorKeyHigh dari D3DDDI_OVERLAYINFO.