CSCA-Net: audio-visual deepfake detector for code-switched Hindi–English (Hinglish) video
Trained checkpoints of CSCA-Net, the reference detector of the paper
P. Raj, P. Goel and R. Singh, "HiAV-Mix: A Code-Switched Hindi–English Audio-Visual Deepfake Benchmark for Messaging-App Misinformation, with Quantitatively Evaluated Explanations", submitted, 2026.
Code, configurations, training logs and all benchmark results: https://github.com/rajpriyam99/Deepfake--HiAV-Mix
Files
| File | Seed | Best epoch | Temperature | Size |
|---|---|---|---|---|
csca_net_full_s0.pt |
0 | 13 | 1.388 | 47 MB |
csca_net_full_s1.pt |
1 | 8 | 0.670 | 47 MB |
csca_net_full_s2.pt |
2 | 6 | 0.731 | 47 MB |
Each file holds the configuration, the exponential-moving-average (EMA) weights used for all reported results (11.6 M parameters), the temperature for calibrated probabilities, and the validation metrics at the best epoch.
Usage
git clone https://github.com/rajpriyam99/Deepfake--HiAV-Mix
cd Deepfake--HiAV-Mix && pip install -r requirements.txt
from exav.training.trainer import load_checkpoint
from exav.serving.inference import infer_video, load_npz_raw
model, cfg, temperature = load_checkpoint("csca_net_full_s0.pt", "cpu")
clip = load_npz_raw("clip.npz") # preprocessed clip: python -m exav preprocess --video clip.mp4 --out clip.npz
result = infer_video(model, cfg, clip, "cpu", temperature)
print(result["prob_fake"]) # calibrated probability that the video is fake
A forensic report (frame-level fake curve, temporal KernelSHAP, Grad-CAM++) is produced by
python -m exav explain --ckpt csca_net_full_s0.pt --npz clip.npz.
Input
A window of 64 frames at 25 fps (2.56 s) with 88×88 mouth crops, 112×112 face crops and 16 kHz mono audio. Longer videos are scored with sliding windows.
Results on the HiAV-Mix test set (mean ± SD over the three seeds)
| Measure | Value |
|---|---|
| Clip AUC | 83.0 ± 0.9 |
| Average precision | 87.1 ± 0.7 |
| Equal error rate | 26.6 ± 2.5 |
| TPR at 1% FPR | 35.1 ± 8.1 |
| Frame-level AUC | 84.5 ± 2.5 |
| AUC under WhatsApp-style transcoding (5 profiles) | 81.8 – 83.1 |
| AUC on unseen generators (leave-one-out, seed 0) | 72.4 – 83.1 |
| AUC on FakeAVCeleb (cross-dataset) | 69.7 ± 0.6 |
Limitations and intended use
- The models were trained on 15 speakers, all public figures in VoxCeleb2 interviews, with four generators (XTTS-v2, kNN-VC, Seed-VC and LatentSync 1.5).
- There are no face-swap or GAN-generated fakes in the training data.
- Performance drops on unseen generators and datasets, and is weakest for lip-sync fakes with genuine audio (AUC 69.1).
- The models are research artefacts. They are not a basis for automated decisions about individuals, and every detection should be reviewed by a human.
- The post-hoc attributions in the reports reveal what the detector relies on. They do not reliably localise the manipulation; the model's frame-level fake curve should be used for that.
Training data
HiAV-Mix contains manipulated videos of real people. It is not public and is shared only on request, for research, under a data-use agreement.
Citation
@article{raj2026hiavmix,
title = {{HiAV-Mix}: A Code-Switched {Hindi--English} Audio-Visual Deepfake Benchmark for Messaging-App
Misinformation, with Quantitatively Evaluated Explanations},
author = {Raj, Priyam and Goel, Paurav and Singh, Ranjit},
journal = {submitted},
year = {2026},
url = {https://github.com/rajpriyam99/Deepfake--HiAV-Mix}
}