SDK 2.0.0. La API C++ se comparte con Windows. Enumeraciones: Enumeraciones de parámetros.
Apunta resource_path a resource.fbd
Pasa el archivo, no un directorio:
fopen.
Un motor, ProcessImage serial
Create devuelve un motor para la sesión, no un singleton de proceso. ImageFrame y el motor no son thread-safe. Serializa ProcessImage y los setters que mutan en un solo hilo.
- Crea el motor y procesa en el hilo cuyo contexto GL es el actual. Las texturas de entrada y salida deben pertenecer a ese contexto. Los fotogramas de CPU no necesitan un contexto GL del llamador. La config no tiene un flag de contexto.
FrameType en el fotograma
Fotos grandes (vista previa y exportación)
No envíes píxeles a resolución completa aProcessImage en cada movimiento del deslizador, ni tires el original después de escalar.
Al abrir la foto, conserva el búfer completo y crea un fotograma de vista previa (lado largo unos 1280–1440). Los ajustes procesan la vista previa (FrameType::Image). La exportación procesa un fotograma a resolución completa con los mismos setters. El tamaño de salida coincide con la entrada. La cámara sigue en resolución de captura + FrameType::Video.
Intensidades y solo piel
Tiempo real: empieza alrededor de0.15–0.3. El remodelado es [-1.0, 1.0]. Usa SetBeautySkinOnly(true) para que el suavizado se quede en la piel.
Filtros y stickers
Ruta o bytes.fbd. Entra en vigor en el siguiente ProcessImage. No cambies assets en cada fotograma.
GetStats
Biblioteca compartida
- Desarrollo:
LD_LIBRARY_PATH - Distribución:
RPATH/RUNPATH, o instalar en/usr/local/lib+ldconfig - Mantén
libfacebetter.soy los headers de la misma build del SDK (./scripts/build_linux.sho el zip de descarga)
OpenGL
- Crea el motor y procesa en el hilo cuyo contexto GL es el actual. Las texturas de entrada y salida deben pertenecer a ese contexto. Los fotogramas de CPU no necesitan un contexto GL del llamador. La config no tiene un flag de contexto.
Pausar cuando está inactivo
OmiteProcessImage cuando la ventana no está mapeada. engine.reset() cuando termine la sesión.
Autenticación
license_token para hosts sin conexión; si no, app_id + app_key v2 en línea. Carga secretos desde env/config, no desde el código fuente. Consulta Autenticación y licencia.
