Livestorm ne propose pas de bouton "Télécharger" pour les participants. Le replay est streamé en HLS depuis un CDN CloudFront, protégé par des cookies signés.
Pas de téléchargement direct, pas de clic droit, pas de lien MP4.
Voici comment récupérer la vidéo avec ffmpeg.
Ce qu'il faut
- Un navigateur (Firefox ou Chrome)
- ffmpeg installé sur votre machine
- Un accès au replay Livestorm (vous devez être inscrit à l'événement)
Installer ffmpeg (Windows)
- Télécharger ffmpeg depuis https://www.gyan.dev/ffmpeg/builds/ (prendre
ffmpeg-release-essentials.zip) - Dézipper dans
C:\ffmpeg - Ajouter
C:\ffmpeg\binau PATH : Paramètres > Système > Variables d'environnement > double-clic surPath> Nouveau >C:\ffmpeg\bin - Ouvrir un nouveau terminal et vérifier :
ffmpeg -version
Sur Mac, brew install ffmpeg et c'est réglé.
Étape 1 : Récupérer l'URL du flux vidéo
- Ouvrir le replay Livestorm dans votre navigateur
- Ouvrir les DevTools (F12)
- Aller dans l'onglet Réseau (Network)
- Filtrer sur
m3u8 - Lancer la lecture du replay
- Une ou plusieurs requêtes apparaissent. Vous cherchez l'URL qui ressemble à :
https://cdn.livestorm.co/uploads/media/file/.../hls/..._1080.m3u8
Le suffixe indique la qualité : _1080 pour le 1080p, _720 pour le 720p. Copier l'URL complète.
Étape 2 : Récupérer les cookies CloudFront
Le CDN Livestorm utilise des cookies CloudFront signés. Sans eux, vous obtiendrez une erreur 403.
Dans les DevTools, cliquez sur la requête .m3u8 que vous venez de trouver. Dans les en-têtes de la requête (Request Headers), repérez la ligne Cookie. Vous avez besoin de trois valeurs :
CloudFront-PolicyCloudFront-SignatureCloudFront-Key-Pair-Id
Copiez la valeur complète de chacun.
Étape 3 : Télécharger avec ffmpeg
Ouvrir PowerShell (pas CMD, les retours à la ligne dans les headers posent problème en CMD).
Coller la commande suivante en remplaçant les valeurs :
ffmpeg -headers "Referer: https://app.livestorm.co/`r`nOrigin: https://app.livestorm.co`r`nCookie: CloudFront-Policy=VOTRE_VALEUR; CloudFront-Signature=VOTRE_VALEUR; CloudFront-Key-Pair-Id=VOTRE_VALEUR`r`n" -i "VOTRE_URL_M3U8" -c copy replay.mp4
Le -c copy signifie qu'il n'y a pas de ré-encodage. ffmpeg se contente de télécharger les segments vidéo et de les assembler. Pour un replay d'une heure en 1080p, comptez 2 à 10 minutes selon votre connexion.
Le fichier replay.mp4 apparaît dans le répertoire courant.
Extraire l'audio (optionnel)
Si vous voulez uniquement l'audio pour le transcrire :
ffmpeg -i replay.mp4 -vn -c:a copy replay_audio.m4a
Pour un fichier plus léger, compressé en mono 16kHz (suffisant pour de la transcription) :
ffmpeg -i replay.mp4 -vn -ac 1 -ar 16000 -b:a 32k replay_audio_compressed.m4a
Un replay d'une heure donne un fichier d'environ 15 Mo.
Pourquoi CMD ne marche pas
Si vous utilisez CMD au lieu de PowerShell, les séquences \r\n dans les headers ne sont pas interprétées. CMD les envoie littéralement, ffmpeg ne comprend pas les headers, et le CDN vous renvoie une 403.
PowerShell interprète `r`n comme un vrai retour à la ligne. C'est la seule différence, mais elle est bloquante.
Les cookies expirent
Les cookies CloudFront signés ont une durée de vie limitée (quelques heures en général). Si vous obtenez une 403 alors que la commande fonctionnait avant, retournez sur la page du replay, rafraîchissez, et récupérez les nouveaux cookies dans les DevTools.
