Pour convertir un M3U8 en MP4, il faut assembler les médias qu’il référence : le M3U8 est une playlist texte, pas une vidéo. Je privilégie VLC pour une conversion ponctuelle avec interface, et FFmpeg pour choisir les pistes, à partir d’une source accessible et autorisée.
- Le fichier M3U8 n'est pas une vidéo, mais un index texte (playlist) lié au protocole HLS.
- VLC et FFmpeg assemblent les médias accessibles lorsque les pistes sont compatibles avec la sortie choisie.
- Les erreurs 403 proviennent souvent d'URL expirées ou de tokens d'authentification manquants.
- Les contenus protégés par DRM ne peuvent pas être traités par de simples convertisseurs M3U8 et doivent être lus via les options prévues par la plateforme.
- Pour les contenus compatibles que vous êtes autorisé à sauvegarder, KeepStreams propose une interface de téléchargement par lot.
Qu'est-ce qu'un fichier M3U8 exactement ?
Un fichier M3U8 indique où trouver les médias. Le MP4 contient les données vidéo et audio elles-mêmes. HLS, pour HTTP Live Streaming, utilise ces playlists pour diffuser aussi bien un direct qu’une vidéo à la demande.
Réponse courte : Le M3U8 est un fichier texte codé en UTF-8 qui liste des chemins vers des segments multimédias ou vers d’autres playlists HLS.
Le lecteur consulte la playlist, puis charge les morceaux correspondants. Une playlist maître décrit plusieurs variantes, notamment pour adapter la qualité au débit disponible. Les segments vidéo portent souvent les extensions .ts ou .m4s.
Une playlist locale reste utilisable. Elle peut référencer des segments présents sur votre disque ou des ressources distantes. Pour une lecture hors connexion, les médias référencés doivent être disponibles localement et leurs chemins doivent rester valides.
Fichier local ou URL : choisir la bonne entrée
La bonne entrée dépend de votre source : une playlist locale complète, une URL HLS accessible ou un direct encore disponible. Une adresse de page web n’est pas une adresse de playlist. Dans VLC et FFmpeg, l’entrée réseau attend une URL de playlist accessible.
- Playlist locale avec ses segments. Gardez le fichier M3U8 et les médias qu’il référence dans leur arborescence d’origine. Dans VLC, utilisez l’entrée « Fichier » ; dans FFmpeg, indiquez le chemin de la playlist. Le fichier texte seul ne contient pas les images à assembler.
- URL de playlist HLS. Utilisez l’adresse accessible du fichier de playlist pour l’entrée « Réseau » de VLC ou comme source de FFmpeg. Les segments doivent eux aussi être accessibles dans le cadre de vos droits. Une page qui affiche un lecteur vidéo ne remplace pas cette entrée.
- Flux en direct. La playlist évolue pendant la diffusion et ne référence parfois qu’une fenêtre de segments récents. Vous devez disposer des segments de la période souhaitée ; le simple lien du direct n’est pas une archive complète.
L’adresse de la page convient à une lecture dans le navigateur, à la navigation dans KeepStreams ou à la détection par CocoCut. Ces usages partent du lecteur de la page. À l’inverse, coller cette même adresse dans une commande FFmpeg destinée à une playlist HLS ne lui fournit pas les segments.
La fonction hors ligne officielle est à privilégier lorsqu’elle répond à votre besoin. Pour les autres méthodes, vous devez disposer d’un accès autorisé et du droit de sauvegarder le contenu, dans le respect des conditions de la plateforme et du droit applicable.
Comparer les cinq méthodes selon votre besoin
VLC convient à une conversion simple avec interface graphique ; FFmpeg donne davantage de contrôle sur les pistes. AnyConv répond au besoin de convertir dans le navigateur sans installation. KeepStreams et CocoCut partent d’une page vidéo, chacun dans son environnement.
Réponse courte : Pour un besoin ponctuel, je choisirais VLC avec une source accessible. KeepStreams propose une interface pour sauvegarder les contenus compatibles, tandis que FFmpeg convient au choix précis des pistes.
| Méthode | Entrée | Interface | Usage adapté |
|---|---|---|---|
| VLC | Playlist locale ou URL HLS | Graphique | Conversion ponctuelle |
| FFmpeg | Playlist locale ou URL HLS | Ligne de commande | Sélection des pistes |
| KeepStreams | Page vidéo compatible | Navigateur intégré | Sauvegarde locale guidée |
| AnyConv | Playlist et médias accessibles | Navigateur | Conversion sans installation |
| CocoCut | Média détecté dans une page | Extension | Export depuis le navigateur |
Sur Windows et Mac, le choix porte surtout sur l’entrée disponible et votre préférence pour une interface ou des commandes. Sur Android, une application de conversion M3U8 en MP4 est disponible sur Google Play ; pour télécharger des vidéos M3U8 sur mobile, les manipulations diffèrent de celles des logiciels de bureau.
Mon choix reste simple : FFmpeg pour sélectionner précisément l’audio et la vidéo, AnyConv pour éviter une installation, une interface dédiée pour les sources qu’elle prend en charge.
5 méthodes pour convertir M3U8 en MP4
Chaque méthode exige des médias accessibles et compatibles avec la sortie. Choisissez l’entrée identifiée ci-dessus, puis l’outil correspondant. Gardez la playlist et ses segments disponibles pendant toute l’opération.
VLC : une conversion avec interface graphique
VLC ouvre une playlist locale complète ou un flux réseau HLS accessible. Son interface convient lorsque vous préférez choisir un profil de conversion plutôt que saisir une commande.
- Ouvrez VLC, puis « Média » et « Convertir / Enregistrer ».
- Choisissez « Fichier » pour ajouter une playlist locale avec ses segments, ou « Réseau » pour une URL HLS.
- Ajoutez le fichier ou collez l’adresse de playlist, puis cliquez sur « Convertir / Enregistrer ».
- Sélectionnez un profil de sortie MP4, par exemple « Video - H.264 + MP3 (MP4) » si ce profil figure dans votre installation.
- Définissez le fichier de destination sur votre disque, puis cliquez sur « Démarrer ».
Un profil de conversion peut réencoder les pistes. Le temps de traitement dépend alors du profil choisi, de l’accès aux segments et de votre ordinateur. Lisez le MP4 obtenu pour contrôler l’image et le son avant de déplacer les fichiers sources.
FFmpeg : assembler les pistes en ligne de commande
FFmpeg permet de copier les pistes compatibles dans un conteneur MP4. Je le privilégie lorsque le choix des flux audio et vidéo compte davantage que le confort d’une interface.
Une fois FFmpeg installé, ouvrez le terminal et remplacez l’entrée ci-dessous par le chemin de votre playlist locale ou son URL HLS accessible :
ffmpeg -i "votre_lien.m3u8" -c copy "video_finale.mp4"
L’option -c copy copie les pistes sélectionnées sans réencodage. Elle ne rend pas un média inaccessible lisible et ne corrige pas un codec incompatible. Le remuxage et le choix des pistes sont détaillés après les cinq méthodes.
KeepStreams : une interface pour les sources compatibles
KeepStreams pour M3U8 est disponible pour Windows et Mac : il sauvegarde les vidéos compatibles en MP4 ou MKV et permet de choisir les sous-titres proposés. C’est un outil tiers, distinct de la fonction hors ligne officielle, destiné à la sauvegarde personnelle autorisée.
Le navigateur intégré affiche les options de sauvegarde pendant la lecture des contenus pris en charge. La compatibilité dépend du site et de la vidéo ; la fiche permet de consulter les compatibilités et d’accéder à l’assistance pour un problème de détection.
La navigation part du site ou de la page vidéo. Les étapes suivantes permettent de choisir les options affichées pour votre contenu.
La sauvegarde suppose un accès autorisé et des contenus dont la copie est permise. L’usage reste personnel, sans redistribution, dans le respect du droit applicable et des conditions du service ; les permissions précises dépendent de l’usage concerné.
AnyConv : convertir dans le navigateur
AnyConv réalise la conversion M3U8 en MP4 dans le navigateur avec FFmpeg WebAssembly, en septembre 2026. WebAssembly permet d’exécuter le moteur de conversion localement dans l’onglet, sans installer FFmpeg comme logiciel de bureau.
Cette solution convient à un besoin ponctuel sans installation. Le traitement local ne dispense pas d’avoir accès aux médias de la playlist : les segments distants doivent être chargeables par le navigateur. Les gros ensembles de fichiers peuvent aussi dépasser la mémoire disponible.
Gardez l’onglet ouvert pendant le traitement, puis enregistrez le MP4 obtenu. Si le chargement échoue, distinguez un refus d’accès réseau d’un manque de mémoire avant de relancer la conversion.
CocoCut : exporter un média détecté
CocoCut détecte les médias chargés pendant la lecture d’une page sur Chrome ou Edge. Parmi les extensions Chrome pour flux HLS, cette approche convient à un export depuis l’onglet où vous regardez la vidéo.
- Installez CocoCut depuis le Chrome Web Store.
- Ouvrez la page vidéo et lancez la lecture.
- Cliquez sur l’icône de l’extension pour consulter les médias et résolutions détectés.
- Lancez le téléchargement du média compatible. L’onglet de traitement assemble les données pour l’export MP4.
Gardez l’onglet de traitement ouvert jusqu’à la fin. Si le fichier obtenu est muet, vérifiez si l’audio était proposé séparément ; la détection d’une piste vidéo ne garantit pas la présence de toutes les pistes dans le MP4.
Remuxage et codecs : conserver la qualité
Le remuxage change le conteneur sans réencoder les pistes sélectionnées. Le codec est la façon dont l’image ou le son est encodé. Pour utiliser -c copy, le MP4 et votre lecteur doivent accepter ces codecs.
La copie des pistes conserve leur encodage d’origine. Elle n’améliore donc pas la définition d’une vidéo et n’ajoute pas une piste absente. Un MP4 peut être correctement assemblé tout en restant illisible dans un lecteur qui ne reconnaît pas son codec.
La sélection des pistes compte autant que le conteneur. Dans FFmpeg, l’option -map sert à désigner les flux à inclure ; choisissez la vidéo, la langue audio et les sous-titres utiles parmi ceux annoncés par la source. La sélection automatique ne reprend pas nécessairement toutes les langues.
Une piste incompatible exige un choix. Vous pouvez conserver un autre conteneur accepté par votre lecteur ou réencoder uniquement la piste concernée dans un format adapté au MP4. Je conserverais la vidéo en copie lorsqu’elle est déjà compatible, plutôt que de réencoder tout le fichier.
Comprendre les échecs de conversion M3U8
Un échec de conversion M3U8 vient souvent d’une ressource inaccessible, d’un chemin incorrect ou d’une piste incompatible. Le message d’erreur aide à choisir la correction. Commencez par distinguer le chargement des segments de la lecture du MP4 final.
Réponse courte : Une erreur 403 concerne l’accès au serveur ; des segments absents empêchent l’assemblage ; un codec incompatible peut empêcher la lecture du MP4. Ces problèmes appellent des corrections différentes.
Erreur 403 et URL M3U8 expirée
Une erreur HTTP 403 signifie que le serveur refuse l’accès. Une URL expirée ou liée à une session est une cause possible. Rétablissez votre accès autorisé dans le service et utilisez une source encore valide.
Répéter la conversion avec la même adresse périmée ne rétablit pas l’accès. Si la plateforme réserve la lecture à son application, sa fonction hors ligne est la voie prévue pour regarder le contenu sans connexion.
Écran noir : vérifier la lecture et les droits
Un écran noir ne prouve pas à lui seul la présence d’une protection. Vérifiez d’abord la lecture normale sur le service, puis la compatibilité du codec dans votre lecteur local. Une vidéo présente avec seulement du son demande un diagnostic distinct d’une erreur réseau.
Le format M3U8 décrit une playlist, tandis que les DRM et les droits de lecture concernent les permissions et la protection du contenu. Pour un titre soumis à ces restrictions, utilisez les options de lecture et de téléchargement prévues par le service.
Sous-titres SRT ou audio manquants
Un MP4 muet peut provenir d’une playlist ne contenant que l’image. En HLS, la vidéo, l’audio et les sous-titres peuvent être référencés séparément. La playlist maître décrit les variantes et les pistes associées.
Choisissez la source qui expose les pistes recherchées, puis sélectionnez celles que la sortie accepte. Un sous-titre absent de la source ne sera pas créé par la conversion. Un fichier SRT disponible séparément se lit aussi comme sous-titre externe dans un lecteur compatible.
Chemins relatifs et segments absents
Une playlist locale ne suffit pas lorsque les segments qu’elle référence manquent. Un chemin relatif se lit à partir de l’emplacement de la playlist : déplacer seulement le M3U8 peut donc rompre l’accès aux médias.
Rassemblez les segments disponibles et rétablissez l’arborescence attendue par la playlist. Vérifiez les noms et les sous-dossiers avant de relancer l’assemblage. Si certains segments ne sont plus accessibles à la source, le fichier texte ne permet pas de les recréer.
CORS et mémoire du navigateur
Les règles CORS autorisent ou refusent les requêtes entre domaines dans le navigateur. Elles peuvent bloquer le chargement de segments distants par un convertisseur, même lorsque la playlist est lisible sur sa page d’origine.
Utilisez une source autorisée accessible au convertisseur ou importez les fichiers locaux disponibles lorsque l’outil accepte cette entrée. Ne désactivez pas les protections du navigateur. Une autorisation de lecture sur un site ne rend pas ses ressources accessibles à tous les autres sites.
La mémoire constitue une autre limite. Une conversion volumineuse dans l’onglet peut s’interrompre alors que les segments sont accessibles ; dans ce cas, utilisez un logiciel de bureau avec les mêmes fichiers autorisés.
Choisir une méthode adaptée à votre source
Pour une playlist locale complète ou une URL HLS accessible, je choisirais VLC pour l’interface et FFmpeg pour le contrôle des pistes. Pour une conversion dans l’onglet sans installation, AnyConv offre une autre approche.
CocoCut convient à un média détecté pendant la navigation. Pour sauvegarder des contenus compatibles depuis une interface dédiée sur Windows ou Mac, KeepStreams propose une sortie MP4 ou MKV. Le bon choix part de la source dont vous disposez et des pistes que vous voulez conserver.
Foire aux questions
Q1. Peut-on simplement renommer un fichier M3U8 en MP4 ?
Non. Changer l’extension ne transforme pas la playlist texte en données vidéo et audio. Il faut assembler les médias qu’elle référence dans un conteneur MP4 compatible.
Q2. Peut-on vérifier la lecture du M3U8 avant la conversion ?
Oui. VLC ouvre une playlist locale ou une URL HLS accessible. Je conseille cette vérification pour repérer un lien inaccessible ; une lecture réussie ne garantit toutefois pas que les codecs conviennent au MP4.
Q3. Une playlist M3U se convertit-elle comme un M3U8 ?
M3U et M3U8 sont des listes de lecture ; M3U8 utilise l’encodage texte UTF-8. Les médias référencés doivent être accessibles et compatibles avec la sortie. Une liste de stations ou de chaînes ne devient pas automatiquement une seule vidéo.
Q4. Un direct peut-il être enregistré entièrement après sa diffusion ?
Pas à partir de la seule playlist courante si les anciens segments ont été retirés. Un replay autorisé constitue une autre source pour retrouver le programme complet lorsqu’il est proposé.
