Au-delà du débit : mesurer ce que voient les spectateurs

Le débit vous indique la quantité de données consommée par un flux. Il ne vous dit rien sur sa qualité visuelle.

Un flux à 10 Mbps de diapositives statiques semble parfait. Un flux à 10 Mbps de sport en mouvement rapide peut être plein d’artefacts. Deux encodeurs au même débit peuvent produire des qualités dramatiquement différentes selon leurs algorithmes, presets et réglages.

VMAF (Video Multi-Method Assessment Fusion) résout ce problème. Développé par Netflix, VMAF est une métrique basée sur le machine learning qui prédit comment un spectateur humain évaluerait la qualité vidéo sur une échelle de 0 à 100. Elle corrèle plus précisément avec la qualité subjective que les métriques traditionnelles comme le PSNR ou le SSIM.

Vajra Cast intègre directement le scoring VMAF, vous offrant une mesure objective de la qualité sur chaque route en un seul clic.

Comment fonctionne VMAF

VMAF combine plusieurs métriques élémentaires de qualité à l’aide d’une machine à vecteurs de support (SVM) entraînée sur des milliers d’évaluations de qualité humaines :

  1. Visual Information Fidelity (VIF): mesure la quantité d’information visuelle préservée après l’encodage. Fonctionne à plusieurs échelles spatiales.
  2. Detail Loss Metric (DLM): quantifie la perte de détails fins et de textures.
  3. Motion: prend en compte le masquage temporel (les spectateurs sont moins sensibles aux artefacts lors des mouvements rapides).

Ces métriques sont fusionnées en un score unique :

Score VMAFQualitéInterprétation
93-100ExcellentePerte de qualité imperceptible
80-93BonneArtefacts mineurs visibles uniquement en examen attentif
70-80CorrectePerceptible mais acceptable pour la plupart des spectateurs
50-70MédiocreArtefacts clairement visibles
Inférieur à 50MauvaiseDégradation significative de la qualité

Pour la diffusion professionnelle, un score VMAF de 80+ est l’objectif typique. Des scores au-dessus de 93 indiquent des rendements décroissants — vous pourriez réduire le débit et économiser de la bande passante sans perte de qualité perceptible.

VMAF dans Vajra Cast

Comment ça fonctionne

Vajra Cast effectue l’analyse VMAF en comparant l’entrée (référence) à la sortie (distordue) d’une route :

Entrée (originale) ─────────────────────┐
                                        ├→ Comparaison VMAF → Score
Sortie (encodée/transcodée) ────────────┘

Cette comparaison est significative car :

  • Les routes passthrough devraient obtenir un score de 100 (aucune perte de qualité) — tout score inférieur indique un problème
  • Les routes transcodées montrent l’impact exact sur la qualité de vos paramètres d’encodage
  • L’analyse de tendances révèle la dégradation de qualité dans le temps (dérive de l’encodeur, problèmes réseau)

Lancer une vérification de qualité

  1. Ouvrez la vue détaillée de la route
  2. Cliquez sur Analyse de qualité
  3. Vajra Cast capture un échantillon de l’entrée et de la sortie
  4. Le scoring VMAF s’exécute sur l’échantillon
  5. Les résultats apparaissent dans le tableau de bord : score VMAF, PSNR, SSIM

L’analyse s’exécute sans interrompre le flux en direct. Elle échantillonne une durée configurable (par défaut : 10 secondes) à la résolution native du flux.

Analyse programmée automatisée

Pour les routes 24/7, configurez des vérifications de qualité périodiques :

curl -X POST https://votre-serveur:3000/api/routes/route-47/quality-check \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "schedule": "*/30 * * * *",
    "duration": 10,
    "metrics": ["vmaf", "psnr", "ssim"]
  }'

Cela lance une vérification de qualité de 10 secondes toutes les 30 minutes et stocke les résultats dans l’historique des métriques.

Configurer les seuils de qualité

Pourquoi les seuils sont importants

Le scoring VMAF est le plus utile quand il est automatisé. Au lieu de vérifier manuellement la qualité, définissez des seuils et laissez le système vous alerter quand la qualité descend sous les niveaux acceptables.

Configuration des seuils

Dans les paramètres de la route, définissez :

  • Score VMAF minimum: déclenche une alerte quand le score passe sous cette valeur (ex. 80)
  • PSNR minimum: seuil de métrique de qualité secondaire (ex. 35 dB)
  • Action d’alerte: log, webhook ou notification par email

Recommandations de seuils par cas d’usage

Cas d’usageVMAF minimumNotes
Diffusion premium (sport, événements live)85Les spectateurs attendent une qualité broadcast
Streaming standard (corporate, éducation)75Acceptable pour la plupart des audiences
Surveillance / monitoring60Le contenu est fonctionnel, pas esthétique
Prévisualisation / monitoring de confiance50Juste besoin que ce soit regardable

VMAF pour la validation du transcodage

Lors de la configuration du transcodage matériel, VMAF vous aide à trouver le compromis optimal qualité-débit :

  1. Commencez avec votre débit cible (ex. 6 Mbps pour du 1080p)
  2. Lancez une analyse VMAF
  3. Si VMAF > 93 : vous pouvez réduire le débit (économie de bande passante) sans perte de qualité perceptible
  4. Si VMAF < 80 : augmentez le débit ou ajustez le preset d’encodage
  5. Itérez jusqu’à trouver le point d’équilibre

C’est plus fiable que d’évaluer la qualité à l’œil nu ou de se fier au débit seul.

Alertes sur la dégradation de qualité

Intégration Prometheus

Les scores VMAF sont exposés via le endpoint de métriques Prometheus :

vajracast_vmaf_score{route_id="route-47",route_name="Stadium Main"} 88.4
vajracast_psnr_db{route_id="route-47",route_name="Stadium Main"} 38.2
vajracast_ssim{route_id="route-47",route_name="Stadium Main"} 0.965

Règle d’alerte Grafana

alert: VajraCastQualityDegradation
expr: vajracast_vmaf_score < 80
for: 5m
labels:
  severity: warning
annotations:
  summary: "Qualité vidéo sous le seuil sur {{ $labels.route_name }}"
  description: "Le score VMAF est {{ $value }} (seuil : 80). Vérifiez les paramètres d'encodage ou la qualité d'entrée."

La clause for: 5m empêche les alertes sur les baisses de qualité transitoires (ex. changements de scène avec mouvement extrême). Une baisse soutenue de 5 minutes sous le seuil indique un vrai problème.

Tableau de bord qualité

Suivez les scores VMAF dans le temps avec Grafana :

  • Timeline VMAF: tracez les scores sur 24 heures pour repérer les tendances (baisses de qualité pendant les heures de pointe, par exemple)
  • Distribution des scores: histogramme des scores VMAF sur toutes les routes
  • Nuage de points qualité vs débit: identifiez les routes sur-dimensionnées (VMAF élevé, débit élevé) ou sous-dimensionnées (VMAF bas, débit bas)

VMAF vs autres métriques de qualité

PSNR (Peak Signal-to-Noise Ratio)

  • Ce qu’il mesure : Différence pixel par pixel entre les frames originaux et encodés
  • Forces : Rapide à calculer, bien compris
  • Faiblesses : Ne corrèle pas bien avec la perception humaine. Un flou et un artefact net peuvent avoir le même PSNR mais paraître très différents aux spectateurs.
  • Vajra Cast : Disponible aux côtés de VMAF comme référence

SSIM (Structural Similarity Index)

  • Ce qu’il mesure : Similarité structurelle — comparaison de luminance, contraste et structure
  • Forces : Meilleure corrélation perceptuelle que le PSNR
  • Faiblesses : Moins précis que VMAF pour la vidéo (conçu à l’origine pour les images fixes)
  • Vajra Cast : Disponible aux côtés de VMAF comme référence

Pourquoi VMAF l’emporte

VMAF a été entraîné spécifiquement sur du contenu vidéo avec des évaluations de qualité humaines. Il prend en compte des facteurs que le PSNR et le SSIM manquent :

  • Masquage temporel: les spectateurs tolèrent plus d’artefacts lors des mouvements rapides
  • Complexité du contenu: les scènes complexes nécessitent plus de bits que les simples
  • Résolution d’affichage: les artefacts sont plus gênants sur les grands écrans

Netflix, YouTube et les grands diffuseurs utilisent VMAF comme métrique de qualité principale. Vajra Cast expose les trois (VMAF, PSNR, SSIM) pour vous permettre de recouper, mais VMAF devrait être votre métrique de décision principale.

Workflows pratiques

Workflow 1 : Validation des presets d’encodage

Avant de passer en direct avec une nouvelle configuration de transcodage matériel :

  1. Configurez la route avec vos paramètres d’encodage prévus
  2. Alimentez avec un clip de test représentatif (sport, talking head, graphiques — selon votre contenu)
  3. Lancez l’analyse VMAF à chaque preset d’encodage (Fast, Balanced, Quality)
  4. Comparez les scores VMAF avec l’utilisation CPU/GPU
  5. Sélectionnez le preset qui atteint votre seuil de qualité au coût de ressources le plus bas

Workflow 2 : Supervision de la qualité réseau

Pour les routes recevant des flux SRT via internet :

  1. Programmez des vérifications VMAF toutes les 15 minutes
  2. Corréllez les scores VMAF avec les métriques de perte de paquets SRT
  3. Quand le VMAF baisse mais la perte de paquets est faible : le problème est à l’encodeur
  4. Quand le VMAF baisse et la perte de paquets est élevée : le problème est le réseau
  5. Utilisez cette corrélation pour orienter le dépannage vers la bonne équipe

Workflow 3 : Optimisation du débit

Pour les routes multi-sorties avec transcodage sélectif :

  1. Lancez VMAF sur chaque sortie transcodée
  2. Identifiez les sorties où VMAF > 93 (sur-dimensionnées)
  3. Réduisez le débit de 10-15 % sur ces sorties
  4. Relancez VMAF pour confirmer que la qualité reste acceptable
  5. Répétez jusqu’à ce que le VMAF soit dans la plage 85-93 (ratio qualité/débit optimal)

Ce workflow peut économiser 20-30 % de bande passante sur votre infrastructure sans impact de qualité perceptible.

Prochaines étapes