Confidentialité et sécurité

Votre vidéo ou votre audio reste sur votre appareil

Le générateur de sous-titres lit votre fichier et crée les sous-titres dans l'onglet de votre navigateur. Le site n'a aucun moyen de recevoir le fichier : il n'existe aucun point d'envoi, et la page ne peut se connecter qu'à ce site. Voici ce que votre navigateur télécharge, ce qu'il garde, ce que l'hébergeur voit encore et comment le vérifier vous-même.

Reste sur votre appareil
  • Le fichier vidéo ou audio que vous ajoutez
  • Le son que la page en extrait
  • La langue et le modèle que vous choisissez
  • Les sous-titres et vos modifications
  • Les fichiers SRT et WebVTT que vous téléchargez
Jamais envoyé chez nous
  • La vidéo ou l'audio
  • Le nom du fichier
  • Ses métadonnées, comme la date ou le lieu de l'enregistrement
  • Les sous-titres créés à partir de lui, et vos modifications
  • La langue que vous choisissez

Ce qui tourne, et où

Le moteur, la partie qui transforme la parole en sous-titres, tourne dans l'onglet de votre navigateur. C'est un programme WebAssembly et un modèle de reconnaissance vocale open source, tous deux téléchargés depuis ce site quand vous ajoutez votre premier fichier. La page confie votre fichier au moteur dans l'onglet, le moteur rend les sous-titres, et vous les enregistrez dans un fichier sur votre appareil. Ce qui tourne dans votre navigateur est détaillé étape par étape.

Ce que votre navigateur télécharge, et rien d'autre

Ouvrir le générateur de sous-titres télécharge la page elle-même, ses styles, ses scripts et quelques images, le tout depuis ce site. Quand vous ajoutez votre premier fichier, la page télécharge aussi, depuis ce site : le moteur (environ 1,5 à 1,6 Mo, ou 3,4 Mo pour sa version WebGPU quand votre navigateur propose une carte graphique utilisable), le lecteur multimédia qui lit le son de votre fichier (environ 0,3 Mo), le modèle choisi (environ 60 Mo pour le petit ou 264 Mo pour le grand, en parties de 20 Mio au plus) et un détecteur de voix de moins de 1 Mo qui repère les passages parlés. Aucune police ni aucun script d'un autre site, aucune mesure d'audience, aucune publicité.

Ce qui reste dans votre navigateur ensuite

Le modèle et le détecteur de voix. La page vérifie chaque partie téléchargée avec son empreinte SHA-256 et garde les parties vérifiées dans le stockage de cache (Cache Storage) de votre navigateur pour ce site (un espace nommé transcription-models-v1) quand le navigateur a la place de les garder, pour que les fichiers et les visites suivantes évitent le téléchargement. Les fichiers du moteur restent dans le cache habituel du navigateur, comme les scripts de la page. Rien de tout cela ne contient quoi que ce soit de vos vidéos, enregistrements ou sous-titres. Pour les supprimer, effacez les données de ce site dans votre navigateur ; le fichier suivant les téléchargera de nouveau.

Votre fichier et vos sous-titres ne sont jamais enregistrés. Pendant que vous travaillez, l'aperçu lit votre fichier depuis un lien blob: temporaire dans l'onglet ouvert, et le navigateur l'efface, avec les sous-titres, quand vous fermez l'onglet ou cliquez sur Recommencer. En dehors du modèle et du détecteur, les scripts de la page ne stockent rien : ni cookies, ni localStorage ou sessionStorage, ni IndexedDB.

La page ne peut lire que le fichier que vous lui donnez

Vous donnez un fichier à la page en le choisissant ou en le déposant dans la zone de dépôt. Une page web ne peut pas parcourir vos dossiers : le navigateur lui remet le seul fichier choisi, et rien d'autre. La page vérifie qu'il s'agit d'un fichier vidéo ou audio et refuse tout autre fichier avec un message. La caméra et le micro sont désactivés pour la page (voir les en-têtes ci-dessous) : elle ne travaille que sur des fichiers, jamais sur du son en direct.

Ce que le navigateur impose

Le site envoie des en-têtes de sécurité avec chaque page, et votre navigateur les applique quoi que tentent les scripts de la page. En langage clair :

En-têtes de sécurité sur chaque page (d'après les règles d'en-têtes du site)
En-têteCe qu'il fait
Content-Security-Policy: connect-src 'self'Les scripts de la page ne peuvent se connecter qu'à ce site. Le navigateur bloque toute requête vers un autre serveur.
Content-Security-Policy: form-action 'self'Un formulaire de la page ne peut être envoyé qu'à ce site.
Content-Security-Policy: script-src 'self' 'wasm-unsafe-eval'Seuls les scripts servis par ce site s'exécutent. La seconde valeur permet au navigateur de compiler du WebAssembly, le format dans lequel le moteur de transcription est construit.
Content-Security-Policy: media-src 'self' blob:La vidéo et l'audio ne se lisent que depuis ce site ou depuis votre onglet. L'aperçu lit votre propre fichier depuis un lien blob: qui n'existe que dans l'onglet ouvert.
Permissions-Policy: camera=(), microphone=(), geolocation=()La caméra, le micro et la localisation sont désactivés pour la page. Elle ne peut même pas les demander : l'outil accepte des fichiers, jamais du son en direct.
Content-Security-Policy: frame-ancestors 'none' et X-Frame-Options: DENYAucun autre site ne peut afficher cette page dans un cadre, ce qui bloque le détournement de clic (une fausse page posée sur la vraie).
Cross-Origin-Opener-Policy et Cross-Origin-Embedder-PolicyIls isolent l'onglet des autres sites. Les navigateurs exigent cette isolation avant qu'une page puisse partager de la mémoire entre plusieurs threads, ce que la version WebAssembly du moteur est conçue pour utiliser.

Derrière ces en-têtes, le site est un ensemble de fichiers statiques sur un réseau de diffusion de contenu. Aucun programme serveur de notre part ne tourne derrière : il n'existe donc aucun point qui pourrait accepter un fichier, même si la page essayait d'en envoyer un.

Vérifiez par vous-même

Les outils de développement de votre navigateur listent chaque requête d'une page : vous pouvez donc le vérifier sur votre propre ordinateur (le guide du panneau Réseau de Chrome présente le panneau) :

  1. Ouvrez le générateur de sous-titres sur un ordinateur et appuyez sur F12 (ou Cmd+Option+I sur Mac) pour ouvrir les outils de développement, puis choisissez l'onglet Réseau. Dans Safari, activez d'abord les fonctionnalités pour les développeurs dans Réglages, Avancés.
  2. Rechargez la page. Vous devriez voir la page, ses styles, scripts et images, tous depuis subtitle-generator.online.
  3. Ajoutez un court fichier vidéo ou audio. La première fois, de nouvelles lignes apparaissent pour le moteur, le lecteur multimédia et les parties du modèle, toutes depuis subtitle-generator.online. Lors d'une visite suivante, les parties du modèle viennent du stockage du navigateur : seuls quelques petits fichiers qui les listent sont demandés de nouveau. Laissez le traitement finir et téléchargez le SRT : le fichier est créé dans votre onglet et enregistré depuis un lien blob:, il ne vient d'aucun serveur.
  4. Regardez la colonne Méthode (si elle est masquée, faites un clic droit sur un en-tête de colonne pour l'afficher). Chaque ligne doit indiquer GET ou HEAD, et chaque adresse doit être subtitle-generator.online. Les lignes qui commencent par blob: ou data: sont des liens internes à votre onglet, pas des transferts réseau.

Un envoi se présente autrement : une requête avec la méthode POST ou PUT dont la taille est à peu près celle de votre fichier, souvent vers un autre domaine. Si vous en voyez une en ajoutant un fichier ici, quelque chose ne va pas, et nous voulons le savoir à support@subtitle-generator.online.

Ce que vérifie notre test automatique

Un test automatique de navigateur charge une copie compilée du site dans Chromium, le moteur de Chrome et d'Edge, avec les en-têtes de sécurité du site, et y ajoute de vrais fichiers. Il s'exécute à chaque modification du site. Parmi ses vérifications :

  • Chaque requête de la page va vers ce site, et toutes sont des requêtes GET ou HEAD sans corps : rien n'est envoyé.
  • Ouvrir la page ne télécharge ni le moteur ni le modèle : ils ne viennent de ce site qu'une fois un fichier ajouté.
  • Un court enregistrement devient des sous-titres dans l'onglet, avec la version WebAssembly du moteur, à partir d'un fichier WAV, d'une vidéo MP4 et d'un fichier WebM, et les mots sortent comme prévu.
  • Les fichiers SRT et WebVTT que la page enregistre contiennent exactement les sous-titres affichés, modifications comprises, et rien d'autre.
  • Annuler arrête le traitement, et le fichier suivant utilise le modèle que le navigateur garde déjà, sans nouveau téléchargement.
  • Avec les en-têtes de sécurité du site en vigueur, le navigateur ne signale aucune requête bloquée ni aucune violation de la politique.

Vérifier de la même façon n'importe quel outil de sous-titres

Le même test avec l'onglet Réseau fonctionne pour tout outil web qui affirme ne pas envoyer votre fichier. Ouvrez sa page, videz la liste, ajoutez un court extrait de test et cherchez une requête POST ou PUT d'une taille proche de celle de l'extrait, ou une requête vers un autre domaine que celui de l'outil. Regardez aussi ce qui se charge en plus : les requêtes de mesure d'audience, de publicité ou de polices vers d'autres domaines ne sont pas votre fichier, mais chacune signale votre visite à une autre entreprise. Un outil qui fait tourner un modèle dans votre navigateur le télécharge d'abord : un gros GET au premier passage est normal ; un envoi va dans l'autre sens.

Ce que « aucun envoi » ne couvre pas

  • L'hébergeur voit des requêtes ordinaires. Comme pour tout site web, le prestataire d'hébergement et de diffusion traite des données de requête standard, comme votre adresse IP et les informations de votre navigateur, pour servir les fichiers et protéger le site. Ces requêtes ne contiennent rien de votre fichier.
  • La page a besoin d'une connexion pour se charger. Il n'y a pas de mode hors ligne.
  • Les extensions peuvent voir la page. Une extension autorisée à lire et modifier les sites web voit ce qu'affiche cette page. Pour un enregistrement sensible, utilisez un profil de navigateur sans extensions.
  • Les téléchargements sont des fichiers ordinaires. Une fois un fichier de sous-titres enregistré, il suit les règles de votre appareil : un dossier synchronisé, une sauvegarde ou une pièce jointe l'emmènent là où ils vont.
  • Votre appareil vous appartient. Les logiciels malveillants, ou les personnes qui ont accès à votre ordinateur, échappent à ce qu'une page web peut contrôler.

Créez des sous-titres sans rien envoyer

Rien de ce que vous ajoutez ne quitte votre appareil. Ouvrez la page, ajoutez un fichier et regardez l'onglet Réseau pendant le traitement.

Ouvrir le générateur de sous-titres