Към всички skills

video-transcribe

wendy7756 · Инструменти

Transcribe and summarize a video or podcast from a URL (YouTube, TikTok, Bilibili, Apple Podcasts, SoundCloud, 30+ platforms) or from a local media/.txt file. Use when the user shares a video/podcast link or media file and wants a transcript, summary, translation, or the original video downloaded. Triggers on "transcribe", "summarize this video", "what does this video say", "get the transcript", "转录", "视频摘要".

Оригинален текст · няма потвърден превод на български

Теми: aitool · tiktok · transcribe · videototext · youtube

Първо прочетете инструкцията.

Файлът се зарежда от посочения източник само по ваше действие. Можете да го прочетете тук, да го копирате или да го запазите като .md.

Оригинален SKILL.md
GitHub хранилище
Звезди на репото
3290
Лиценз
Apache-2.0
Последна проверка на записа
22.09.2026 г.

Добавете в своя инструмент.

Командата отваря избора на skills от репозитория. Прочетете файла и условията на автора преди изпълнение.

npx skills add wendy7756/AI-Video-Transcriber

Страницата копира текст. Не инсталира и не изпълнява нищо на устройството ви.

Откъс от SKILL.md

Началото на файла на автора, без превод.

Video Transcribe

Runs this repo's pipeline headlessly: platform subtitles when available (seconds), local Whisper as fallback, then optimize -> translate -> summarize.

Before running

The command must be run from the AI Video Transcriber repository root and needs the project virtualenv plus ffmpeg. Verify once per session:

ls venv/bin/python && command -v ffmpeg
  • No venv: run ./install.sh, or python3 -m venv venv && venv/bin/pip install -r requirements.txt.
  • No ffmpeg: install it first with brew install ffmpeg on macOS or sudo apt install ffmpeg on Debian/Ubuntu. Do not proceed without it; audio extraction will fail.

Run it

venv/bin/python transcribe.py "<URL or file path>" --json

Always pass --json: it puts machine-readable output on stdout and keeps progress chatter on stderr. Parse the JSON rather than scraping log lines.

Useful flags:

FlagWhen to use
-l, --summary-language <code>Summary language: en, zh, es, fr, de, it, pt, ru, ja, ko, ar. Default en
--no-llmNo API key is available, or the user only wants the raw transcript. Skips optimize/translate/summarize
--no-videoThe user does not want the source video kept
--whisper-model smallAccuracy matters more than speed. tiny to large, default base
-o <dir>Write the Markdown somewhere other than ./temp

The LLM steps need an OpenAI-compatible key via OPENAI_API_KEY and optionally OPENAI_BASE_URL. Without one the pipeline still transcribes but falls back to basic formatting; prefer --no-llm when the user only needs the transcript.

Provider settings:

export OPENAI_API_KEY="your_api_key_here"
export OPENAI_BASE_URL="https://openrouter.ai/api/v1"
export OPENAI_TRANSLATION_MODEL="gpt-4o"  # optional

For a one-off run, transcribe.py also accepts --api-key, --base-url, and --model. Prefer environment variables when possible so API keys are not written to shell history.

Reading the result

{
  "title": "...",
  "no_speech": false,
  "detected_language": "en",
  "files": { "raw": "...", "transcript": "...", "summary": "...", "translation": "..." },
  "media": { "path": "...", "kind": "video", "size_bytes": 2243691 }
}

Read the transcript and summary paths to get the content. translation is present only when the source language differs from the summary language.

Critical: no_speech

Целият SKILL.md в GitHub