# Background segmentation (blur & replacement) freezes the render thread on Pixel 10 Pro (Tensor G5) — Android SDK 5.6.22

**URL:** <https://forum.deepar.ai/t/background-segmentation-blur-replacement-freezes-the-render-thread-on-pixel-10-pro-tensor-g5-android-sdk-5-6-22/1324>\
**Category:** SDK\
**Created:** [September 1, 2026, 9:15am UTC](https://forum.deepar.ai/t/background-segmentation-blur-replacement-freezes-the-render-thread-on-pixel-10-pro-tensor-g5-android-sdk-5-6-22/1324 "2026-09-01T09:15:44Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![natezab](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.deepar.ai/natezab/32/1270_2.png) [@natezab](https://forum.deepar.ai/u/natezab)\
**Post date:** [September 1, 2026, 9:15am UTC](https://forum.deepar.ai/t/background-segmentation-blur-replacement-freezes-the-render-thread-on-pixel-10-pro-tensor-g5-android-sdk-5-6-22/1324/1 "2026-09-01T09:15:44Z")

</div>

All face/mask/makeup effects work perfectly, but **every background-segmentation effect hard-freezes the render thread** — the preview stops updating permanently and the app must be force-closed.

**Environment**

- DeepAR Android SDK **5.6.22** (`ai.deepar.ar:DeepAR:5.6.22`)
- **Pixel 10 Pro — Tensor G5** , Android 17 (API 37), build CP2A.260805.005
- Integration: CameraX `ImageAnalysis` (RGBA\_8888, front, mirrored) → `receiveFrame(...)`; render via `setRenderSurface()` to a `SurfaceView`. Matches your `quickstart-android-java`.
- Manifest has `<uses-native-library android:name="libOpenCL.so" android:required="false"/>` and `libOpenCL-pixel.so`.

**Reproduces with all three** (identical freeze):

1. `switchEffect("effect", ".../galaxy_background.deepar")` (background replacement)
2. the built-in `background_blur.deepar` via `switchEffect`
3. the `backgroundBlur(true, 50)` API (no effect file)

Logcat the instant a background effect is applied, then the render thread hangs:

```auto
I/tflite: Created TensorFlow Lite delegate for GPU.
I/tflite: Loaded OpenCL library with dlopen.
I/tflite: Replacing 175 out of 175 node(s) with delegate (TfLiteGpuDelegateV2) node, yielding 1 partitions for subgraph 0.

```

It appeared to work once, then began freezing consistently.

**Ruled out** (all still freeze): clearing app cache/storage; a full **device reboot** ; running the call **off the main thread** ; `backgroundBlur()` API vs the `.deepar` file; OpenCL `<uses-native-library>` present (and, as a test, removed — TFLite then falls through to the ICD loader / GL and still engages the GPU). Latest SDK (5.6.22).

Likely the segmentation model (~175 nodes) on the **TFLite GPU/OpenCL delegate** hangs the Tensor G5 GPU; face tracking doesn’t hit that path, so it’s fine.

**Questions**

1. Is there any way — an init option, an undocumented flag, or a DeepAR Studio per-effect setting — to **force CPU inference / disable the GPU delegate** for segmentation?
2. Is the **Tensor G5 (Pixel 10 Pro)** GPU a known-incompatible target for background segmentation? Is a fix planned?

Seems related to the open thread “switchEffect()/switchEffectWithPath() silently hangs forever on Android — no error, no callback.”
