다음을 통해 공유


KS_VIDEO_STREAM_CONFIG_CAPS 구조체(ksmedia.h)

KS_VIDEO_STREAM_CONFIG_CAPS 구조는 아날로그 비디오 표준(예: NTSC, PAL 또는 SECAM), 크기 조정 및 자르기 기능을 포함하여 비디오 스트림의 구성 및 기능을 설명합니다. 최소 및 최대 프레임 속도; 및 최소 및 최대 데이터 속도입니다.

구문

typedef struct _KS_VIDEO_STREAM_CONFIG_CAPS {
  GUID     guid;
  ULONG    VideoStandard;
  SIZE     InputSize;
  SIZE     MinCroppingSize;
  SIZE     MaxCroppingSize;
  int      CropGranularityX;
  int      CropGranularityY;
  int      CropAlignX;
  int      CropAlignY;
  SIZE     MinOutputSize;
  SIZE     MaxOutputSize;
  int      OutputGranularityX;
  int      OutputGranularityY;
  int      StretchTapsX;
  int      StretchTapsY;
  int      ShrinkTapsX;
  int      ShrinkTapsY;
  LONGLONG MinFrameInterval;
  LONGLONG MaxFrameInterval;
  LONG     MinBitsPerSecond;
  LONG     MaxBitsPerSecond;
} KS_VIDEO_STREAM_CONFIG_CAPS, *PKS_VIDEO_STREAM_CONFIG_CAPS;

멤버

guid

비디오 형식 유형을 지정하는 GUID입니다. 가능한 값은 다음과 같습니다.

  • KSDATAFORMAT_SPECIFIER_VIDEOINFO

  • KSDATAFORMAT_SPECIFIER_VIDEOINFO2

  • KSDATAFORMAT_SPECIFIER_ANALOGVIDEO

  • KSDATAFORMAT_SPECIFIER_VBI

  • KSDATAFORMAT_SPECIFIER_MPEG1_VIDEO

  • KSDATAFORMAT_SPECIFIER_MPEG2_VIDEO

이 GUID는 DirectShow AM_MEDIA_TYPE 열거형과 동일합니다. AM_MEDIA_TYPE 대한 자세한 내용은 DirectX SDK 설명서를 참조하세요.

VideoStandard

스트림에서 지원하는 아날로그 비디오 표준을 지정합니다. 이 멤버는 KS_AnalogVideoStandard 열거형에서 하나 이상의 (논리적으로 ORed) 값으로 설정할 수 있습니다.

InputSize

들어오는 신호의 크기를 지정합니다. InputSize 는 이미지 사각형의 너비와 높이를 픽셀 단위로 나타냅니다. 필터가 고유한 각 픽셀을 사용하여 디지털화할 수 있는 가장 큰 신호입니다.

MinCroppingSize

DataRange 멤버와 연결된 KS_VIDEOINFOHEADER 구조체의 rcSource 멤버에 지정된 대로 허용되는 가장 작은 자르기 사각형을 지정합니다.

MaxCroppingSize

DataRange 멤버와 연결된 KS_VIDEOINFOHEADER 구조체의 rcSource 멤버에 지정된 대로 허용되는 가장 큰 자르기 사각형을 지정합니다.

CropGranularityX

자르기 크기의 가로 세분성을 지정합니다. 예를 들어 유효한 너비를 4의 배수로 지정할 수 있습니다.

CropGranularityY

자르기 크기의 세로 세분성을 지정합니다. 예를 들어 유효한 높이를 4의 배수로 지정할 수 있습니다.

CropAlignX

InputSize 내에서 자르기 사각형의 가로 맞춤을 지정합니다. 예를 들어 미니 드라이버는 유효한 사각형이 4의 배수인 경계에서 시작되도록 지정할 수 있습니다.

CropAlignY

InputSize 내에서 자르기 사각형의 세로 맞춤을 지정합니다. 예를 들어 미니 드라이버는 유효한 사각형이 4의 배수인 경계에서 시작되도록 지정할 수 있습니다.

MinOutputSize

이 핀이 생성할 수 있는 가장 작은 비트맵을 지정합니다.

MaxOutputSize

이 핀이 생성할 수 있는 가장 큰 비트맵을 지정합니다.

OutputGranularityX

출력 비트맵 너비의 세분성을 지정합니다.

OutputGranularityY

출력 비트맵 높이의 세분성을 지정합니다.

StretchTapsX

필터가 이미지의 너비를 얼마나 늘릴 수 있는지를 나타내기 위해 다음 값 중 하나를 지정합니다.

의미
0 필터를 늘릴 수 없습니다.
1 필터는 픽셀 이중을 사용하여 스트레칭을 수행합니다.
2 필터는 보간을 사용합니다(2개 탭).
3 필터는 더 높은 순서(더 부드러운) 형태의 보간을 사용합니다.

StretchTapsY

필터가 이미지의 높이를 얼마나 확장할 수 있는지를 나타내기 위해 다음 값 중 하나를 지정합니다.

의미
0 필터를 늘릴 수 없습니다.
1 필터는 픽셀 이중을 사용하여 스트레칭을 수행합니다.
2 필터는 보간을 사용합니다(2개 탭).
3 필터는 더 높은 순서(더 부드러운) 형태의 보간을 사용합니다.

ShrinkTapsX

필터가 이미지의 너비를 얼마나 줄일 수 있는지를 나타내기 위해 다음 값 중 하나를 지정합니다.

의미
0 필터를 축소할 수 없습니다.
1 필터는 축소를 달성하기 위해 픽셀의 일부 행을 제거합니다.
2 필터는 보간을 사용합니다(2개 탭).
3 필터는 더 높은 순서(더 부드러운) 형태의 보간을 사용합니다.

ShrinkTapsY

필터가 이미지 높이를 얼마나 줄일 수 있는지를 나타내기 위해 다음 값 중 하나를 지정합니다.

의미
0 필터를 축소할 수 없습니다.
1 필터는 축소를 달성하기 위해 픽셀의 일부 열을 제거합니다.
2 필터는 보간을 사용합니다(2개 탭).
3 필터는 더 높은 순서(더 부드러운) 형태의 보간을 사용합니다.

MinFrameInterval

허용되는 최소 프레임 속도를 지정합니다. 이 값은 캡처 필터에만 적용됩니다.

MaxFrameInterval

허용되는 최대 프레임 속도를 지정합니다. 이 값은 캡처 필터에만 적용됩니다.

MinBitsPerSecond

이 핀이 생성할 수 있는 최소 데이터 속도(초당 비트)를 지정합니다.

MaxBitsPerSecond

이 핀이 생성할 수 있는 최대 데이터 속도(초당 비트)를 지정합니다.

설명

KS_VIDEO_STREAM_CONFIG_CAPS 구조체는 DirectShow VIDEO_STREAM_CONFIG_CAPS 구조체와 동일합니다.

이 구조체의 멤버 간의 관계를 이해하는 것이 중요합니다. 예를 들어 일부 구조체 멤버에 대해 다음 값을 가정합니다.

MinCroppingSize = (160, 120)

MaxCroppingSize = (320, 240)

CropGranularityX = 4

CropGranularityY = 8

이러한 값은 유효한 자르기 크기가 MinCroppingSize에서 시작되고 CropGranularityXCropGranularityYy 방향에서 x 방향의 단계가 증가함을 나타냅니다. 이 경우 x-value는 160~320픽셀, 4단계의 어느 곳에나 있을 수 있으며 , y-value는 8단계에서 120~240픽셀까지일 수 있습니다.

예제 시나리오에서 유효한 크기 중 일부는 다음과 같습니다.

  • 160 × 120, 164 × 120, 168 × 120, 172 × 120 등.

  • 160 × 128, 164 × 128, 168 × 128, 172 × 128 등.

  • 160 × 136, 164 × 136, 168 × 136, 172 × 136 등.

CropAlignXCropAlignY 는 자르기 사각형이 입력 크기 사각형 내에 위치할 수 있는 위치를 나타냅니다. 160 × 120 자르기 사각형과 CropAlignX의 경우 2 값, CropAlignY의 경우 4 값을 지정하면 KS_VIDEOINFOHEADER 구조체의 rcSource 멤버에 대한 유효한 값 중 일부는 다음과 같습니다.

  • (0, 0, 160, 120)

  • (2, 0, 162, 120)

  • (2, 4, 162, 124)

  • (2, 8, 162, 128)

320 × 240 자르기 사각형과 동일한 자르기 맞춤 값(2, 4, 322, 244)의 경우 여러 유효한 사각형의 한 예입니다.

위에서 설명한 MinCroppingSize, MaxCroppingSize, CropGranularityX, CropGranularityY, CropAlignXCropAlignY 멤버는 함께 작동하여 출력 핀의 미디어 형식을 설명하는 KS_VIDEOINFOHEADER 구조에 유효한 rcSource 값을 지정합니다. 나머지 구조체 멤버(MinOutputSize, MaxOutputSize, OutputGranularityXOutputGranularityY)는 핀의 미디어 형식 KS_VIDEOINFOHEADER 구조체에 포함된 KS_BITMAPINFOHEADER 구조체의 biWidthbiHeight 멤버를 설명합니다.

요구 사항

요구 사항
헤더 ksmedia.h(Ksmedia.h 포함)

추가 정보

KS_AnalogVideoStandard

KS_BITMAPINFOHEADER

KS_VIDEOINFOHEADER