다음을 통해 공유


DXVAHD_STREAM_STATE_ALPHA_DATA 구조체(dxvahd.h)

Microsoft DirectX 비디오 가속 고화질(DXVA-HD)을 사용하는 경우 입력 스트림의 평면 알파 값을 지정합니다.

구문

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

멤버

Enable

TRUE이면 알파 혼합이 사용됩니다. 그렇지 않으면 알파 혼합이 비활성화됩니다. 기본 상태 값은 FALSE입니다.

Alpha

평면 알파 값을 0.0(투명)에서 1.0(불투명)으로 부동 소수점 숫자로 지정합니다.

Enable 멤버가 FALSE이면 이 멤버는 무시됩니다.

설명

각 픽셀에 대해 대상 색 값은 다음과 같이 계산됩니다.

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

where

  • Cd = 대상 픽셀의 색 값입니다.
  • Cs = 원본 픽셀의 색 값입니다.
  • As = 픽셀당 원본 알파입니다.
  • Ap = 평면 알파 값입니다.
  • Ae = 색상표 항목 알파 값 또는 1.0(참고 참조).
참고 팔레트 항목 알파 값은 팔레트 색 형식에만 적용되며 디바이스에서 DXVAHD_FEATURE_CAPS_ALPHA_PALETTE 기능을 지원하는 경우에만 적용됩니다. 그렇지 않으면 이 요소는 1.0과 같습니다.
 
대상 알파 값은 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

Media Foundation 구조