CAST-ASD: Causal Attention over Speakers and Time for Online Active Speaker Detection
Authors: Pratham Gupta, Haotian Qi, Tushar Sandhan, Gabriel Skantze
Organizations: Department of Electrical Engineering, Indian Institute of Technology Kanpur · Department of Speech, Music and Hearing, KTH Royal Institute of Technology
We present CAST-ASD (Causal Attention over Speakers and Time), a causal joint model for active speaker detection (ASD). Recent ASD models improve performance by jointly processing all faces in a scene, but operate offline, with the full clip available before any frame is labelled. Low-latency causal detectors instead process each face independently. CAST-ASD combines joint face reasoning with fully causal inference. It applies scene-level attention across faces within the current frame and causal temporal attention over each face's history, enabling information sharing across speakers with zero lookahead. Its parameter count does not grow with the number of faces. On MSDWild, where most negative face-frames contain a visible competing speaker, CAST-ASD reduces competing-speaker false alarms by 32% relative to the causal per-face detector it extends, with larger gains as scene occupancy increases. It outperforms all causal baselines on both validation splits while using only one-tenth the inter-speaker parameters of a three-block fixed-roster convolution. Code and models are available at https://github.com/prathamg007/CAST-ASD.
Figures & tables
MSDWild
AVA
few.val
many.val
Scenes with ≥5 faces
0 6.3
0 0.1
69.6
Scenes with ≤3 faces
88.8
80.0
15.4
Competing negatives
19.4
79.7
76.2
Overlapping speech
0 0.5
0 9.9
12.0
Table 1: Corpus statistics, computed with identical code over the validation annotations of AVA-ActiveSpeaker and MSDWild. All entries are percentages of face-frames. A negative face-frame is competing when another tracked face is genuinely speaking at that instant.
Figure 1: CAST-ASD. The visual branch runs independently for each of the F faces and the audio branch once per scene, so every face receives the same mixed audio. The inset shows one CAST block: the speaker pass attends across the faces present at a frame, the time pass attends over a face’s own past under a causal mask, and neither reads a future frame. Face crops are grayscale, and are coloured here only to match each crop to its track. Right: an example scene, with the active speaker boxed in green.
many.val ( 5+ speakers)
few.val
System
mAP
mAP c
FA c
DER ∗
mAP
Causal: zero lookahead, verified by perturbation
CAST-ASD ×1 (Mimi)
90.56 ± .10
71.51 ± .41
8.61 ± .18
27.59 ± .23
96.99 ± .02
LoCoNet ×3 (VGGish)
89.15 ± .13
69.63 ± .81
11.14 ± .04
31.57 ± .37
96.71 ± .05
Per-face backbone (Mimi)
88.58 ± .16
69.95 ± .43
12.72 ± .34
32.17 ± .46
96.17 ± .05
TalkNet (MFCC)
87.15 ± .51
68.48 ± .96
13.84 ± .76
33.92 ± .98
95.27 ± .09
Table 2: Causal systems on the two MSDWild validation splits, with the offline configuration of each architecture shown for reference. The audio encoder is given in parentheses and ×N denotes the number of mixer blocks. Bold marks the best causal entry in each column.
Audio
Mixer
s
Blocks
Param.
mAP
FA c
Mimi
CAST
—
1
0 1.57M
90.56 ± .10
0 8.61 ± .18
—
3
0 4.72M
90.65 ± .14
0 8.44 ± .17
LoCoNet
3
1
0 5.18M
89.60 ± .05
10.77 ± .29
3
3
15.55M
89.91 ± .24
10.26 ± .42
4
3
25.18M
90.14 ± .17
0 9.68 ± .31
5
3
37.57M
90.37 ± .15
0 9.42 ± .18
Table 3: Mixing operator against audio front end on many.val , three seeds per row. The two mixers are exchanged between the two front ends at matched depth, and the convolution is additionally given wider rosters ( s∈{4,5} ) on our own front end. Parameters are those of the scene mixer.
Faces visible at the frame
2
3
4
5+
Proportion of frames (%)
5.4
9.6
14.5
69.6
Competing false alarms FA c
Per-face backbone (Mimi)
8.25
9.97
17.17
12.45
LoCoNet ×3 (VGGish)
6.94
7.02
13.33
11.39
CAST-ASD ×1 (Mimi)
6.72
7.83
12.28
0 8.15
CAST-ASD ×3 (Mimi)
6.30
7.15
11.56
0 8.14
Table 4: Competing-speaker false alarms and mAP on many.val , computed separately by the number of faces visible at the frame (when more than one). Bold marks the best causal entry in each column.
Architecture
Causal
Offline
Δ
CAST-ASD ×1 (Mimi)
90.56
91.70
1.14 ± .11
CAST-ASD ×3 (Mimi)
90.65
92.08
1.42 ± .24
TalkNet (MFCC)
87.15
88.78
1.63 ± .89
LoCoNet ×3 (VGGish)
89.15
91.82
2.67 ± .59
Light-ASD (MFCC)
85.10
88.64
3.54 ± .56
Table 5: The cost of causal inference on many.val , that is, the mAP an architecture gives up when its causal constraints are applied.
System
Causal
Offline
CAST-ASD ×1 (Mimi)
91.07 ± .15
94.2 ± .17
LoCoNet ×3 (VGGish)
90.19 ± .06
95.2 †
TalkNet (MFCC)
89.11 ± .18
92.3 †
Table 6: AVA-ActiveSpeaker validation mAP, computed with the official ActivityNet scorer. † Reported by the original authors under their own training protocol.