Communitygithub.com

David-Li0406/meta-skill-evloving

Génère un script Python complet pour analyser l'audio de vidéos (RMS), identifier les moments forts, trier les résultats et extraire les segments correspondants via ffmpeg, avec un positionnement précis du pic sonore (1/3, 1/2, 2/3).

¿Qué es meta-skill-evloving?

meta-skill-evloving is a Claude Code agent skill that génère un script Python complet pour analyser l'audio de vidéos (RMS), identifier les moments forts, trier les résultats et extraire les segments correspondants via ffmpeg, avec un positionnement précis du pic sonore (1/3, 1/2, 2/3).

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/David-Li0406/meta-skill-evloving/tree/HEAD/AutoSkill/SkillBank/ConvSkill/english_gpt4_8_GLM4.7/extraction_video_par_intensite_audio

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

extraction_video_par_intensite_audio

Génère un script Python complet pour analyser l'audio de vidéos (RMS), identifier les moments forts, trier les résultats et extraire les segments correspondants via ffmpeg, avec un positionnement précis du pic sonore (1/3, 1/2, 2/3).

Prompt

Role & Objective

Tu es un expert en développement Python et traitement vidéo. Ton objectif est de générer un script complet qui analyse des fichiers vidéo pour en extraire des segments basés sur les moments audio les plus forts, en appliquant une logique précise de positionnement du pic sonore au sein du segment extrait.

Communication & Style Preferences

Le code doit être en Python, clair et commenté. Les noms de variables et de fonctions doivent être en anglais (ex: calculate_loudness, find_loudest_moments). Les messages utilisateurs doivent être en français.

Operational Rules & Constraints

  1. Analyse Audio :

    • Utiliser moviepy.editor.VideoFileClip pour lire la vidéo et extraire l'audio.
    • Utiliser scipy.io.wavfile pour lire les données audio.
    • Convertir en mono si stéréo (np.mean(audio_data, axis=1)).
  2. Calcul du Volume (Loudness) :

    • Implémenter une fonction calculate_loudness(audio_data) qui calcule le RMS (Root Mean Square) de l'audio.
  3. Recherche des Moments Forts :

    • Implémenter une fonction find_loudest_moments qui identifie les moments les plus forts.
    • Accepter un paramètre allow_overlap.
    • Si allow_overlap est Vrai : Utiliser np.convolve avec une fenêtre glissante pour trouver les pics.
    • Si allow_overlap est Faux : Diviser l'audio en segments non chevauchants et calculer la moyenne pour chaque segment.
  4. Tri des Moments (Sorting) :

    • Demander à l'utilisateur de choisir l'ordre de tri : 1 : Ordre d'apparition (chronologique). 2 : Ordre d'apparition inverse. 3 : Volume croissant. 4 : Volume décroissant.
    • Appliquer ce tri à la liste des moments avant de les retourner.
  5. Positionnement du Pic (Logique de Calcul) :

    • Demander à l'utilisateur où positionner le pic dans le segment (1: Début, 2: Milieu, 3: Fin, 4: Aléatoire).
    • Calculer le start_time du segment en fonction du peak_time et de la segment_duration selon le choix :
      1. Début : Le pic est à 1/3 du segment. start_time = peak_time - (segment_duration / 3)
      2. Milieu : Le pic est au centre. start_time = peak_time - (segment_duration / 2)
      3. Fin : Le pic est à 2/3 du segment. start_time = peak_time - (2 * segment_duration / 3)
      4. Aléatoire : Choisir un ratio r aléatoire dans [1/3, 1/2, 2/3], puis start_time = peak_time - (r * segment_duration).
    • Boundary Handling : Assurer que le start_time calculé n'est pas inférieur à 0 et que le segment ne dépasse pas la durée totale de la vidéo (video_duration). Ajuster le start_time si nécessaire pour respecter ces limites.
  6. Extraction Vidéo :

    • Utiliser subprocess.run pour appeler ffmpeg.
    • Paramètres ffmpeg obligatoires : -c:v libx264, -preset medium, -crf 23, -c:a aac, -b:a 192k.
    • Nommer les fichiers de sortie {base_name}_moment{i+1}.mp4 dans un dossier 'Output'.
  7. Gestion des Arguments & Interaction :

    • Le script doit poser des questions à l'utilisateur au lancement. Le format des questions binaires doit être strictement "1-Oui 2-Non".
    • Paramètres à demander : Offset de début (secondes), Offset de fin (secondes), Durée du segment (secondes), Position du pic sonore (1-4), Autoriser le chevauchement ? (1-Oui, 2-Non), Mode Autopilote ? (1-Oui, 2-Non).
    • Si Autopilote est Oui : Calculer le nombre maximum de moments possibles (video_duration // segment_duration).
    • Si Autopilote est Non : Demander le nombre de moments à extraire.
    • Demander l'ordre de tri (1-4).

Anti-Patterns

  • Ne pas utiliser de format "yes/no" ou "y/n" pour les questions binaires. Utiliser impérativement "1-Oui 2-Non".
  • Ne pas utiliser float('inf') directement comme index de tableau numpy.
  • Ne pas oublier de convertir l'audio stéréo en mono avant l'analyse.
  • Ne pas laisser de fichiers temporaires (.wav) après le traitement.
  • Ne pas utiliser de méthode de calcul non définie (RMS uniquement).
  • Ne pas sortir des limites de la vidéo lors du calcul du start_time (vérifier que start_time >= 0 et start_time + duration <= video_duration).

Interaction Workflow

  1. Demander les paramètres utilisateur (offsets, durée, position pic, chevauchement, autopilote, tri).
  2. Parcourir les fichiers vidéo (.mp4, .mkv, .wmv, .avi).
  3. Pour chaque vidéo : extraire audio, calculer volume (RMS), trouver moments (selon chevauchement), trier moments, calculer start_time précis selon la position du pic, extraire segments.

Triggers

  • script pour extraire les moments forts d'une vidéo
  • analyse audio RMS ou pics
  • extraire segments vidéo basés sur l'audio
  • script python traitement vidéo autopilote
  • trier les segments vidéo par volume
  • analyser l'intensité sonore pour découper vidéo
  • positionner le pic sonore
  • logique extraction segment vidéo

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

David-Li0406/meta-skill-evloving

Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", or any browser interaction request.

David-Li0406/meta-skill-evloving

Create technical diagrams using Mermaid syntax for architecture, sequences, ERDs, flowcharts, and state machines. Use for visualizing system design, data flows, and processes. Triggers: diagram, mermaid, architecture diagram, sequence diagram, flowchart, ERD, entity relationship, state diagram, C4 model, component diagram, visualize, draw.

David-Li0406/meta-skill-evloving

Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks

David-Li0406/meta-skill-evloving

Complete color manipulation and green screen effects system. PROACTIVELY activate for: (1) Green screen/chromakey removal, (2) Color grading with LUTs, (3) Color correction (levels, curves, white balance), (4) Colorkey/color removal effects, (5) Hue/saturation manipulation, (6) Color space conversions (BT.709, BT.2020, HDR), (7) Color isolation effects, (8) Teal and orange look, (9) Vintage/film looks, (10) Color keying for transparency. Provides: chromakey and colorkey filters, LUT application (lut3d), curves and levels adjustment, color balance, selective color manipulation, color space handling, HDR tone mapping, professional color grading chains.

David-Li0406/meta-skill-evloving

Convert files and office documents to Markdown. Supports PDF, DOCX, PPTX, XLSX, images (with OCR), audio (with transcription), HTML, CSV, JSON, XML, ZIP, YouTube URLs, EPubs and more.

David-Li0406/meta-skill-evloving

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

David-Li0406/meta-skill-evloving

Build with OpenAI's stateless APIs - Chat Completions (GPT-5, GPT-4o), Embeddings, Images (DALL-E 3), Audio (Whisper + TTS), and Moderation. Includes Node.js SDK and fetch-based approaches for Cloudflare Workers. Use when: implementing chat completions with GPT-5/GPT-4o, streaming responses with SSE, using function calling/tools, creating structured outputs with JSON schemas, generating embeddings for RAG (text-embedding-3-small/large), generating images with DALL-E 3, editing images with GPT-Image-1, transcribing audio with Whisper, synthesizing speech with TTS (11 voices), moderating content (11 safety categories), or troubleshooting rate limits (429), invalid API keys (401), function calling failures, streaming parse errors, embeddings dimension mismatches, or token limit exceeded.

David-Li0406/meta-skill-evloving

Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.

David-Li0406/meta-skill-evloving

Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks

David-Li0406/meta-skill-evloving

Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas

David-Li0406/meta-skill-evloving

Best practices for Remotion - Video creation in React

David-Li0406/meta-skill-evloving

指导如何通过自定义注解(如@Unicom)标识Dubbo接口,利用BeanDefinitionRegistryPostProcessor在启动时扫描并动态注册ReferenceBean,实现RPC调用的封装。

David-Li0406/meta-skill-evloving

生成Python脚本,利用FFmpeg将图片序列按3x3布局合并,或将合并图拆分。要求使用subprocess模块执行命令,并支持用户交互式输入路径。

David-Li0406/meta-skill-evloving

Generates KWL (Know, Want to know, Learned) charts for educational videos, specifically BrainPOP, using simple 7th-grade language and short, concise bullet points.

David-Li0406/meta-skill-evloving

Generates image captions written from the first-person perspective of a specific subject or character depicted in the image, adhering to specified tones or intents.

David-Li0406/meta-skill-evloving

Generates funny, controversial dialogue scripts for 20-second video reels featuring two characters, using dark humor and organic storytelling.

David-Li0406/meta-skill-evloving

Generates concise, memorable, and attention-grabbing subtitles for businesses or professions that highlight unique value and align with specific brand identity tones.

David-Li0406/meta-skill-evloving

Converts raw, fragmented YouTube auto-generated subtitles into coherent, readable sentences while strictly preserving original words and word order, and identifying speakers.

David-Li0406/meta-skill-evloving

Generates high-quality, SEO-optimized hashtags for YouTube video titles to improve discoverability and categorization.

David-Li0406/meta-skill-evloving

Tracks complex, multi-session work using the Beads issue tracker and dependency graphs, and provides persistent memory that survives conversation compaction. Use when work spans multiple sessions, has complex dependencies, or needs persistent context across compaction cycles. Trigger with phrases like "create task for", "what's ready to work on", "show task", "track this work", "what's blocking", or "update status".

Skills relacionados