가상 배경
영상 통화에서 가상 배경(virtual background) 기능을 이용해 배경을 흐리게 하거나 이미지로 대체할 수 있습니다. 여기서는 가상 배경 기능을 사용하는 방법을 설명합니다.
지원 통화 유형 | 최소 SDK 버전 |
---|---|
1대1 통화, 그룹 통화(컨퍼런스) | PlanetKit 6.0 |
가상 배경 효과를 적용하면 CPU 사용량이 증가합니다.
개요
CameraController
클래스에서 가상 배경 기능을 위한 API를 제공합니다. 가상 배경을 설정하기 위한 CameraController
객체를 얻으려면 PlanetKitManager::GetCameraController()
를 사용하세요.
PlanetKit::PlanetKitManagerPtr pPlanetKitManager = PlanetKit::PlanetKitManager::GetInstance();
PlanetKit::CameraControllerPtr pCameraController = pPlanetKitManager->GetCameraController();
흐린 배경 설정하기
배경에 흐림(blur) 효과를 적용하려면 SetVirtualBackgroundWithBlur()
메서드를 호출하세요.
float blurRadius = 15.0;
pCameraController->SetVirtualBackgroundWithBlur(blurRadius);
SetVirtualBackgroundWithBlur()
메서드에는 가상 배경에 적용되는 가우시안 블러(Gaussian blur)의 반경을 인자로 전달할 수 있습니다. 반경의 기본값은 15.0이고, 1.0부터 25.0까지 값으로 설정하는 것을 권장합니다. 반경이 클수록 결과는 더 흐릿해집니다.
이미지 배경 설정하기
배경을 이미지로 교체하려면 PlanetKit::Image
객체를 인자로 하여 SetVirtualBackgroundWithImage()
메서드를 호출하세요.
std::wstring virtualBackgroundPath = L"<PATH_TO_BACKGROUND_IMAGE>";
auto image = PlanetKit::Image::Create(virtualBackgroundPath.c_str());
if (image.HasValue()) {
pCameraController->SetVirtualBackgroundWithImage(*image);
}
가상 배경 유형 확인하기
현재 사용 중인 가상 배경의 유형을 확인하려면 GetCurrentVirtualBackgroundType()
메서드를 호출하세요. 반환된 PlanetKit::EVirtualBackgroundType
은 PLNK_VIRTUAL_BACKGROUND_NONE
, PLNK_VIRTUAL_BACKGROUND_BLUR
, PLNK_VIRTUAL_BACKGROUND_IMAGE
중 하나입니다.
PlanetKit::EVirtualBackgroundType backgroundType;
backgroundType = pCameraController->GetCurrentVirtualBackgroundType();
가상 배경 해제하기
가상 배경을 해제하려면 ClearVirtualBackground()
메서드를 호출하세요.
pCameraController->ClearVirtualBackground();
관련 API
가상 배경 기능과 관련된 API는 다음과 같습니다.