Story

Comment télécharger une vidéo à partir d’une URL vidéo directe

Qu’est-ce qu’une URL vidéo directe, comment enregistrer un fichier MP4 ou WebM dans le navigateur, et pourquoi CORS, HLS ou DASH peuvent bloquer le téléchargement.

Avoir une URL de vidéo n’est pas la même chose qu’avoir un fichier vidéo. Certaines adresses pointent vers une ressource MP4 ou WebM. D’autres ouvrent une page HTML qui contient seulement un lecteur. D’autres encore chargent une liste de lecture en streaming faite de nombreux petits segments.

C’est pourquoi un lien s’enregistre tout de suite et qu’un autre refuse le téléchargement alors que la vidéo se lit. Le reste de cet article explique comment distinguer ces cas et n’enregistrer un fichier que lorsque l’URL est vraiment une ressource vidéo.

Qu’est-ce qu’une URL vidéo directe ?

Une URL vidéo directe est une adresse dont la réponse HTTP est la ressource média elle-même, et non une page web autour. L’exemple le plus simple ressemble à ceci :

https://example.com/video.mp4

Lorsqu’un navigateur demande cette URL, le serveur peut renvoyer les octets d’un fichier vidéo, souvent avec un Content-Type tel que video/mp4 ou video/webm. Il n’y a pas de document HTML au milieu. L’URL est le fichier.

L’extension de fichier est un indice, pas une règle. Un lien peut rester une ressource vidéo sans .mp4 dans le chemin :

https://example.com/media?id=123

Si le serveur répond avec Content-Type: video/mp4 (ou un autre type vidéo) et un corps qui est réellement des données média, c’est toujours une URL vidéo directe. Un chemin qui se termine par .mp4 peut encore être une redirection ou une page d’erreur HTML. Traitez la réponse HTTP comme la source de vérité, pas les lettres à la fin de l’adresse.

URL vidéo directe et page web de vidéo

Comparez ces deux adresses :

  • Fichier direct : https://example.com/files/movie.mp4
  • Page web : https://example.com/watch/movie

La première peut être un seul objet vidéo. La seconde est en général un document HTML. Cette page peut intégrer un élément <video>, charger un script de lecteur, puis récupérer le média depuis une URL différente qui n’apparaît jamais dans la barre d’adresse.

Coller l’adresse de la page dans un outil de téléchargement n’extrait pas le fichier de la page. Le navigateur demanderait du HTML. Un outil conçu pour des URL vidéo directes et accessibles au public a besoin de l’adresse du média elle-même.

Le Téléchargeur de vidéos web de NEXNARA est fait pour cette URL de fichier public, pas pour une page de lecture. Il n’extrait pas les vidéos des sites, ne se connecte pas à des comptes et n’assemble pas les flux d’un lecteur.

Comment télécharger une vidéo à partir d’une URL directe

Lorsque vous avez déjà un lien candidat :

  1. Obtenez l’URL directe. Utilisez une URL de fichier, d’objet ou de média — pas une page de lecture.
  2. Vérifiez qu’il s’agit d’une ressource vidéo. Un nouvel onglet devrait afficher la lecture intégrée du navigateur (ou une invite de téléchargement), pas une page avec un lecteur dans la mise en page.
  3. Essayez d’abord le navigateur. Beaucoup de navigateurs permettent d’enregistrer depuis le menu contextuel de la vidéo, ou lancent un téléchargement si le serveur envoie une disposition de fichier.
  4. Utilisez un outil dans le navigateur si vous voulez d’abord un aperçu. Collez la même URL sur une page qui peut afficher le format, la durée ou la taille avant d’enregistrer.

Le Téléchargeur de vidéos web est cette dernière étape. Vous collez une URL vidéo directe. Le navigateur interroge cet hôte. Si la ressource est un fichier lisible, un aperçu s’affiche. Lorsque le serveur vidéo autorise les lectures d’origine croisée, vous pouvez télécharger ; sinon, vous pouvez encore ouvrir l’URL si l’aperçu fonctionne. NEXNARA n’envoie pas le fichier vers ses propres serveurs.

Quels formats vidéo peut-on télécharger ?

Dans le navigateur, « puis-je télécharger ceci ? » se rapproche de « ce navigateur peut-il décoder ce fichier ? ». Les conteneurs courants pour une URL de fichier unique sont :

  • MP4 — souvent H.264 ou HEVC dans un conteneur ISO BMFF
  • WebM — en général VP8, VP9 ou AV1
  • Ogg Video — plus rare ; la prise en charge du codec varie selon le navigateur

Le conteneur et le codec ne sont pas la même chose. Un fichier .mp4 n’est pas garanti de se lire dans tous les navigateurs sur tous les appareils. La prise en charge de HEVC et d’AV1 dépend du système d’exploitation, du matériel et de la version du navigateur. Un outil qui utilise l’élément vidéo HTML5 prévisualise ce que ce navigateur peut décoder. Il ne convertit pas et ne remuxe pas le fichier.

Si le navigateur signale un format non pris en charge, le fichier peut encore se lire ailleurs — ou il peut s’agir d’un objet mal étiqueté ou d’une liste de lecture plutôt que d’un fichier unique.

Pourquoi une vidéo se lit-elle mais ne se télécharge-t-elle pas ?

La lecture et l’enregistrement utilisent des API du navigateur différentes.

L’élément <video> peut demander la ressource (souvent avec des requêtes HTTP range) et afficher des images. Cela peut réussir même lorsque du JavaScript sur une autre origine n’a pas le droit de lire les octets et d’en faire un fichier que l’utilisateur peut conserver.

Raisons typiques pour lesquelles l’aperçu fonctionne mais Télécharger échoue :

  • CORS. L’hôte vidéo n’a pas donné à ce site la permission de lire la réponse depuis un script. Voir la section suivante.
  • Identifiants d’origine croisée. Les cookies qui fonctionnent sur le site d’origine ne sont pas envoyés dans un fetch simple intersites, sauf si les deux côtés l’acceptent.
  • Content-Disposition. attachment ou un nom de fichier influe sur la façon dont une navigation de niveau supérieur enregistre, pas sur le droit d’un script d’une autre origine de lire le corps.
  • Configuration du serveur. Des en-têtes CORS manquants ou des combinaisons HEAD/GET bloquées peuvent arrêter un outil qui inspecte d’abord la ressource.
  • Authentification. Une URL qui fonctionne tant que vous êtes connecté sur l’hôte peut renvoyer 401/403 depuis un autre site.
  • URL expirantes ou signées. Le stockage d’objets délivre souvent une chaîne de requête limitée dans le temps. Après expiration, le même lien échoue.

Rien de tout cela ne signifie que le fichier « n’est pas une vidéo ». Cela signifie que ce contexte de navigateur n’a pas le droit de le copier.

Qu’est-ce que CORS ?

CORS (Cross-Origin Resource Sharing) est une règle du navigateur qui dit quand du JavaScript sur une origine peut lire une réponse d’une autre origine. Ce n’est pas un produit spécial « anti-téléchargement ». Il existe pour que https://a.example ne puisse pas lire en silence votre courrier ou vos fichiers sur https://b.example, sauf si b.example l’autorise.

Une balise vidéo peut toujours afficher un fichier d’origine croisée. Ce que CORS bloque souvent, c’est un fetch() depuis un autre site qui veut les octets bruts sous forme de Blob pour une boîte de dialogue d’enregistrement. Si le serveur vidéo n’envoie pas une valeur Access-Control-Allow-Origin qui inclut l’origine de l’outil (ou * pour un fichier public simple), cette lecture est refusée.

Lire n’est pas une permission pour le script d’un autre site de stocker une copie. NEXNARA ne proxifie pas le fichier pour contourner ce contrôle. Si le téléchargement est bloqué, ouvrir l’URL sur l’hôte vidéo est la solution de repli — et seulement si vous avez le droit de l’enregistrer.

Qu’en est-il de HLS et DASH ?

Beaucoup de lecteurs ne chargent pas un seul MP4. Ils chargent un manifeste, puis de nombreux segments.

  • HLS utilise souvent une URL qui se termine par .m3u8. Ce fichier est une liste de lecture (texte), pas un film complet dans un seul objet.
  • DASH utilise souvent .mpd, un manifeste XML qui pointe vers des représentations et des segments.

Une URL MP4/WebM directe et une liste HLS/DASH sont des ressources différentes. Enregistrer « le .m3u8 » donne un petit fichier texte, pas le film. Construire un fichier à partir de segments exige d’analyser la liste, de télécharger les segments et, en général, de remuxer. Le Téléchargeur de vidéos web n’assemble pas les flux HLS ou DASH. Si l’outil signale une liste de lecture en streaming, c’est attendu.

Vidéo protégée par DRM

Les lecteurs commerciaux peuvent envelopper le média dans du DRM tel que Widevine, FairPlay ou PlayReady. Ces systèmes chiffrent les échantillons et exigent une licence. Ce n’est pas un objet public video/mp4 que vous pouvez récupérer et conserver. NEXNARA ne déchiffre pas le DRM et ne le contourne pas.

Comment reconnaître une URL vidéo directe

Vérifications pratiques, dans l’ordre de ce qu’elles prouvent :

  • Le chemin se termine par .mp4, .webm, .ogv ou une extension média similaire. Utile, pas concluant.
  • Ouvrir l’URL dans un nouvel onglet montre une vidéo seule (ou un téléchargement), pas tout le chrome d’un site.
  • L’éditeur l’a documentée comme un lien de fichier ou d’objet (CDN, compartiment de stockage, « téléchargement direct »).
  • Les en-têtes de réponse incluent Content-Type: video/* (par exemple video/mp4).

Les outils de développement du navigateur peuvent afficher le type et le Content-Type d’une requête que vous avez déjà faite en tant qu’utilisateur normal d’une page. Cela aide à comprendre ce qui a été récupéré. Ce n’est pas un guide pour extraire des flux cachés ni pour contourner des connexions. Si un site ne vous donne pas une URL de fichier public, ce flux de travail ne s’applique pas.

L’extension et le type de contenu peuvent tous deux mentir. Une URL .mp4 peut rediriger vers du HTML. Un type video/mp4 peut encore être un minuscule corps d’erreur. La lecture dans l’onglet est la confirmation pratique.

Problèmes courants

L’URL ouvre une page web.
Ce n’est pas une URL vidéo directe. Il vous faut l’adresse de la ressource média, pas la page de lecture.

La vidéo se lit mais Télécharger ne donne rien d’utile.
L’hôte refuse probablement les lectures d’origine croisée (CORS), ou le fichier est trop volumineux pour un enregistrement dans le navigateur. Utilisez Ouvrir si l’aperçu fonctionne, ou enregistrez depuis l’hôte vidéo dans un onglet de niveau supérieur lorsque vous en avez l’autorisation.

Le lien fonctionnait et échoue maintenant.
Les URL signées ou expirantes meurent à l’heure dite. Demandez un nouveau lien au même endroit que le premier.

L’URL se termine par .m3u8 ou .mpd.
C’est une liste de lecture en streaming, pas un seul fichier MP4/WebM. Ce téléchargeur n’assemble pas ces segments.

Le navigateur indique que le format n’est pas pris en charge.
Le conteneur ou le codec peut ne pas être disponible dans ce navigateur ou ce système. Essayez un autre navigateur, ou confirmez que le fichier est bien un objet vidéo.

Le navigateur n’atteint pas l’URL.
Vérifiez https://, votre connexion, et que l’hôte autorise l’accès public. Un fichier HTTP sur une page d’outil en HTTPS peut aussi échouer comme contenu mixte.

Confidentialité

NEXNARA n’envoie pas le fichier vidéo vers les serveurs de NEXNARA pour cet outil. Ce n’est pas la même chose que d’affirmer que « l’URL ne quitte jamais votre navigateur ».

Lorsque vous collez une adresse, votre navigateur demande directement cet hôte vidéo externe. L’hôte peut voir une requête média normale de votre part. NEXNARA ne stocke pas le fichier au milieu. L’opérateur de la vidéo reçoit tout de même du trafic, parce que les octets viennent de son URL.

Utilisation responsable

Ne téléchargez que des vidéos dont vous êtes propriétaire ou pour lesquelles vous avez l’autorisation de télécharger. Une URL publique n’est pas une licence pour copier.

FAQ

Qu’est-ce qu’une URL vidéo directe ?

Un lien dont la réponse est la ressource vidéo elle-même (par exemple un objet MP4 ou WebM), et non une page HTML de lecture qui intègre un lecteur.

Puis-je télécharger un MP4 à partir d’une URL ?

Oui, lorsque l’URL est un fichier MP4 (ou similaire) public et que le navigateur peut le décoder. Si l’adresse est une page web ou une liste de lecture, enregistrer cette adresse ne vous donnera pas le fichier du film.

Pourquoi une vidéo se lit-elle mais ne se télécharge-t-elle pas ?

Le lecteur peut afficher le média sans autoriser le JavaScript d’un autre site à lire les octets. CORS, l’authentification et la politique du serveur sont les causes habituelles.

Puis-je télécharger une URL m3u8 ?

Pas comme une vidéo unique terminée avec cet outil. Un fichier .m3u8 est une liste HLS. NEXNARA n’assemble pas les flux HLS ou DASH.

NEXNARA envoie-t-il ma vidéo ?

Non. Le fichier n’est pas envoyé à NEXNARA. Votre navigateur communique avec l’URL vidéo que vous saisissez, donc l’hôte externe voit tout de même cette requête.

Pourquoi mon lien vidéo a-t-il expiré ?

Beaucoup d’hôtes attachent une signature et une heure d’expiration aux URL d’objet. Après ce moment, la même chaîne n’est plus autorisée. Demandez un lien neuf ; modifier l’ancien ne le renouvelle pas.