DXVAHD_STREAM_STATE_ALPHA_DATA結構 (dxvahd.h)

使用 Microsoft DirectX Video Acceleration High Definition (DXVA-HD) 時,指定輸入資料流程的平面 Alpha 值。

語法

typedef struct _DXVAHD_STREAM_STATE_ALPHA_DATA {
  BOOL  Enable;
  FLOAT Alpha;
} DXVAHD_STREAM_STATE_ALPHA_DATA;

成員

Enable

如果為 TRUE,則會啟用 Alpha 混合。 否則,會停用 Alpha 混合。 預設狀態值為 FALSE

Alpha

將平面 Alpha 值指定為從 0.0 (透明) 到 1.0 (不透明) 的浮點數。

如果 Enable 成員為 FALSE,則會忽略這個成員。

備註

針對每個圖元,目的地色彩值會計算如下:

Cd = Cs * (As * Ap * Ae) + Cd * (1.0 - As * Ap * Ae)

where

  • Cd = 目的地圖元的色彩值。
  • Cs = 來源圖元的色彩值。
  • As = 每圖元來源 Alpha。
  • Ap = 平面 Alpha 值。
  • Ae = 調色盤輸入 Alpha 值或 1.0 (請參閱附注) 。
注意 調色盤輸入 Alpha 值僅適用于分色格式,而且只有在裝置支援 DXVAHD_FEATURE_CAPS_ALPHA_PALETTE 功能時才適用。 否則,這個因素等於 1.0。
 
目的地 Alpha 值會根據 DXVAHD_BLT_STATE_ALPHA_FILL 狀態來計算。 如需詳細資訊,請參閱 DXVAHD_BLT_STATE_ALPHA_FILL_DATA

若要取得裝置功能,請呼叫IDXVAHD_Device::GetVideoProcessorDeviceCaps,並檢查DXVAHD_VPDEVCAPS結構的FeatureCaps成員。

範例

HRESULT DXVAHD_SetPlanarAlpha(
    IDXVAHD_VideoProcessor *pVP,
    UINT stream,
    BOOL bEnable,
    float fAlpha
    )
{
    DXVAHD_STREAM_STATE_ALPHA_DATA alpha = { bEnable, fAlpha };

    HRESULT hr = pVP->SetVideoProcessStreamState(
        stream,
        DXVAHD_STREAM_STATE_ALPHA,
        sizeof(alpha),
        &alpha
        );

    return hr;
}

需求

   
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限傳統型應用程式]
標頭 dxvahd.h

另請參閱

DXVA-HD

DXVAHD_STREAM_STATE

Direct3D 視訊結構

IDXVAHD_VideoProcessor::SetVideoProcessStreamState

媒體基礎結構