Audio + visual deepfake detection · runs on your device

Is that video real?

VerifAI looks at the faces and listens to the voice. Drop in a short clip and two neural networks — one for frames, one for audio — decide whether it has been manipulated. Everything runs in your browser: the video never leaves your device.

  • 0.996ROC-AUC on FakeAVCeleb
  • 4benchmark datasets
  • 0 bytesof your video uploaded
verifai / detect On-device · 32 MB model

Research prototype — a probability, not proof. Analysis runs locally with WebAssembly; your video is never uploaded or stored.

How it works

Two senses, one verdict

Most deepfake detectors only look. VerifAI also listens — and if a clip has no usable audio it automatically falls back to a vision-only path. The whole pipeline runs inside your browser with ONNX Runtime Web.

01

Sample

Five evenly spaced frames are pulled from the clip and resized to 224×224. The audio track is resampled to 16 kHz.

02

Analyse

Visual

Xception CNN scores each frame for face-swap and re-enactment artefacts.

Audio

40 MFCC coefficients → ResNet-18 scores the voice for synthesis artefacts.

03

Fuse

A calibrated logistic-regression layer combines both probabilities (late fusion). No audio? The visual score is used on its own.

04

Decide

The fake-probability is compared with a threshold tuned on validation data for balanced accuracy.

Video clip 5 frames · 224² Audio · MFCC 40 Xception ResNet-18 Fusion P(fake) p_visual p_audio

Results

Measured, not promised

Held-out test sets with subject-level splits (no identity overlap between train and test).

99.5%Balanced accuracyHybrid AV · FakeAVCeleb · n = 2,115
0.996ROC-AUCHybrid AV · FakeAVCeleb
0.977ROC-AUCVisual model · 3 datasets · n = 3,567
1.000ROC-AUCVisual model · DeeperForensics
Visual model (Xception, trained on all datasets) — per test set
DatasetSamplesBalanced acc.ROC-AUC
DeeperForensics-1.074098.7%1.000
FakeAVCeleb v1.22,11597.8%0.991
FaceForensics++ (C23)71256.8%0.588

Known limitations

  • Heavily compressed footage (FaceForensics++ C23) remains hard for the visual branch.
  • Benchmark-trained detectors generalise poorly to in-the-wild recordings: in a cross-dataset test on authentic user videos, the FF++ baseline flagged most genuine clips as fake. Treat every score as a signal, not a verdict.
  • Trained on face-centric talking-head content; screen recordings, animations or clips without faces are out of distribution.

Paper & code

Open for scrutiny

Journal paper · in preparation

VerifAI: A Multimodal Audio-Visual Framework for Deepfake Detection

Giulio Dajani, Razia Sulthana Abdul Kareem

Trained and evaluated on FaceForensics++, Celeb-DF v2, DeeperForensics-1.0 and FakeAVCeleb v1.2. Winner of the Best Undergraduate Project award, University of Greenwich.

Cite this software
@software{dajani2026verifai,
  author = {Dajani, Giulio},
  title  = {{VerifAI}: Multimodal Deepfake Detection Framework},
  year   = {2026},
  url    = {https://github.com/giuliolabs/VerifAI},
  note   = {Live demo: https://vrifai.com}
}

The browser runs int8-compressed ONNX exports of the same checkpoints as the Python API (backend/); scripts/check_onnx_parity.py compares the two.