Why AI-Powered Casting is Essential
Mid-budget film production receives 3,000 to 8,000 applications for lead roles. A casting director physically cannot review everything: a third of applications are rejected based on photos, half of the remaining ones after the first 30 seconds of video audition. We developed an AI system that processes the entire volume using formalized criteria and outputs a ranked shortlist in a matter of hours. Our experience: 5+ years in AI/ML for media, over 50 delivered projects. This reduces casting costs by 40–60% and speeds up the process by 10 times.
What the System Analyzes
The system analyzes three modalities: photo, video, and voice. Each module uses specialized models and outputs numerical scores that are aggregated into a unified candidate profile.
| Module | Technologies | Output |
|---|---|---|
| Photo | DeepFace, InsightFace (ArcFace) | Age, sex, appearance type; 512-dim face embedding |
| Video | VideoMAE, TimeSformer | Naturalness score (0–1), emotion range, key frames |
| Voice | Whisper, librosa, prosody analysis | Speech rate (words/min), intonation contour, pauses |
Visual role fit — comparison with the character's visual profile: age range (from photo), appearance type, height/build. Face analysis (DeepFace, InsightFace) estimates age, and a body keypoint detector (MediaPipe Pose) evaluates proportions.
Video audition analysis — facial expression recognition across time series: how the actor maintains an emotion, how natural transitions are. The model based on VideoMAE (VideoMAE: Masked Autoencoders are Data-Efficient Learners for Self-Supervised Video Pre-Training) or TimeSformer, trained on annotated video auditions, outputs a "naturalness" score and "emotion range".
Voice analysis — speech rate, pauses, intonation contour. Models: Whisper for transcription + prosody analysis via librosa (pitch, energy contour). Comparison with the character's voice profile.
Similar actor search — embedding search across the database using FAISS: "find actors similar to [reference]" by face and acting style.
Why Face Embedding is the System's Foundation
The main technical challenge is not to find the most beautiful or young, but to find suitable candidates for a specific character. This means working in the embedding space of faces, not with raw metrics. ArcFace or AdaFace generate a 512-dimensional face vector. The casting director provides several reference faces for the character (artwork, third-party actors), the system computes the centroid of these embeddings and finds the nearest candidates by cosine similarity.
from insightface.app import FaceAnalysis import faiss import numpy as np app = FaceAnalysis(providers=['CUDAExecutionProvider']) app.prepare(ctx_id=0, det_size=(640, 640)) def get_face_embedding(image_path): img = cv2.imread(image_path) faces = app.get(img) if not faces: return None return faces[0].embedding # 512-dim ArcFace embedding index = faiss.IndexFlatIP(512) # inner product = cosine for L2-normalized index.add(normalized_embeddings) # candidate database D, I = index.search(query_embedding.reshape(1, -1), k=50) How Application Deduplication Works
Deduplication is critical with high application volumes — one actor may submit 4–5 different photos. Comparing cosine similarity of embeddings with a threshold of 0.72 reliably identifies the same face under different lighting conditions. This eliminates repeated reviews and speeds up processing by 30%.
How We Integrate AI into Your Existing Pipeline
The implementation process includes five stages:
- Audit of the current casting process and requirements gathering.
- Data collection and annotation (photos, videos, voice) with applicant consent.
- Training or fine-tuning models for the client's task (fine-tuning on specific data).
- Integration via REST API or embedding into the CRM system.
- Testing on historical data (A/B test) and deployment in a protected environment.
On average, stage 3 improves video analysis accuracy by 15–20% compared to the pre-trained model. On one project, embedding search accuracy exceeded 94%.
What's Included in the Work
| Component | Description |
|---|---|
| Photo analysis module | Face embedding, age, gender, appearance type |
| Video analysis module | Emotions, naturalness, range |
| Voice analysis module | Tempo, intonation, prosody |
| FAISS search index | 512-dim embeddings, k-NN search |
| API and documentation | Swagger, integration examples |
| Team training | 2-day workshop on system operation |
Ethics and Limitations
The system does not make decisions — it ranks candidates and passes a shortlist to the casting director. Automatic rejection based on protected characteristics (ethnicity, gender) is not implemented and is prohibited. Chemistry between actors, response to director instructions, and behavior during long takes remain in the domain of live casting.
All data is processed with applicant consent, stored in an isolated environment with TTL for deletion after casting completion. We guarantee confidentiality and GDPR compliance.
Timeline and Cost
Basic system (photo analysis + embedding search): from 4 to 6 weeks. Full platform with video and voice analysis: from 10 to 16 weeks. Cost is calculated individually after auditing your data. Contact us to assess your project and propose an optimal solution. Get a consultation by submitting a request via the feedback form. Order a pilot project to evaluate results on your data.







