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 포함) |