jieyu166

Lecture2notes — Productivity skill for Claude Code

Productivity community

Lecture recordings to structured notes, synced viewer and course hub.

How to install Lecture2notes

This entry records only its repository, not the path inside it, so there is no exact command to give. Open jieyu166/lecture2notes and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Lecture2notes does

Lecture recordings to structured notes, synced viewer and course hub. Local ASR (Breeze-ASR-25 / faster-whisper / whisper.cpp / Qwen3-ASR), slide capture, OCR, note-writing guideline. Claude Code / Codex skill + plain CLI.

Alternatives in Productivity

  • Om Correct — Sweep a corrected fact through the vault — finds every note restating it, applies the correction at the single 4.6k ★
  • Claudekit Problem Solving — Structured problem-solving tools 1.9k ★
  • Agentlas Network — Staff a task from registered Local, owner Cloud, and public Hub agents 1.1k ★

README

lecture2notes

把講座錄影變成可讀的筆記、時間同步的 viewer 與課程首頁。本機 ASR 轉錄(Breeze-ASR-25 / faster-whisper / whisper.cpp / Qwen3-ASR)、投影片換頁抓圖、OCR、一份可被機器檢查的筆記撰寫 規範;可當 Claude Code / Codex 技能使用,也可只當純 CLI 用。

狀態:v0.1.0.dev0 骨架。子命令介面、進度輸出、相依檢查與語言旗標已就位;各階段的實作 依序補上,尚未實作的階段會印 `[] not implemented yet` 並以 exit code 4 結束。

安裝

需要 Python 3.10 以上,以及 PATH 上的 `ffmpeg` / `ffprobe`。

python -m venv .venv
.venv\Scripts\pip install -e .[dev]
l2n --help

選用套件(extras):

Extra 用途 備註
breeze Breeze-ASR-25(預設引擎) 需先跑 l2n convert-model 產生 CTranslate2 權重
qwen Qwen3-ASR 本機推論 開源權重;時間戳需另載 forced aligner,見引擎相容表
whispercpp whisper.cpp 無 pip 相依,需自備編譯好的二進位並以 --whisper-cpp-bin 指定
scene PySceneDetect 場景偵測抓圖 未安裝時退回 ffmpeg scene filter
dev pytest / pytest-cov 開發與測試

轉錄引擎相容表

`l2n transcribe --list-engines` 會依本機現況印出同樣四行並標示相依是否滿足。

引擎 local needs_gpu native_timestamps 預設模型 相依 實測狀態
breeze_ct2(預設) yes yes yes MediaTek-Research/Breeze-ASR-25 faster-whisper + 自行轉檔的 CT2 權重 已在 Windows + RTX 4060 使用
faster_whisper yes no yes large-v3 faster-whisper CPU 可跑,有 CUDA 更快
whisper_cpp yes no yes ggml-large-v3-turbo.bin 自備二進位與 ggml 模型 --whisper-cpp-bin / --whisper-cpp-modelWHISPER_SRT_BIN / WHISPER_SRT_MODEL 指定
qwen3_asr yes yes yes(需對齊器) Qwen/Qwen3-ASR-0.6B pip install lecture2notes[qwen] 待實測(見下)

Qwen3-ASR 的三個實作前提

程式碼依 2026-09-21 查證的上游原始碼撰寫,以下三點與一般預期不同:

  1. ASR 模型本身不輸出時間戳。 Qwen3ASRModel.transcribe() 只回 languagetext;cue 時間來自另一份第一方權重 Qwen/Qwen3-ForcedAligner-0.6B(以 forced_aligner= 掛上,不需要外部 ctc-forced-aligner)。因此 --model-dir 之外另有 --aligner-dir
  2. 對齊結果是逐 token 的(中文為逐字),本套件在 cues_from_alignment() 依句末 標點、靜默間隔、字數上限與時長上限重新組成 cue。時間戳單位是(上游型別標註 寫 int,但回傳前已除以 1000)。
  3. 對齊器文件標示上限約 5 分鐘語音,所以本引擎宣告 chunk_sec = 240,轉錄階段會 自動切窗並把每窗的 cue 位移回整片的時間軸