# YouTube-transskriptionsagentfærdighed

> Download YouTube-videotransskriptioner, undertekster og forsidebilleder via URL eller video-id. Understøtter flere sprog, oversættelse, kapitler og taleridentifikation for at forbedre indholdstilgængelighed. Start gratis på få sekunder.

- Canonical: https://nanoskill.ai/da/skills/youtube-transcript
- Markdown: https://nanoskill.ai/da/skills/youtube-transcript.md
- Author: JimLiu
- Published: 2026-06-03T05:58:31.787Z
- Updated: 2026-07-15T13:36:15.347Z
- Language: da
- Source type: github
- Popularity signal: 1040

## Sources

- https://github.com/JimLiu/baoyu-skills

## Install

```shell
npx skills add https://github.com/JimLiu/baoyu-skills/tree/main/skills/baoyu-youtube-transcript
```

## About

Færdigheden YouTube-transskriptionsdownloader tilbyder en robust løsning til udtrækning af omfattende information fra YouTube-videoer. Denne færdighed giver brugere mulighed for nemt at downloade fulde YouTube-transskriptioner, undertekster og endda forsidebilleder ved blot at angive en video-URL eller et id. Den er designet til indholdsskabere, forskere og alle, der har brug for at omdanne talt indhold til tekst, og tilbyder funktioner som flersprogssupport, oversættelsesmuligheder og avancerede struktureringsvalg.

Ved at udnytte direkte adgang til YouTubes InnerTube API og en smart fallback til \`yt-dlp\` sikrer færdigheden pålidelig og effektiv datahentning uden behov for personlige API-nøgler. Den tilbyder fleksible outputformater, herunder Markdown til detaljeret analyse med tidsstempler og kapitelmarkører, og SRT til standard undertekstintegration. Desuden understøtter den kapitelsegmentering fra videobeskrivelser og leverer en arbejdsgang til AI-drevet taleridentifikation, der leverer meget organiseret og tilskrevet tekst.

Med intelligent caching minimerer færdigheden overflødige netværksanmodninger, hvilket gør efterfølgende handlinger på den samme video usædvanligt hurtige. Uanset om du har brug for at analysere videoindhold, oprette tilgængelige undertekster, oversætte materiale til et globalt publikum eller blot udtrække videometadata og thumbnails, strømliner denne færdighed processen og giver et kraftfuldt værktøj til YouTube-indholdsstyring.

## Key features

- **Direkte YouTube-adgang**: Får direkte adgang til YouTubes InnerTube API for hurtig transskriptionhentning, og falder automatisk tilbage til \`yt-dlp\`, hvis den direkte API blokeres, hvilket sikrer pålidelig adgang uden API-nøgler.
- **Flersproget understøttelse og oversættelse**: Angiv foretrukne sprog til transskriptioner og oversæt dem til et målsprog, hvilket gør indhold tilgængeligt for et globalt publikum.
- **Kapitelopdeling og taleridentifikation**: Segmenterer automatisk transskriptioner efter videokapitler og understøtter AI-efterbehandling til taleridentifikation, hvilket giver struktureret og tilskrevet tekst.
- **Fleksible outputformater**: Genererer transskriptioner i Markdown med tidsstempler eller SRT-undertekstfiler, velegnet til forskellige anvendelser fra indholdsanalyse til videoafspillere.
- **Smart caching for effektivitet**: Cacher rå videodata, metadata og segmenterede transskriptioner, hvilket muliggør hurtig omformatering og reducerer netværkskald ved efterfølgende forespørgsler til den samme video.

## Use cases

- **Generer YouTube-transskriptioner til indholdsanalyse**: Indholdsskabere og forskere kan hurtigt få adgang til fulde YouTube-transskriptioner, inklusive tidsstempler og kapitelmarkører, for at analysere videoindhold, udtrække nøgleinformation eller genanvende talt indhold til tekstbaserede artikler.
- **Opret undertekstfiler for tilgængelighed**: Videoredigerere og tilgængelighedsspecialister kan generere SRT-undertekstfiler fra YouTube-videoer, hvilket sikrer, at indholdet er tilgængeligt for hørehæmmede eller dem, der foretrækker at forbruge indhold uden lyd.
- **Oversæt videoindhold for global rækkevidde**: Marketingfolk og undervisere kan oversætte YouTube-transskriptioner til flere sprog, hvilket udvider rækkevidden af deres videoindhold til ikke-modersmålstalere og forbedrer globalt engagement.
- **Uddrag metadata og coverbilleder**: Brugere kan nemt udtrække video-metadata og coverbilleder i høj kvalitet, nyttigt til katalogisering, promovering på sociale medier eller oprettelse af visuelle aktiver relateret til videoindholdet.

## Result preview

Udforsk en professionel videoanalyserapport drevet af denne færdighed.

![A presentation cover slide featuring a TED Talk analysis titled 'This Is How Kids Should Be Learning with AI'. The slide uses a bold red background with large white headline text centered prominently across the page. Beneath the title, the speaker and event are identified as 'Priya Lakhani | TEDNext 2025', accompanied by the subtitle 'TED Talk Analysis & Knowledge Report'. The lower portion of the slide contains a thumbnail image from the TED presentation showing the speaker on stage alongside the text 'AI Isn't a Shortcut to Learning'. A teal horizontal accent bar runs along the bottom edge, creating visual contrast. The overall design resembles a professional report or presentation cover summarizing key insights from a TED Talk about artificial intelligence and education.](https://file.nanoskill.ai/youtube-transcript-outcome1.png)

![A report page titled '\[ Executive Summary \]' from a TED Talk analysis on artificial intelligence and education. The page summarizes key arguments presented by education entrepreneur Priya Lakhani at TEDNext 2025, discussing the impact of AI in classrooms, the risks of students using AI to avoid learning, and the importance of productive struggle in effective education. Several paragraphs explain how neuroscience-informed AI systems can support deeper learning when designed to challenge rather than replace student effort. A section titled 'Key Statistics at a Glance' highlights major findings using four large color-coded statistic cards. The statistics include 20% of UK students leaving secondary school without adequate reading and writing skills, 74% of teachers considering leaving the profession within three years due to workload, one in five students using AI to complete all homework assignments, and over 40 billion data points collected on how children learn. The layout uses a clean report style with a red section header, structured text blocks, and colorful infographic-style data highlights to emphasize key educational challenges and opportunities.](https://file.nanoskill.ai/youtube-transcript-outcome2.png)

![A report page titled '\[ The Four Pillars of Learning \]' that presents four evidence-based learning principles supported by cognitive science and educational research. The page is organized into four color-coded sections: Retrieval Practice, Spacing, Generation, and Reflection. Each section includes a concise explanation of the learning principle and a highlighted 'Classroom Applications' box containing practical implementation examples. Retrieval Practice emphasizes recalling information from memory through activities such as flashcards, self-testing, and closed-book quizzes. Spacing focuses on distributing learning over time using spaced repetition and interleaved study sessions. Generation encourages learners to produce answers themselves through prediction, fill-in-the-blank exercises, and open-ended questioning. Reflection highlights structured self-assessment and feedback processes that help students evaluate progress, identify learning goals, and address knowledge gaps. The page uses a clean educational report layout with colored headers, explanatory text, and application callout boxes to summarize effective learning strategies for classrooms and AI-supported education.](https://file.nanoskill.ai/youtube-transcript-outcome3.png)

![A report page from a TED Talk analysis featuring two major sections: 'Neuroscience: The London Taxi Study' and 'AI in Education: Well-Designed vs. Poorly Used.' The first section explains a neuroscience study of London black cab drivers who memorize thousands of city streets to pass 'The Knowledge' exam. It describes how brain scans revealed that experienced drivers developed a larger hippocampus, demonstrating that sustained mental effort and navigation challenges can physically strengthen the brain. A highlighted key insight box emphasizes that mental effort is essential for durable learning, expertise development, and human creativity rather than being a flaw in the learning process. The second section presents a side-by-side comparison of educational AI usage. The left panel, labeled 'AI Well-Designed,' lists benefits such as identifying learning patterns, predicting forgetting, encouraging answer generation, providing targeted feedback, personalizing instruction, supporting teachers, and reducing workload. The right panel, labeled 'AI Poorly Used,' outlines risks including students using AI to complete all work, avoiding genuine learning, replacing thinking with shortcuts, creating false confidence, confusing fluency with understanding, and reducing productive struggle. The layout uses contrasting green and red comparison panels, educational report styling, and structured visual hierarchy to highlight the difference between AI that supports learning and AI that undermines it.](https://file.nanoskill.ai/youtube-transcript-outcome4.png)

## Result walkthrough

### Installer

Tilføj YouTube-transskriptionsagentfærdigheden til din AI-agent.

![A screenshot showing the installation process of the 'baoyu-youtube-transcript' AI agent skill from a GitHub repository using an NPX command. At the top, a blue command banner displays the installation command for adding the skill from the GitHub repository. Below, a conversational interface explains the installation workflow, including handling an interactive installation prompt, detecting that the process did not complete automatically, rerunning the command with a '-y' flag to bypass prompts, and explicitly targeting the Hermes Agent environment. The log then describes creating a symbolic link from the agent skills directory to the Hermes skills directory so the skill can be recognized by the Hermes Agent. A final confirmation states that the 'baoyu-youtube-transcript' skill was successfully installed, linked, and is available for use through a skill invocation command. The interface uses a clean chat-style layout with gray response panels, dark blue command highlighting, and monospaced code snippets for file paths and terminal commands.](https://file.nanoskill.ai/youtube-transcript-install.png)

### Angiv indhold

Del et YouTube-link og angiv dit ønskede outputformat.

![A screenshot showing a prompt and response workflow for a YouTube transcript analysis skill. The top section contains a dark blue prompt panel describing an AI-powered content research and knowledge extraction system designed to analyze YouTube videos and transform them into structured knowledge assets. The prompt outlines requirements such as extracting complete transcripts, metadata, chapter structures, timestamps, speaker distinctions, key topics, major insights, statistics, examples, and actionable takeaways. It also lists supported output formats including executive summaries, study notes, blog articles, social media content, newsletter drafts, and research reports. Additional instructions emphasize transcript quality evaluation, improved readability, information hierarchy, redundancy removal, and generating a polished final deliverable. The requested output is a visually engaging PDF report with chapter navigation, highlighted takeaways, and presentation-ready layouts. Beneath the prompt, a gray response panel shows the AI acknowledging that the skill has been loaded successfully but explaining that a YouTube URL is still required before transcript extraction and report generation can begin. The interface uses a clean chat-style layout with large rounded panels, white text on a dark blue background, and structured instructional formatting.](https://file.nanoskill.ai/youtube-transcript-task.png)

### Uddrag indsigter

Generer strukturerede transskriptioner, resuméer, vigtige pointer og genanvendeligt indhold.

![A presentation cover slide for a TED Talk analysis and knowledge report. The slide features a bold red background with a teal accent bar running along the bottom edge. Centered at the top is the large white title 'This Is How Kids Should Be Learning with AI.' Below the title, the speaker attribution reads 'Priya Lakhani | TEDNext 2025,' followed by the subtitle 'TED Talk Analysis & Knowledge Report' in italicized white text. In the center of the slide is a thumbnail image from the TED Talk showing Priya Lakhani on stage. The thumbnail includes the prominent message 'AI Isn't a Shortcut to Learning' alongside the TED logo. The overall design resembles a professional research report cover, using strong typography, high contrast colors, and a clean layout to introduce an educational analysis focused on artificial intelligence, learning science, and the future of education.](https://file.nanoskill.ai/youtube-transcript-outcome.png)

## Skill definition

# YouTube-transskription

Downloader transskriptioner (undertekster/tekstning) fra YouTube-videoer. Fungerer med både manuelt oprettede og automatisk genererede transskriptioner. Ingen API-nøgle eller browser påkrævet — bruger YouTubes InnerTube API direkte og falder automatisk tilbage på `yt-dlp`, når YouTube blokerer den direkte API-sti.

Henter video-metadata og forsidebillede ved første kørsel, cacher rådata for hurtig reformattering.

## Scriptbibliotek

Scripts i underbiblioteket `scripts/`. `{baseDir}` = denne SKILL.md-fils bibliotekssti. Opløs `${BUN_X}`-køretid: hvis `bun` er installeret → `bun`; hvis `npx` er tilgængelig → `npx -y bun`; ellers foreslå installation af bun. Erstat `{baseDir}` og `${BUN_X}` med faktiske værdier.

| Script | Formål |
|--------|---------|
| `scripts/main.ts` | CLI til transskriptionsdownload |

## Brug

```bash
# Standard: markdown med tidsstempler (engelsk)
${BUN_X} {baseDir}/scripts/main.ts <youtube-url-or-id>

# Angiv sprog (prioritetsrækkefølge)
${BUN_X} {baseDir}/scripts/main.ts <url> --languages zh,en,ja

# Uden tidsstempler
${BUN_X} {baseDir}/scripts/main.ts <url> --no-timestamps

# Med kapitelinddeling
${BUN_X} {baseDir}/scripts/main.ts <url> --chapters

# Med taleridentifikation (kræver AI-efterbehandling)
${BUN_X} {baseDir}/scripts/main.ts <url> --speakers

# SRT-undertekstfil
${BUN_X} {baseDir}/scripts/main.ts <url> --format srt

# Oversæt transskription
${BUN_X} {baseDir}/scripts/main.ts <url> --translate zh-Hans

# Vis tilgængelige transskriptioner
${BUN_X} {baseDir}/scripts/main.ts <url> --list

# Tving genhentning (ignorér cache)
${BUN_X} {baseDir}/scripts/main.ts <url> --refresh
```

## Indstillinger

| Indstilling | Beskrivelse | Standard |
|--------|-------------|---------|
| `<url-or-id>` | YouTube-URL eller video-id (flere tilladt) | Påkrævet |
| `--languages <codes>` | Sprogkoder, kommasepareret, i prioritetsrækkefølge | `en` |
| `--format <fmt>` | Outputformat: `text`, `srt` | `text` |
| `--translate <code>` | Oversæt til angivet sprogkode | |
| `--list` | Vis tilgængelige transskriptioner i stedet for at hente | |
| `--timestamps` | Inkludér tidsstempler pr. afsnit i formatet `[HH:MM:SS → HH:MM:SS]` | til |
| `--no-timestamps` | Deaktiver tidsstempler | |
| `--chapters` | Kapitelinddeling fra videobeskrivelse | |
| `--speakers` | Rå transskription med metadata til taleridentifikation | |
| `--exclude-generated` | Spring automatisk genererede transskriptioner over | |
| `--exclude-manually-created` | Spring manuelt oprettede transskriptioner over | |
| `--refresh` | Tving genhentning, ignorér cachedata | |
| `-o, --output <path>` | Gem til specifik filsti | auto-genereret |
| `--output-dir <dir>` | Basis output-bibliotek | `youtube-transcript` |

## Valgfri miljøvariabler

| Variabel | Beskrivelse |
|----------|-------------|
| `YOUTUBE_TRANSCRIPT_COOKIES_FROM_BROWSER` | Videresendes til `yt-dlp --cookies-from-browser` under fallback, f.eks. `chrome`, `safari`, `firefox` eller `chrome:Profile 1` |

## Inputformater

Accepterer enhver af disse som videoinput:
- Fuld URL: `https://www.youtube.com/watch?v=dQw4w9WgXcQ`
- Kort URL: `https://youtu.be/dQw4w9WgXcQ`
- Indlejrings-URL: `https://www.youtube.com/embed/dQw4w9WgXcQ`
- Shorts-URL: `https://www.youtube.com/shorts/dQw4w9WgXcQ`
- Video-ID: `dQw4w9WgXcQ`

## Outputformater

| Format | Filendelse | Beskrivelse |
|--------|-----------|-------------|
| `text` | `.md` | Markdown med frontmatter (inkl. `description`), titeloverskrift, resumé, valgfri indholdsfortegnelse/cover/tidsstempler/kapitler/talere |
| `srt` | `.srt` | SubRip-undertekstformat til videoafspillere |

## Output-bibliotek

```
youtube-transcript/
├── .index.json                          # Video-ID → bibliotekssti-mapping (til cacheopslag)
└── {channel-slug}/{title-full-slug}/
    ├── meta.json                        # Video-metadata (titel, kanal, beskrivelse, varighed, kapitler, osv.)
    ├── transcript-raw.json              # Rå transskriptionsuddrag fra YouTube API (cachet)
    ├── transcript-sentences.json        # Sætningsopdelt transskription (opdelt efter tegnsætning, flettet på tværs af uddrag)
    ├── imgs/
    │   └── cover.jpg                    # Video-miniaturebillede
    ├── transcript.md                    # Markdown-transskription (genereret fra sætninger)
    └── transcript.srt                   # SRT-undertekst (genereret fra rå uddrag, hvis --format srt)
```

- `{channel-slug}`: Kanalnavn i kebab-case
- `{title-full-slug}`: Fuld videotitel i kebab-case

Funktionen `--list` udskriver kun til stdout (ingen fil gemmes).

## Caching

Ved første hentning gemmer scriptet:
- `meta.json` — video-metadata, kapitler, forsidebilledsti, sproginfo
- `transcript-raw.json` — rå transskriptionsuddrag fra YouTube API (`{ text, start, duration }[]`)
- `transcript-sentences.json` — sætningsopdelt transskription (`{ text, start: "HH:mm:ss", end: "HH:mm:ss" }[]`), opdelt efter sætningsafsluttende tegnsætning (`.?!…。？！` osv.), tidsstempler proportionelt fordelt efter tegnlængde, CJK-bevidst tekstsammenfletning
- `imgs/cover.jpg` — video-miniaturebillede

Efterfølgende kørsler for den samme video bruger cachede data (ingen netværkskald). Brug `--refresh` for at tvinge genhentning. Hvis et andet sprog anmodes om, opdateres cachen automatisk.

Når YouTube returnerer anti-bot / blokerede svar på den direkte InnerTube-sti, prøver scriptet igen med alternative klientidentiteter og falder derefter tilbage på `yt-dlp`, hvis det er tilgængeligt. Hvis fallback er nødvendig, men `yt-dlp` ikke er tilgængelig, skal agenten beslutte, hvordan `yt-dlp` gøres tilgængelig, og fortsætte i stedet for at skubbe installationsbeslutningen til brugeren.

SRT-output (`--format srt`) genereres fra `transcript-raw.json`. Tekst-/markdown-output bruger `transcript-sentences.json` for naturlige sætningsgrænser.

## Arbejdsgang

Når brugeren angiver en YouTube-URL og ønsker transskriptionen:

1. Kør med `--list` først, hvis brugeren ikke har angivet et sprog, for at vise tilgængelige muligheder
2. **Sæt altid URL'en i enkelte anførselstegn**, når scriptet køres — zsh behandler `?` som et glob-jokertegn, så en URL uden anførselstegn forårsager "ingen matches fundet": brug `'https://www.youtube.com/watch?v=ID'`
3. Standard: kør med `--chapters --speakers` for det rigeste output (kapitler + taleridentifikation)
3. Scriptet auto-gemmer cachede data + outputfil og udskriver filstien
4. For `--speakers`-tilstand: efter scriptet har gemt råfilen, følg arbejdsgangen for taleridentifikation nedenfor for at efterbehandle med taleretiketter

Når brugeren kun ønsker et forsidebillede eller metadata, vil kørsel af scriptet med en hvilken som helst indstilling også cache `meta.json` og `imgs/cover.jpg`.

Ved reformattering af den samme video (f.eks. først tekst derefter SRT), genbruges de cachede data — ingen genhentning nødvendig.

## Kapitel- og talerarbejdsgang

### Kapitler (`--chapters`)

Scriptet analyserer kapitel-tidsstempler fra videobeskrivelsen (f.eks. `0:00 Introduktion`), opdeler transskriptionen efter kapitelgrænser, grupperer uddrag i læsbare afsnit og gemmer som `.md` med en indholdsfortegnelse. Ingen yderligere behandling nødvendig.

Hvis der ikke findes kapitel-tidsstempler i beskrivelsen, udskrives transskriptionen som grupperede afsnit uden kapiteloverskrifter.

### Taleridentifikation (`--speakers`)

Taleridentifikation kræver AI-behandling. Scriptet udsender en rå `.md`-fil, der indeholder:
- YAML frontmatter med video-metadata (titel, kanal, dato, forside, beskrivelse, sprog)
- Videobeskrivelse (til udtræk af talernavne)
- Kapitelliste fra beskrivelse (hvis tilgængelig)
- Rå transskription i SRT-format (forudberegnede start-/sluttidsstempler, token-effektiv)

Efter scriptet har gemt råfilen, start en underagent (brug en billigere model som Sonnet for omkostningseffektivitet) til at behandle taleridentifikation:

1. Læs den gemte `.md`-fil
2. Læs prompt-skabelonen på `{baseDir}/prompts/speaker-transcript.md`
3. Behandl den rå transskription i henhold til prompten:
   - Identificer talere ved hjælp af video-metadata (titel → gæst, kanal → vært, beskrivelse → navne)
   - Registrer talerskift ud fra samtale-flow, spørgsmål-svar-mønstre og kontekstuelle signaler
   - Opdel i kapitler (brug beskrivelseskapitler, hvis tilgængelige, ellers opret ud fra emneskift)
   - Formater med `**Talernavn:**`-etiketter, afsnitsgruppering (2-4 sætninger) og `[HH:MM:SS → HH:MM:SS]` tidsstempler
4. Overskriv `.md`-filen med den behandlede transskription (behold YAML frontmatter)

Når `--speakers` bruges, er `--chapters` underforstået — det behandlede output inkluderer altid kapitelinddeling.

## Fejlsager

| Fejl | Betydning |
|-------|---------|
| Transskriptioner deaktiveret | Videoen har slet ingen undertekster |
| Ingen transskription fundet | Det anmodede sprog er ikke tilgængeligt |
| Video utilgængelig | Video slettet, privat eller regionslåst |
| IP blokeret | For mange anmodninger, prøv igen senere |
| Aldersbegrænset | Video kræver login til aldersbekræftelse |
| bot opdaget | Scriptet prøver igen med alternative klienter og derefter `yt-dlp`; hvis fallback-værktøj mangler, skal agenten selv løse det, ellers hvis det stadig fejler, prøv `YOUTUBE_TRANSCRIPT_COOKIES_FROM_BROWSER=safari` (eller din browser) |

## FAQ

### Hvad er YouTube Transcript Downloader Skill?

YouTube Transcript Downloader Skill er et værktøj, der giver dig mulighed for at downloade transskriptioner, undertekster og coverbilleder fra YouTube-videoer ved blot at bruge deres URL eller video-ID. Det understøtter forskellige funktioner som flersproget hentning, oversættelse, kapitelopdeling og taleridentifikation.

### Hvordan får denne skill YouTube-transskriptioner uden en API-nøgle?

Skill'en bruger direkte YouTubes InnerTube API til at hente transskriptioner. Hvis direkte adgang blokeres, falder den automatisk tilbage til \`yt-dlp\` for at sikre pålidelig transskriptionhentning uden at kræve en separat API-nøgle.

### Kan jeg få transskriptioner på andre sprog end engelsk?

Ja, du kan angive en kommasepareret liste over sprogkoder ved hjælp af \`--languages\`-valgmuligheden. Skill'en vil forsøge at hente transskriptioner i den angivne prioriterede rækkefølge. Du kan også oversætte transskriptionen til et andet sprog ved hjælp af \`--translate\`-valgmuligheden.

### Understøtter den taleridentifikation og kapitelopdeling?

Ja, skill'en understøtter kapitelopdeling fra videobeskrivelser ved hjælp af \`--chapters\`-valgmuligheden. Til taleridentifikation kan du bruge \`--speakers\`-valgmuligheden, som udsender en rå fil til AI-efterbehandling til at mærke talere.

### Hvilke outputformater er tilgængelige for YouTube-transskriptionen?

Du kan udskrive transskriptionen i Markdown-format (\`.md\`), som inkluderer tidsstempler, kapitler og valgfri taledata, eller som en SRT-undertekstfil (\`.srt\`), der er kompatibel med de fleste videoafspillere.

### Er der en caching-mekanisme, og hvordan fungerer den?

Ja, skill'en cacher video-metadata, rå transskriptionsdata og segmenterede sætninger. Efterfølgende kørsler for den samme video vil bruge disse cachede data, hvilket fremskynder behandlingen. Du kan tvinge en genhentning med \`--refresh\`-valgmuligheden.
