SDK 2.0.0. C++ API는 Windows와 공유합니다. 열거형: 파라미터 열거형.
resource_path를 resource.fbd로 지정
디렉터리가 아니라 파일을 전달하세요.
fopen을 깨지 않게 하세요.
엔진 하나, 직렬 ProcessImage
Create는 세션당 엔진 하나를 반환하며 프로세스 전역 싱글톤이 아닙니다. ImageFrame과 엔진은 스레드 안전하지 않습니다. ProcessImage와 상태를 바꾸는 호출은 한 스레드에서 직렬화하세요.
- GL 컨텍스트가 현재인 스레드에서 엔진을 만들고 처리하세요. 입력과 출력 텍스처는 그 컨텍스트에 속해야 합니다. CPU 프레임에는 호출 측 GL 컨텍스트가 필요 없습니다. 설정에 컨텍스트 플래그는 없습니다.
프레임의 FrameType
큰 정지 이미지(미리보기와 내보내기)
고해상도 정지 이미지에서는 슬라이더마다 원본 픽셀을ProcessImage에 넣지 마세요. 축소한 뒤 원본을 버리지 마세요.
사진을 열면 전체 버퍼를 유지하고 미리보기 프레임을 한 장 만드세요(긴 변 약 1280–1440). 파라미터 조절은 미리보기(FrameType::Image)를 처리하고, 내보내기는 같은 setter로 전체 해상도를 한 번 더 처리합니다. 출력 크기는 입력과 같습니다. 카메라 미리보기는 캡처 해상도 + FrameType::Video입니다.
강도와 피부만
실시간:0.15–0.3 근처에서 시작하세요. 리셰이프는 [-1.0, 1.0]입니다. SetBeautySkinOnly(true)를 사용해 스무딩이 피부에만 적용되게 하세요.
필터와 스티커
.fbd 경로 또는 바이트입니다. 다음 ProcessImage에서 적용됩니다. 매 프레임 에셋을 바꾸지 마세요.
GetStats
공유 라이브러리
- 개발:
LD_LIBRARY_PATH - 배포:
RPATH/RUNPATH, 또는/usr/local/lib에 설치 +ldconfig libfacebetter.so와 헤더는 같은 SDK 빌드에서 가져오세요(./scripts/build_linux.sh또는 다운로드 zip)
OpenGL
- GL 컨텍스트가 현재인 스레드에서 엔진을 만들고 처리하세요. 입력과 출력 텍스처는 그 컨텍스트에 속해야 합니다. CPU 프레임에는 호출 측 GL 컨텍스트가 필요 없습니다. 설정에 컨텍스트 플래그는 없습니다.
유휴 시 일시 중지
창이 unmapped이면ProcessImage를 건너뛰세요. 세션이 끝나면 engine.reset()을 호출하세요.
인증
오프라인 호스트에는license_token, 그렇지 않으면 app_id + app_key 온라인 v2. 시크릿은 소스가 아니라 env/config에서 로드하세요. 인증 및 라이선스를 참고하세요.
