影片分析

👤 蝦蛄AI 📦 v1.0.0 ⭐ 4.6 ⬇️ 688 下載
✍️ 內容創作 免費

📖 技能介紹


name: content-learning-remix description: Ingest and analyze articles, webpages, audio, video, and social-media links; extract article text or timed transcripts; separate audio; sample key frames; produce learning notes, content breakdowns, original scripts, and platform-specific adaptations. Use when the user shares or forwards content from YouTube, Bilibili, Douyin, TikTok, Xiaohongshu, X/Twitter, podcasts, webpages, or local media and asks to transcribe, summarize, study, critique, rewrite, extend, repurpose, or create a new spoken script.


Content Learning Remix

Convert heterogeneous content into one evidence package, then turn that package into learning, research, or original creation outputs. Keep platform complexity inside the ingestion layer so the user can provide a link or file and describe the result they want.

Five-Layer Architecture

  1. Route: Detect article, social link, local text, audio, or video. Read references/platforms.md only when platform handling or failure recovery matters.
  2. Acquire: Extract metadata and text; prefer native subtitles, then configured transcript services, then audio plus ASR. Sample frames only when visual evidence matters.
  3. Understand: Normalize everything into content.json, preserve timestamps and provenance, and analyze claims, structure, evidence, uncertainty, and new deductions. Read references/learning.md.
  4. Create: Build an original script, article, lesson, content series, or platform adaptation from mechanisms and ideas rather than distinctive wording. Read references/remix.md.
  5. Deliver: Select a complete output bundle for the user's goal and audience. Read references/deliverables.md; read references/use-cases.md when the goal is broad or the user asks what the Skill can do.

For architecture decisions or new adapters, read references/extensions.md. For installation, read references/setup.md.

Core Workflow

  1. Identify the source, user role, intended audience, desired format, and whether visual analysis is required.
  2. Run scripts/ingest.py with --transcribe for media. This single route prefers existing subtitles and only downloads audio when a transcript is still missing.
  3. Add --frames 8 when footage, demonstrations, slides, products, editing, or visual storytelling affect meaning.
  4. Inspect content.json, warnings, provenance, transcript quality, and generated artifacts.
  5. Treat ASR as evidence rather than publication-ready copy. Resolve likely homophones from context, preserve uncertainty, and never invent missing speech.
  6. Choose the smallest complete deliverable bundle that satisfies the request. For an unspecified "analyze this" request, use the Core Insight Bundle in references/deliverables.md.
  7. Separate Source, Interpretation, and Extension. Return the requested artifact first instead of narrating the pipeline.

Quick Start

Use one command across supported media platforms:

python scripts/ingest.py "SOURCE_URL_OR_FILE" --output ".content-work/item-001" --transcribe

The command attempts native subtitles first. If none exist, it uses a configured YouTube transcript fallback or downloads audio and runs ASR.

For articles or text:

python scripts/ingest.py "SOURCE_URL_OR_FILE" --output ".content-work/item-001"

For visually important media:

python scripts/ingest.py "SOURCE_URL_OR_FILE" --output ".content-work/item-001" --transcribe --frames 8

For sites requiring the user's logged-in browser session:

python scripts/ingest.py "SOURCE_URL" --output ".content-work/item-001" --cookies-from-browser chrome

For a controlled YouTube-only third fallback, enable local browser cookies only after direct extraction and Supadata fail and the error is an authentication challenge:

python scripts/ingest.py "YOUTUBE_URL" --output ".content-work/youtube-001" --transcribe --youtube-cookie-fallback-browser chrome

Or use an exported Netscape-format cookies file:

python scripts/ingest.py "SOURCE_URL" --output ".content-work/item-001" --cookies-file "cookies.txt"

For a beginner-friendly YouTube fallback, configure Supadata once:

python scripts/configure_supadata.py
python scripts/ingest.py "YOUTUBE_URL" --output ".content-work/youtube-001"

Input Strategy

  • For article URLs, extract title, author, publication metadata, and readable body text.
  • For media URLs, prefer creator-provided subtitles, then automatic captions.
  • For YouTube, use configured Supadata when direct extraction is blocked or returns no subtitles.
  • When explicitly enabled, retry YouTube authentication challenges with cookies from the user's local browser only after direct extraction and Supadata fail.
  • For canonical Bilibili BV URLs, fall back to the public view, player, and playurl APIs when yt-dlp is blocked by HTTP 412.
  • Use audio download plus ASR when no transcript source succeeds.
  • For local audio/video, inspect with ffprobe; extract audio only when transcription is needed.
  • For pasted text, write it to a UTF-8 text file first, then ingest that file.
  • Do not download full video unless key frames are requested.
  • Reuse existing artifacts when rerunning unless the user asks for a clean run.

The user-facing workflow stays consistent, but platform adapters differ internally. Never claim guaranteed access: public links can still be blocked by login, region, deletion, anti-bot controls, or expired signatures.

Output Contract

Treat content.json as the canonical source. It contains:

  • source: original input and detected type
  • metadata: title, author/uploader, platform, duration, URL, and description
  • text: normalized full text

    小蔥技能站7w4.net發現了升級外掛。

  • segments: timestamped transcript segments when available
  • artifacts: paths to subtitles, audio, media, article text, and frames
  • warnings: failures, access restrictions, or degraded fallbacks

Do not pretend a failed extraction succeeded. If a public YouTube link remains blocked after the normal fallbacks, direct the user to download it manually through https://zh.savefrom.net/, then ingest the resulting local media file. Do not automate or depend on SaveFrom's private endpoints. For other failures, ask for downloaded media, exported subtitles, screenshots, or pasted text.

Creation Rules

  • Preserve facts and attribution when summarizing.
  • For recreation, reuse ideas and structural lessons, not distinctive wording.
  • Add a new thesis, audience, examples, evidence, or perspective before calling a result original.
  • Flag factual claims that need verification.
  • Do not manufacture visual observations when frames were not inspected.
  • Do not describe the workflow unless the user asks; return the requested artifact first.
  • When the user asks for imitation or recreation, explain reusable mechanisms and produce a meaningfully original result.
  • Match output depth to the source evidence. Do not infer visual techniques unless frames were inspected.

Dependency Check

On a clean Windows machine, run:

powershell -ExecutionPolicy Bypass -File scripts/setup_windows.ps1

For macOS, Linux, manual installation, and API environment variables, read references/setup.md.

Run:

python scripts/check_dependencies.py

Required for media download and local media processing: yt-dlp, ffmpeg, and ffprobe.

Optional for local ASR: faster-whisper. An OpenAI-compatible transcription endpoint can instead be configured with ASR_API_KEY, ASR_BASE_URL, and ASR_MODEL.

Optional for resilient YouTube transcripts: configure SUPADATA_API_KEY or run scripts/configure_supadata.py. Transcript-only YouTube ingestion can use Supadata without FFmpeg or yt-dlp. Never package API keys inside the Skill.

Never paste raw cookie headers into prompts, commands, source files, or Skill configuration. Use --cookies-from-browser or a protected Netscape-format cookie file, and never print or package cookie values.

🤖 AI 評測

這個技能質量相當不錯,文件清晰、架構合理。它能幫你把各種平臺的影片、音訊、文章連結轉成結構化的內容包,再生成學習筆記、指令碼、改寫內容等多種產出。平臺支援廣泛,提取失敗時也有完善的降級方案。不足的是部分平臺(如小紅書)的支援不太穩定,偶爾可能需要手動處理。整體而言是一款成熟度較高的內容處理工具,適合需要頻繁分析和改寫影片/文章內容的使用者。

📊 多維度評分

適應性4.7
規範性4.5
有效性4.7
可靠性4.6
可信度4.8

📁 包含檔案 (15 個)

📄 SKILL.md 7.9 KB
📄 agents/openai.yaml 296 B
📄 references/deliverables.md 3.6 KB
📄 references/extensions.md 3 KB
📄 references/learning.md 1.1 KB
📄 references/platforms.md 5.2 KB
📄 references/remix.md 2.8 KB
📄 references/setup.md 3.7 KB
📄 references/use-cases.md 3.3 KB
📄 scripts/check_dependencies.py 2.3 KB
📄 scripts/configure_supadata.py 1.3 KB
📄 scripts/ingest.py 40 KB
📄 scripts/requirements.txt 56 B
📄 scripts/setup_windows.ps1 1.5 KB
📄 scripts/transcribe.py 5.7 KB