Documentation
Clipscrit récupère le texte d’une vidéo : ses sous-titres quand TikTok en fournit, sinon une transcription faite par ton navigateur. Trois façons de commencer.
Clipscrit gets the words of a video: its captions when TikTok provides them, otherwise a transcript made by your browser. Three ways to start.
Dans TikTok : Partager, puis Copier le lien. Colle-le, l’extraction part toute seule.
In TikTok: Share, then Copy link. Paste it and extraction starts on its own.
Le Reel s’affiche, puis tu déposes son fichier pour le transcrire.
The Reel shows up, then you drop its file to transcribe it.
Vidéo ou audio (MP4, MOV, WebM, MP3, M4A…). Glisse-le n’importe où sur la page.
Video or audio (MP4, MOV, WebM, MP3, M4A…). Drop it anywhere on the page.
Un lien du type /?url=… ouvre directement une vidéo : pratique pour partager un résultat.
A link like /?url=… opens a video directly, handy to share a result.
Sous-titres ou audio
Pour chaque lien TikTok, Clipscrit regarde d’abord si la vidéo a des sous-titres. Le contour des cartes dit d’où vient le texte :
For each TikTok link, Clipscrit first checks whether the video has captions. The card outline tells you where the text comes from:
On récupère les sous-titres TikTok
Le texte exact de la vidéo, avec le minutage de chaque phrase.
environ 2 secondesTon navigateur écoute l’audio
Un modèle de reconnaissance vocale tourne sur ton appareil. Il se télécharge une fois (80 Mo), puis reste en cache.
environ 1 minuteLangue parlée et qualité
Choisis la langue parlée avant de transcrire : elle est présélectionnée d’après la vidéo ou l’interface. Le modèle ne la détecte pas seul, et sans consigne il traduirait vers l’anglais. La qualité Rapide pèse 80 Mo, la qualité Précise 250 Mo et met plus de temps.
Pick the spoken language before transcribing: it’s preselected from the video or the interface. The model doesn’t detect it on its own and would otherwise translate into English. Fast quality weighs 80 MB; Accurate weighs 250 MB and takes longer.
Sur une vidéo qui a des sous-titres, Retranscrire depuis l’audio remplace le texte par la version du navigateur, souvent mieux ponctuée.
On a video with captions, Re-transcribe from audio replaces the text with the browser’s version, which is often better punctuated.
Instagram et fichiers
Instagram bloque la lecture de ses Reels depuis un serveur. Clipscrit affiche donc le Reel avec l’intégration officielle d’Instagram, et tu déposes son fichier vidéo pour obtenir le texte.
Instagram blocks reading its Reels from a server. Clipscrit shows the Reel with Instagram’s official embed, and you drop its video file to get the text.
- Colle le lien
instagram.com/reel/…. - Paste the
instagram.com/reel/…link. - Récupère le fichier : Partager puis Télécharger quand le créateur l’autorise, ou un enregistrement d’écran.
- Get the file: Share, then Download when the creator allows it, or a screen recording.
- Dépose-le dans la zone prévue : la transcription démarre.
- Drop it in the drop zone: transcription starts.
Lire et exporter
- Texte ou Minuté : un paragraphe, ou une ligne par phrase avec son minutage. Clique une ligne pour lire la vidéo à ce moment.
- Text or Timed: one paragraph, or one line per sentence with its timestamp. Click a line to play the video from there.
- Recherche : surligne un mot et compte ses occurrences.
- Search: highlights a word and counts it.
- Traduction : faite sur ton appareil par Chrome 138 ou plus récent ; ailleurs, un lien ouvre Google Traduction.
- Translation: done on your device by Chrome 138 or later; elsewhere, a link opens Google Translate.
- Exports :
.txt(texte brut),.srtet.vtt(sous-titres). La traduction est exportée si elle est affichée. - Exports:
.txt(plain text),.srtand.vtt(subtitles). The translation is exported when it’s shown. - Miniatures : couverture et image d’origine, téléchargeables.
- Thumbnails: cover and original image, downloadable.
Extraits et bibliothèque
Extraire ce qu’une personne a dit
Tape un mot dans la recherche : chaque phrase qui le contient apparaît avec son minutage. Pour chacune, écoute le passage, télécharge-le en audio (WAV) ou en vidéo, ou prends tous les passages d’un coup. La marge ajoute un peu de son avant et après la phrase ; les passages qui se touchent sont fusionnés.
Type a word in the search: every sentence containing it shows up with its timing. For each one, listen to the passage, download it as audio (WAV) or video, or take all passages at once. Padding adds a bit of sound before and after the sentence; touching passages are merged.
L’audio est découpé instantanément. La vidéo est enregistrée en temps réel par ton navigateur (MP4 dans Chrome et Edge récents, WebM dans Firefox). Rien n’est envoyé au serveur.
Audio is cut instantly. Video is recorded in real time by your browser (MP4 in recent Chrome and Edge, WebM in Firefox). Nothing is sent to the server.
La bibliothèque partagée
Quand ton navigateur transcrit une vidéo sans sous-titres, ou traduit un texte, le résultat rejoint la bibliothèque. Le visiteur suivant de la même vidéo reçoit le texte tout de suite, sans télécharger de modèle ni faire tourner son processeur. Seuls le texte, le minutage, la langue et le modèle sont partagés, jamais le son ni ton identifiant. Décoche « Partager le texte dans la bibliothèque » pour garder un résultat pour toi.
When your browser transcribes a video without captions, or translates a text, the result joins the library. The next visitor of the same video gets the text right away, without downloading a model or running their processor. Only the text, timing, language and model are shared, never the sound or your ID. Untick “Share the text in the library” to keep a result to yourself.
Une transcription faite avec le modèle précis remplace celle du modèle rapide. Un texte signalé faux par plusieurs visiteurs peut être remplacé par la prochaine transcription. Les textes sont stockés compressés (Brotli) dans une base SQLite, avec un index de recherche plein texte qui ignore les accents.
A transcript made with the precise model replaces one from the fast model. A text reported wrong by several visitors can be replaced by the next transcript. Texts are stored compressed (Brotli) in an SQLite database, with a full-text search index that ignores accents.
Niche et engagement
Sous chaque vidéo TikTok, Vidéos similaires se charge tout seul : les vidéos qui partagent ses hashtags (en ignorant #fyp, #viral, #pourtoi…) ou les mots-clés de ce qui est dit, classées par pertinence : un hashtag qui reste dans le sujet compte plus qu’un hashtag fourre-tout, la même langue passe devant, et pas plus de 2 vidéos par créateur. Tu peux aussi trier par vues. S’y ajoutent les dernières vidéos du même créateur.
Under each TikTok video, Similar videos loads on its own: videos sharing its hashtags (ignoring #fyp, #viral, #foryou…) or keywords from what’s said, ranked by relevance: an on-topic hashtag counts more than a catch-all one, the same language comes first, and no more than 2 videos per creator. You can also sort by views. The creator’s latest videos are listed too.
Le taux d’engagement vaut (j’aime + commentaires + partages + favoris) divisé par les vues.
The engagement rate is (likes + comments + shares + saves) divided by views.
Vie privée
Les fichiers que tu déposes et la transcription de l’audio restent sur ton appareil. Rien n’est envoyé à un service de transcription.
Files you drop and audio transcription stay on your device. Nothing is sent to a transcription service.
Pas de compte. Clipscrit pose un seul cookie : un identifiant aléatoire, sans nom, e-mail ni empreinte du navigateur. Il sert aux quotas, à tes stats et à tes clés API. Les stats globales ne comptent que des totaux anonymes : aucun lien, aucune adresse IP, aucun texte.
No account. Clipscrit sets a single cookie: a random ID, with no name, email or browser fingerprint. It’s used for quotas, your stats and your API keys. Global stats only count anonymous totals: no links, no IP addresses, no text.
Cookies et stockage
| Nom | Rôle | Durée | Accord |
|---|---|---|---|
clipscrit_id | Identifiant anonyme : quotas, stats perso, clés API | 13 mois | Nécessaire |
theme, lang | Thème et langue choisis (stockage local) | Jusqu’à effacement | Nécessaire |
recent, mystats | Historique et copie locale de tes stats | Jusqu’à effacement | Nécessaire |
consent | Ton choix sur les cookies | 6 mois | Nécessaire |
| Cookies Instagram (Meta) | Affichage des Reels avec l’intégration officielle | Fixée par Meta | Seulement si tu acceptes |
API HTTP
L’API et le serveur MCP demandent une clé API, envoyée dans l’en-tête Authorization: Bearer <ta clé>. Crée et révoque tes clés sur la page MCP : elles sont liées à ton navigateur par un identifiant anonyme, sans compte. Le serveur ne garde que leur empreinte.
The API and MCP server require an API key, sent in the Authorization: Bearer <your key> header. Create and revoke your keys on the MCP page: they’re tied to your browser through an anonymous ID, with no account. The server only keeps their fingerprint.
Quotas de lectures TikTok par 10 minutes (les réponses en cache ne comptent pas) : 120 par clé, 30 par navigateur sur le site.
TikTok read quotas per 10 minutes (cached answers don’t count): 120 per key, 30 per browser on the site.
| Route | Rôle |
|---|---|
POST /api/extract | Infos, statistiques, hashtags et sous-titres d’une vidéo. Corps : { url }. |
GET /api/similar/:id | Vidéos de la même niche et du même créateur. Paramètres : tags, author. |
GET /api/image/:id/:kind | Miniature : cover, origin, animated ou thumbnail. Ajoute ?download=1 pour enregistrer. |
GET /api/media/:id | Vidéo en H.264, avec requêtes partielles (Range). |
GET /api/audio/:id | Son le plus léger disponible, pour la transcription. |
GET /api/library | Vidéos de la bibliothèque. Paramètres : q (recherche), lang, sort (recent, popular, relevance), offset. |
GET /api/library/:id | Texte gardé d’une vidéo, avec son minutage et les langues traduites. |
GET /api/library/:id/translation/:lang | Traduction gardée dans une langue. |
POST /api/library/:id/transcript | Partager une transcription. Corps : { lang, model, text, cues }. |
GET /api/me | Tes stats perso et la liste de tes clés (sans les clés elles-mêmes). |
GET /api/stats | Totaux anonymes de tous les utilisateurs. Publique, sans clé. |
curl -X POST http://localhost:3003/api/extract \
-H "Authorization: Bearer TA_CLE_API" \
-H "Content-Type: application/json" \
-d '{"url":"https://vm.tiktok.com/ZN8kVeBYg/"}'
Pour les IA (MCP)
Clipscrit est aussi un serveur MCP : Claude, Codex, Cursor, Gemini CLI ou tout assistant compatible peut lire le texte d’une vidéo TikTok, ses infos et sa niche. Quatre outils, tous en lecture seule : get_transcript (avec la bibliothèque et ses traductions), get_video_info, find_similar_videos, search_library. Les réponses sont en TOON, un format compact qui coûte moins de jetons, et le même contenu est fourni en JSON dans structuredContent.
Clipscrit is also an MCP server: Claude, Codex, Cursor, Gemini CLI or any compatible assistant can read a TikTok video’s words, info and niche. Four read-only tools: get_transcript (with the library and its translations), get_video_info, find_similar_videos, search_library. Responses are in TOON, a compact format that costs fewer tokens, and the same content is provided as JSON in structuredContent.
Un résumé lisible par les IA est aussi publié sur /llms.txt.
A summary readable by AI is also published at /llms.txt.
Limites
- Vidéos publiques seulement. Les vidéos privées ou supprimées renvoient une erreur.
- Public videos only. Private or deleted videos return an error.
- La transcription de l’audio demande un navigateur récent (Chrome, Edge, Firefox 114+, Safari 17+) et prend de quelques secondes à quelques minutes selon l’appareil.
- Audio transcription needs a recent browser (Chrome, Edge, Firefox 114+, Safari 17+) and takes from seconds to minutes depending on the device.
- Les vidéos similaires reposent sur les listes publiques de TikTok : environ 8 vidéos populaires par hashtag.
- Similar videos rely on TikTok’s public lists: about 8 popular videos per hashtag.
- Clipscrit n’est affilié ni à TikTok ni à Instagram.
- Clipscrit is not affiliated with TikTok or Instagram.