CImageAllocator 클래스
[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드가 DirectShow 대신 Media Foundation에서 MediaPlayer, IMFMediaEngine 및 오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]
클래스는 CImageAllocator
GDI 디바이스 독립적 비트맵(DIB)을 관리하는 할당자를 구현합니다. 이 클래스는 CBaseAllocator 클래스에서 파생됩니다.
CImageSample 클래스를 사용하여 구현되는 미디어 샘플을 만듭니다.
할당자는 연결된 두 핀에서 공유되지만 항상 연결의 필터 중 하나가 소유합니다. 를 사용하는 CImageAllocator
필터는 할당자가 자체 또는 다른 필터에서 제공되었는지 여부를 추적해야 합니다. 할당자가 자체에서 제공된 경우 소유 필터는 할당자의 모든 미디어 샘플이 CImageSample 개체라는 사실에 의존할 수 있습니다. 따라서 CImageSample 개체를 사용하여 DIBDATA 구조에 저장된 DIB에 대한 정보를 가져올 수 있습니다.
소유 필터는 미디어 유형이 변경되면 NotifyMediaType 을 호출해야 합니다.
보호된 멤버 변수 | Description |
---|---|
m_pFilter | 소유 필터에 대한 포인터입니다. |
m_pMediaType | 현재 미디어 형식에 대한 포인터입니다. |
Protected 메서드 | Description |
Alloc | 버퍼에 대한 메모리를 할당합니다. |
CheckSizes | 현재 미디어 형식에 대해 할당자 속성을 확인합니다. |
CreateDIB | DIB를 만듭니다. |
CreateImageSample | 미디어 샘플을 만듭니다. 가상. |
무료 | 모든 버퍼 메모리를 해제합니다. |
Public 메서드 | Description |
CImageAllocator | 생성자 메서드입니다. |
NotifyMediaType | 개체에 현재 미디어 형식을 알릴 수 있습니다. |
IMemAllocator 메서드 | Description |
SetProperties | 할당할 버퍼 수와 각 버퍼의 크기를 지정합니다. |
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|
라이브러리 |
|