다음을 통해 공유


KS_H264VIDEOINFO 구조체(ksmedia.h)

KS_H264VIDEOINFO 현재 미디어 유형에 적용되는 디바이스 기능을 설명합니다.

구문

typedef struct tagKS_H264VIDEOINFO {
  WORD  wWidth;
  WORD  wHeight;
  WORD  wSARwidth;
  WORD  wSARheight;
  WORD  wProfile;
  BYTE  bLevelIDC;
  WORD  wConstrainedToolset;
  DWORD bmSupportedUsages;
  WORD  bmCapabilities;
  DWORD bmSVCCapabilities;
  DWORD bmMVCCapabilities;
  DWORD dwFrameInterval;
  BYTE  bMaxCodecConfigDelay;
  BYTE  bmSupportedSliceModes;
  BYTE  bmSupportedSyncFrameTypes;
  BYTE  bResolutionScaling;
  BYTE  bSimulcastSupport;
  BYTE  bmSupportedRateControlModes;
  WORD  wMaxMBperSecOneResolutionNoScalability;
  WORD  wMaxMBperSecTwoResolutionsNoScalability;
  WORD  wMaxMBperSecThreeResolutionsNoScalability;
  WORD  wMaxMBperSecFourResolutionsNoScalability;
  WORD  wMaxMBperSecOneResolutionTemporalScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalScalablility;
  WORD  wMaxMBperSecThreeResolutionsTemporalScalability;
  WORD  wMaxMBperSecFourResolutionsTemporalScalability;
  WORD  wMaxMBperSecOneResolutionTemporalQualityScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalQualityScalability;
  WORD  wMaxMBperSecThreeResolutionsTemporalQualityScalablity;
  WORD  wMaxMBperSecFourResolutionsTemporalQualityScalability;
  WORD  wMaxMBperSecOneResolutionTemporalSpatialScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalSpatialScalability;
  WORD  wMaxMBperSecThreeResolutionsTemporalSpatialScalablity;
  WORD  wMaxMBperSecFourResolutionsTemporalSpatialScalability;
  WORD  wMaxMBperSecOneResolutionFullScalability;
  WORD  wMaxMBperSecTwoResolutionsFullScalability;
  WORD  wMaxMBperSecThreeResolutionsFullScalability;
  WORD  wMaxMBperSecFourResolutionsFullScalability;
} KS_H264VIDEOINFO, *PKS_H264VIDEOINFO;

멤버

wWidth

디코딩 프로세스에서 출력된 그림의 너비를 픽셀 단위로 지정합니다.

이 멤버의 값은 2의 배수여야 하지만 16의 정수 배수일 필요는 없습니다. 활성 SPS(시퀀스 매개 변수 집합)에서 프레임 자르기 사각형을 사용하여 지정할 수 있습니다.

wHeight

디코딩 프로세스에서 출력된 그림의 높이를 픽셀 단위로 지정합니다.

이 멤버의 값은 2의 배수여야 합니다. 필드 코딩 또는 프레임/필드 적응 코딩을 사용하는 경우 4의 배수여야 합니다. 16의 정수 배수일 필요는 없습니다. 활성 SPS에서 프레임 자르기 사각형을 사용하여 지정할 수 있습니다.

wSARwidth

H.264 부록 E에 정의된 샘플 가로 세로 비율 너비를 지정합니다.

wSARheight와 관련하여 상대적으로 소수여야 합니다.

wSARheight

H.264 부록 E에 정의된 샘플 가로 세로 비율 높이를 지정합니다.

bSARwidth와 관련하여 상대적으로 소수여야 합니다.

wProfile

H.264 사양의 profile_idc 및 제약 조건 플래그에 설명된 대로 시퀀스 매개 변수 집합의 처음 두 바이트를 지정합니다.

이 멤버는 사용할 프로필 및 적용 가능한 제약 조건을 나타냅니다.

허용되는 값의 예는 다음과 같습니다.

Description
0x4240 제한된 기준 프로필입니다.
0x4200 기준 프로필.
0x4D00 기본 프로필입니다.
0x6400 높은 프로필.
0x5300 확장 가능한 기준 프로필입니다.
0x5600 확장성 높은 프로필.
0x7600 다중 보기 상위 프로필.
0x8000 스테레오 높은 프로필.

bLevelIDC

level_idc 플래그에 설명된 대로 수준을 지정합니다.

이 멤버는 해상도를 지원하는 최소 수준과 이 프레임 설명자의 최대 비트 속도를 나타냅니다.

허용되는 값의 예는 다음과 같습니다.

Description
0x1F 수준 3.1.
0x28 수준 4.0.

wConstrainedToolset

wProfile에서 허용하는 기능을 제한합니다.

Description
0 제약 조건이 없습니다. 선택한 wProfile 및 bmSetting 집합으로 정의된 모든 도구가 허용됩니다.
1 UC(통합 통신) 제한된 높은 도구 집합.
2 UC 확장성 제한 High1.
3 UC 확장 가능한 제한 초기 계획1.
4~65535 예약되어 있습니다.

bmSupportedUsages

지원되는 사용을 지정하는 비트맵을 정의합니다.

비트 Description
D0 실시간/UCConfig(통합 통신 구성) 모드 0.
D1 실시간/UCConfig 모드 1.
D2 실시간/UCConfig 모드 2Q.
D3 실시간/UCConfig 모드 2S.
D4 실시간/UCConfig 모드 3.
D7-D5 예약; 을 0으로 설정합니다.
D15-D8 브로드캐스트 모드.
D16 I 및 P 조각이 있는 파일 스토리지 모드(예: IPPP).
D17 I, P 및 B 조각이 있는 파일 스토리지 모드(예: IB... IP).
D18 파일 스토리지 모든 I-프레임 모드.
D23-D19 예약; 을 0으로 설정합니다.
D24 MVC 스테레오 하이 모드.
D25 MVC 다중 보기 모드.
D31-D26 예약; 을 0으로 설정합니다.

bmCapabilities

이 프레임 설명자의 기능을 지정하는 비트맵을 정의합니다.

비트 Description
D0 컨텍스트 기반 적응 변수 길이 코딩(CAVLC)만 해당합니다.
D1 컨텍스트 기반 CABAC(적응형 이진 산술 코딩)만 해당합니다.
D2 일정한 프레임 속도.
D3 루마/크로마에 대한 별도의 QP입니다.
D4 Cb/Cr에 대한 별도의 QP입니다.
D5 그림 순서를 다시 지정하지 않습니다.
D15-D6 예약; 을 0으로 설정합니다.

bmSVCCapabilities

SVC(확장 가능한 비디오 코딩) 기능을 지정하는 비트맵을 정의합니다.

비트 Description
D2-D0 최대 임시 계층 수에서 1을 뺀 값입니다.
D3 지원을 다시 작성합니다.
D6-D4 CGS(거친 확장성) 계층의 최대 개수에서 1을 뺀 값입니다.
D9-D7 MGS(중간 크기 조정 확장성) 하위 계층의 최대 수입니다.
D10 공간 향상 계층에서 추가 SNR 확장성 지원.
D13-D11 최대 공간 계층 수에서 1을 뺀 값입니다.
D31-D14 예약되어 있습니다.

bmMVCCapabilities

MVC(멀티캐스트 비디오 코딩) 기능을 지정하는 비트맵을 정의합니다.

비트 Description
D2-D0 최대 임시 계층 수에서 1을 뺀 값입니다.
D11-D3 최대 뷰 구성 요소 수에서 1을 뺀 값입니다.
D31-D11 예약되어 있습니다.

dwFrameInterval

지원되는 프레임 간격을 지정합니다.

이는 100나노초 단위로 가장 높은 프레임 속도로 지원되는 가장 짧은 프레임 간격입니다.

bMaxCodecConfigDelay

인코더가 명령에 응답하는 데 걸리는 최대 프레임 수를 지정합니다.

bmSupportedSliceModes

조각 모드를 지정하는 비트맵을 정의합니다.

비트 Description
D0 조각 모드 0.
D1 조각 모드 1.
D7-D2 예약되어 있습니다.

bmSupportedSyncFrameTypes

BYTE 멤버 bmSupportedSyncFrameTypes를 정의합니다.

bResolutionScaling

동기화 프레임 형식을 지정하는 비트맵을 정의합니다.

비트 Description
D0 SPS(시퀀스 매개 변수 집합) 및 PPS(그림 매개 변수 집합) 헤더가 있는 IDR(인스턴스 디코딩 새로 고침) 프레임입니다.
D1 장기 참조 프레임인 IDR 프레임(SPS 및 PPS 헤더 포함)입니다.
D2 임의 액세스 I 프레임(SPS 및 PPS 헤더 포함) IDR 프레임일 수도 있고 아닐 수도 있습니다.
D3 장기 참조 프레임인 P 프레임입니다.
D7-D4 예약; 을 0으로 설정합니다.

bSimulcastSupport

H.264 비디오 스트리밍 엔드포인트의 수와 이 엔드포인트에서 지원하는 스트림 수를 지정합니다.

Description
0 엔드포인트 1개와 스트림 1개.
1 하나의 엔드포인트 및 여러 스트림.

bmSupportedRateControlModes

속도 제어 모드를 지정하는 비트맵을 정의합니다.

비트 Description
D0 언더플로가 허용되는 VBR(가변 비트 속도)(H.264 low_delay_hrd_flag = 1).
D1 CBR(상수 비트 비율)(H.264 low_delay_hrd_flag = 0).
D2 상수 QP.
D3 언더플로가 허용되는 전역 VBR(H.264 low_delay_hrd_flag = 1).
D4 언더플로가 없는 VBR(H.264 low_delay_hrd_flag = 0).
D5 언더플로가 없는 전역 VBR(H.264 low_delay_hrd_flag = 0).
D7-D6 예약되어 0으로 설정됩니다.

wMaxMBperSecOneResolutionNoScalability

확장할 수 없는 AVC(Advanced Video Coding) 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층의 해상도가 동일한 경우 모든 계층에서 합산됩니다.

wMaxMBperSecTwoResolutionsNoScalability

확장할 수 없는 AVC 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정합니다. 모든 계층이 서로 다른 두 해상도로 구성된 경우 모든 계층에서 합산됩니다.

wMaxMBperSecThreeResolutionsNoScalability

확장할 수 없는 AVC 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 세 가지 해상도로 구성된 경우 모든 계층에서 합산됩니다.

wMaxMBperSecFourResolutionsNoScalability

확장할 수 없는 AVC 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 4개의 다른 해상도로 구성된 경우 모든 계층에서 합산됩니다.

wMaxMBperSecOneResolutionTemporalScalability

임시 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층의 해상도가 동일할 때 모든 계층에서 합산됩니다.

wMaxMBperSecTwoResolutionsTemporalScalablility

임시 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 서로 다른 두 해상도로 구성될 때 모든 계층에서 합산됩니다.

wMaxMBperSecThreeResolutionsTemporalScalability

임시 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 세 가지 해상도로 구성된 경우 모든 계층에서 합산됩니다.

wMaxMBperSecFourResolutionsTemporalScalability

완전히 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 4개의 다른 해상도로 구성될 때 모든 계층에서 합산됩니다.

wMaxMBperSecOneResolutionTemporalQualityScalability

임시 및 품질 확장 가능한 SVC 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층의 해상도가 동일한 경우 모든 계층에서 합산됩니다.

wMaxMBperSecTwoResolutionsTemporalQualityScalability

모든 계층이 서로 다른 두 해상도로 구성된 경우 모든 계층에서 합산하여 임시 및 품질 확장 가능한 SVC 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정합니다.

wMaxMBperSecThreeResolutionsTemporalQualityScalablity

임시 및 품질 확장 가능한 SVC 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 세 가지 해상도로 구성된 경우 모든 계층에서 합산됩니다.

wMaxMBperSecFourResolutionsTemporalQualityScalability

임시 및 품질 확장 가능한 SVC 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 4개의 다른 해상도로 구성된 경우 모든 계층에서 합산됩니다.

wMaxMBperSecOneResolutionTemporalSpatialScalability

WORD 멤버 wMaxMBperSecOneResolutionTemporalSpatialScalability를 정의합니다.

wMaxMBperSecTwoResolutionsTemporalSpatialScalability

WORD 멤버 wMaxMBperSecTwoResolutionsTemporalSpatialScalability를 정의합니다.

wMaxMBperSecThreeResolutionsTemporalSpatialScalablity

WORD 멤버 wMaxMBperSecThreeResolutionsTemporalSpatialScalablity를 정의합니다.

wMaxMBperSecFourResolutionsTemporalSpatialScalability

WORD 멤버 wMaxMBperSecFourResolutionsTemporalSpatialScalability를 정의합니다.

wMaxMBperSecOneResolutionFullScalability

완전히 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층의 해상도가 동일할 때 모든 계층에서 합산됩니다.

wMaxMBperSecTwoResolutionsFullScalability

완전히 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 서로 다른 두 해상도로 구성될 때 모든 계층에서 합산됩니다.

wMaxMBperSecThreeResolutionsFullScalability

완전히 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 세 가지 해상도로 구성된 경우 모든 계층에서 합산됩니다.

wMaxMBperSecFourResolutionsFullScalability

완전히 확장 가능한 스트림에 허용되는 최대 매크로 블록 처리 속도를 지정하며, 모든 계층이 4개의 다른 해상도로 구성될 때 모든 계층에서 합산됩니다.

설명

KS_H264VIDEOINFO 구조체에는 프레임 및 서식 설명자 정보가 포함됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8
지원되는 최소 서버 Windows Server 2012
머리글 ksmedia.h(Ksmedia.h 포함)

추가 정보

KS_DATAFORMAT_H264VIDEOINFO

KS_DATARANGE_H264_VIDEO