À propos du projet

OpenClip est un outil automatisé de traitement vidéo fondé sur Python, FFmpeg et uv, principalement utilisé pour identifier et exporter des moments forts à partir de vidéos longues telles que les présentations parlées, rediffusions en direct, entretiens et podcasts. Après qu’un utilisateur fournit une URL vidéo ou un fichier local, le flux comprend le téléchargement ou la vérification de la vidéo, la récupération des sous-titres de la plateforme ou une transcription vocale locale, la segmentation de la vidéo longue, l’analyse par IA et l’agrégation des clips candidats, la génération des clips, la création de fichiers de sous-titres, la génération d’images de couverture, ainsi que l’ajout optionnel d’un titre et l’incrustation de sous-titres. Les capacités principales incluent : - La prise en charge des liens vidéo Bilibili et YouTube et des fichiers vidéo locaux ; Streamlit prend également en charge le téléversement de fichiers depuis le navigateur. - Lors de la transcription, les sous-titres de la plateforme sont utilisés en priorité ; l’ASR local peut être routé selon la langue, Whisper étant utilisé pour l’anglais, Paraformer pouvant être choisi pour le chinois, avec un repli sur Whisper en cas d’indisponibilité. - L’IA sélectionne les moments forts selon des dimensions telles que le contenu, l’interactivité et la valeur de divertissement, et --user-intent permet de spécifier en langage naturel le sujet à privilégier ; il est aussi possible d’ajouter des informations sur le contexte de l’animateur et des modèles de prompts personnalisés. - La prise en charge de paramètres tels que le nombre de clips, les préréglages de durée, le style de titre, la taille de police, ainsi que la position et la couleur du texte sur la couverture. - La sortie automatique de clips vidéo indépendants, de sous-titres SRT, d’un résumé Markdown et d’images de couverture. - Un mode optionnel d’optimisation approfondie qui ajoute, après l’agrégation des clips candidats, une révision par IA, une correction des limites puis une nouvelle révision, afin d’améliorer l’autonomie de chaque segment. - L’incrustation directe optionnelle des sous-titres, qui nécessite FFmpeg avec libass ; il est également possible de traduire via le LLM sélectionné et d’incruster des sous-titres bilingues. - Une version préliminaire de reconnaissance des locuteurs peut annoter les noms des locuteurs à partir d’audio de référence, adaptée aux conversations multi-locuteurs ; elle nécessite l’installation supplémentaire de la dépendance speakers et la configuration d’un jeton HuggingFace. - Le Clip Editor de post-traitement permet d’ajuster les limites d’un clip individuel, les sous-titres et le titre de couverture, avec un réencodage à vitesse accélérée. L’outil propose trois interfaces : l’interface web Streamlit prend en charge les tâches en arrière-plan, l’exécution concurrente de plusieurs tâches, la persistance des tâches, le suivi de progression, la configuration du mode Cookie et l’accès au réseau local ; la CLI est adaptée aux traitements scriptés ; Agent Skills peut être appelé par des agents compatibles avec les compétences tels que Claude Code, TRAE ou Cursor, pour lancer en langage naturel des tâches de traitement vidéo. Les interfaces IA prennent en charge Qwen, OpenRouter, Zhipu GLM et MiniMax, ainsi que des interfaces personnalisées compatibles OpenAI, pouvant se connecter à des services tels que LM Studio, vLLM, One API ou New API. Le téléchargement à distance prend en charge trois modes : sans Cookie, avec les cookies du navigateur, ou avec un fichier cookies.txt au format Netscape ; dans certains scénarios YouTube, il est recommandé d’installer Deno ou Node. Les résultats sont enregistrés par défaut dans processed_videos et organisés dans des dossiers tels que downloads, splits, clips et clips_post_processed. Le projet est sous licence MIT.