AVICOMPRESSOPTIONS 구조체(vfw.h)
AVICOMPRESSOPTIONS 구조체에는 스트림 및 스트림이 압축 및 저장되는 방법에 대한 정보가 포함됩니다. 이 구조체는 데이터를 AVIMakeCompressedStream 함수(또는 AVIMakeCompressedStream을 사용하는 AVISave 함수)에 전달합니다.
구문
typedef struct {
DWORD fccType;
DWORD fccHandler;
DWORD dwKeyFrameEvery;
DWORD dwQuality;
DWORD dwBytesPerSecond;
DWORD dwFlags;
LPVOID lpFormat;
DWORD cbFormat;
LPVOID lpParms;
DWORD cbParms;
DWORD dwInterleaveEvery;
} AVICOMPRESSOPTIONS, *LPAVICOMPRESSOPTIONS;
멤버
fccType
스트림 형식을 나타내는 4자 코드입니다. AVI 스트림에서 일반적으로 발견되는 데이터에 대해 다음 상수가 정의되었습니다.
상수 | Description |
---|---|
|
오디오 스트림을 나타냅니다. |
|
MIDI 스트림을 나타냅니다. |
|
텍스트 스트림을 나타냅니다. |
|
비디오 스트림을 나타냅니다. |
fccHandler
저장될 때 이 비디오 스트림을 압축하는 압축기 처리기에 대한 4자 코드(예: mmioFOURCC ('M','S','V','C')). 이 멤버는 오디오 스트림에 사용되지 않습니다.
dwKeyFrameEvery
비디오 키 프레임 사이의 최대 기간입니다. 이 멤버는 AVICOMPRESSF_KEYFRAMES 플래그가 설정된 경우에만 사용됩니다. 그렇지 않으면 모든 비디오 프레임이 키 프레임입니다.
dwQuality
비디오 압축기로 전달된 품질 값입니다. 이 멤버는 오디오 압축기에서 사용되지 않습니다.
dwBytesPerSecond
비디오 압축기 데이터 속도. 이 멤버는 AVICOMPRESSF_DATARATE 플래그가 설정된 경우에만 사용됩니다.
dwFlags
압축에 사용되는 플래그입니다. 다음 값이 정의됩니다.
Name | Description |
---|---|
|
dwBytesPerSecond에 지정된 데이터 속도를 사용하여 이 비디오 스트림을 압축합니다. |
|
이 스트림은 첫 번째 스트림과 관련하여 모든 dwInterleaveEvery 프레임을 인터리브합니다. |
|
적어도 모든 dwKeyFrameEvery 프레임에 키 프레임을 사용하여 이 비디오 스트림을 저장합니다. 기본적으로 모든 프레임은 키 프레임이 됩니다. |
|
이 구조의 데이터를 사용하여 AVISaveOptions의 기본 압축 값을 설정합니다. 빈 구조체가 전달되고 이 플래그가 설정되지 않은 경우 일부 기본값이 선택됩니다. |
lpFormat
데이터 형식을 정의하는 구조체에 대한 포인터입니다. 오디오 스트림의 경우 LPWAVEFORMAT 구조체입니다.
cbFormat
lpFormat에서 참조하는 데이터의 크기(바이트)입니다.
lpParms
비디오 압축기 관련 데이터; 내부적으로 사용됩니다.
cbParms
lpParms에서 참조하는 데이터의 크기(바이트)입니다.
dwInterleaveEvery
스트림 데이터를 첫 번째 스트림의 데이터와 혼합하기 위한 인터리브 요소입니다. AVICOMPRESSF_INTERLEAVE 플래그가 설정된 경우에만 사용됩니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
머리글 | vfw.h |
추가 정보
AVIFile 함수 및 매크로