Native face replacement · Mac + Android

New faces.
Same scene.

Replace selected people while the video plays. Bind each role to a different face, keep everyone else unchanged, and process the frame on your own device.

Research prototype · Selected-device validation · Partnership enquiries

ROLE MAPPING / 04 SUBJECTS↗
A → 01
B → 02
C
D
C + D remain unchanged

Interactive mapping illustration, not rendered face-swap footage. Try the toggles or switch positions.

Up to 4 facesIndependent replacements in a frame
Identity-based bindingFollows the person, not their position
On-device processingFrames and role references stay local
Native pipelineC++ core with platform acceleration
Two platforms, one role-based approach

Built around the screen
you already use.

Two native prototypes. Shared role-matching concepts, with capture and display tailored to each operating system.

MACOS

An overlay beside your video.

Select a video window and manage replacements from a compact floating toolbar. Collapse it to a circle while the source player remains usable.

  • Saved role bindings and reference photos
  • Per-role matching thresholds and diagnostics
  • Metal compositing and Core ML inference
ANDROID

Stay in the app you’re watching.

Share a selected app through Android’s system screen-capture flow. A floating role panel manages references without returning to the launcher.

  • Native C++ processing through JNI
  • GPU / NPU acceleration on supported devices
  • Face-only overlay with touch pass-through
People, not coordinates

One role. Many appearances.

A person can move, leave the scene, return, or appear in a photograph. Every visible instance needs its own identity confirmation.

01

Select the original person

Choose a detected face from the original video. This becomes the identity reference for the role.

02

Choose the replacement face

Assign a different replacement image to each role. The replacement photo is not used to identify the original person.

03

Refine the reference set

Add other poses of the same person, inspect matching scores, and remove individual samples. References and thresholds persist.

Read the role-binding guide ↗
Evidence over headline frame rates

Timings with
the context attached.

A fast model does not automatically mean smooth screen playback. We keep engine timing, actual output rate, capture, and display separate.

See measurements and limitations ↗
Mac prototype · fixed 1080p still fixture

Four simultaneous face replacements

18.19 ms
24.09 ms

450 frames paced at 30 fps; 3 processing frames exceeded 33.33 ms. These are engine timings on a repeated still image, not an end-to-end moving-video guarantee.

Before we work together

A few useful
distinctions.

Does this run in a browser?

The current face-replacement engines run as native Mac and Android apps. This website introduces the technology; it does not upload or process your video.

Can I replace two people differently?

Yes. Roles A and B can use different replacement photos. Binding uses identity references, rather than left-to-right face order. Unbound people remain unchanged.

What if the same person appears twice?

Each visible instance is tracked and confirmed independently. The same role can then use the same replacement face for both instances, including a face visible in a photograph.

Are 30 fps and difficult side profiles guaranteed?

No. The prototype has selected-fixture measurements, while robust end-to-end performance under motion, cuts, occlusion and large head rotations remains under evaluation.

Is there a production SDK available today?

This is a technical prototype for integration discussions. The current model bundle includes research-restricted pretrained models; commercial distribution requires appropriately licensed models and a separate integration scope.

Build something with it

Have an integration
in mind?

Tell us the target device, number of faces, video source and deployment needs. We can discuss technical evaluation, custom integration and distribution partnerships.

hello@swapweave.click

Technical evaluationCustom integrationDistribution

Opens a draft in your email app. Review and send it there. This page does not upload your form entries.