subtitle-correction について
subtitle-correction は、字幕の音声認識ミスを修正するスキルです。SRT 字幕の校正に使え、先に分野固有の用語を確認したうえで、タイムスタンプ、番号、エントリー構造を保持し、検証と差分レポートを提供します。
主な機能
- 01指定用語を基準に認識ミスを修正
- 02タイムスタンプと字幕番号を維持
- 03エントリー数を保ち、結合や分割をしない
- 04構造を検証し差分レポートを作成
- 05HTML で変更を確認
活用シーン
- 01技術チュートリアルの固有名詞を校正
- 02SRT 字幕の同音語認識ミスを修正
- 03修正後も字幕のタイムラインが保たれているか確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sugarforever/ 01coder-agent-skills --skill subtitle-correctionインストール後、Claude Code で/subtitle-correctionを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/srt-format.mdterminology.mdscripts/subtitle_tool.py詳細
字幕修正スキル
このスキルは、タイムライン情報を厳密に保持しながら、字幕ファイル内の音声認識エラーを修正します。
対話型ワークフロー
ステップ 1:ユーザーに用語を尋ねる
重要:修正を始める前に、必ずユーザーに専門分野固有の用語を尋ねてください。
次のようにユーザーに尋ねます:
在开始修正之前,请提供一些关键术语,帮助我更准确地识别和修正语音识别错误:
1. **专有名词**:人名、品牌名、产品名等(如:Anthropic、Claude)
2. **技术术语**:框架、库、工具名称(如:LangChain、OpenAI、PyTorch)
3. **领域词汇**:行业特定词汇(如:checkpointer、middleware、runtime)
4. **其他关键词**:视频中频繁出现的重要词汇
请用逗号分隔,例如:`LangChain, Agent, OpenAI, checkpointer`
英語を使用するユーザーには:
Before I begin correction, please provide key terms to help me accurately identify speech recognition errors:
1. **Proper nouns**: Names, brands, products (e.g., Anthropic, Claude)
2. **Technical terms**: Frameworks, libraries, tools (e.g., LangChain, PyTorch)
3. **Domain vocabulary**: Industry-specific terms (e.g., checkpointer, middleware)
4. **Other keywords**: Important words that appear frequently
Please separate with commas, e.g.: `LangChain, Agent, OpenAI, checkpointer`
ステップ 2:理解を確認する
用語を受け取ったら、次の手順で確認します:
- 受け取った用語を列挙する
- 想定される分野や文脈(AI/ML チュートリアル、ウェブ開発など)を特定する
- 作業を進める前に、ほかに追加する用語がないか尋ねる
応答例:
收到以下术语:
- 技术框架:LangChain, LangGraph, OpenAI
- 技术概念:Agent, checkpointer, runtime
看起来这是一个 LangChain 智能体开发的教程视频。
还有其他需要补充的术语吗?如果没有,我将开始修正字幕。
ステップ 3:用語を使って処理する
提供された用語を使って、次のことを行います:
- 想定される語彙のメンタルモデルを作る
- 起こりやすい音声認識エラーを特定する
- 全体を通して一貫した修正を適用する
ユーザーが用語を提供しない場合
ユーザーが「ありません」/「いいえ」/「そのまま始めて」と言った場合:
- 組み込みのパターンを使って修正を進める
- 確信の持てない修正には、ユーザーの確認が必要であることを示す
- 完了後、見落とした用語がないか尋ねる
基本的なワークフロー
- 字幕ファイルを読む - ユーザーが提供した .srt ファイルを読み込む
- エラーパターンを特定する - よくある音声認識の誤りを見つける
- 修正を適用する - タイムスタンプを正確に保持しながら誤りを修正する
- 修正済みファイルを出力する - ユーザーの状況に応じて返すか保存する
厳守事項
タイムラインの保持
- タイムスタンプは絶対に変更しない - すべての
00:00:00,000 --> 00:00:00,000行をそのまま保持する - 字幕番号は絶対に変更しない - 連番を保持する
- 字幕エントリを結合または分割しない - 1 対 1 の対応関係を保つ
エラーの分類
1. 音声上の誤り(同音異字/類音による誤り)
中国語の音声認識でよく発生します:
- 会話 ↔ 絵画(huìhuà)
- メタデータ ↔ ソースデータ(yuán shùjù)
- この講義 ↔ 学部課程(běnkè)
- 例 ↔ 事例(shìlì)
- 実践 ↔ 時間(shíjiàn)
2. 技術用語の誤り
音声認識では、次の用語が正しく認識されないことがよくあります:
- フレームワーク名:LangChain、LangGraph、OpenAI、PyTorch、TensorFlow
- プログラミング用語:API、SDK、ランタイム、チェックポインター、ミドルウェア
- コード識別子:snake_case の名前、関数名、クラス名
3. 英語と中国語の混在コンテンツ
- Luncheon/lunch → langchain
- open EI/open Email → OpenAI
- land GRAPH → langgraph
- a memory Server → MemorySaver
4. コード関連用語
話し言葉で説明された表現を適切な形式に変換します:
- 「アンダースコア」→ 変数名では「_」
- 「ドット」→ メソッド呼び出しでは「.」
- camelCase、snake_case、PascalCase のパターンを認識する
ユーザー提供の用語
ユーザーが用語リストを提供した場合は、修正の第一の参照情報として使用します:
用户提供的术语:LangChain,Agent,OpenAI,LangGraph
これらの用語から、次の情報が得られます:
- 技術用語の正しい表記
- コンテンツの分野に関する文脈
- 音声認識エラーを特定するための手がかり
処理戦略
長いファイル(200 行超)の場合
view_rangeパラメーターを使用してチャンクごとに処理する- チャンク間で文脈を維持する
- 修正済みファイル全体を段階的に組み立てる
技術的なコンテンツの場合
- 分野(AI/ML、ウェブ開発など)を特定する
- 想定される用語のメンタルモデルを作る
- 分野固有の修正を一貫して適用する
品質チェック
出力する前に、次の点を確認します:
- すべてのタイムスタンプが変更されていないこと
- 字幕数が変わっていないこと
- 用語の一貫性が全体を通して保たれていること
- 修正が中途半端に残っていないこと
よくある修正パターン
中国語の AI/ML 講座のコンテンツ
| 誤り | 修正 | 文脈 |
|---|---|---|
| ブルードッグ/ブルー巻/Lantern | LangChain | フレームワーク名 |
| 絵画 | 会話 | セッション/会話 |
| トゥー/tour | tool | ツールの概念 |
| checkpointコンポーネント | checkpointerコンポーネント | メモリコンポーネント |
| ソースデータ | メタデータ | メタデータ |
| 大まかなモデル | LLM | 大規模言語モデル |
| 中間キー | ミドルウェア | ミドルウェア |
コード識別子
| 話し言葉 | 表記 |
|---|---|
| user underscore 001 | user_001 |
| thread underscore id | thread_id |
| create underscore agent | create_agent |
| runtime dot state | runtime.state |
出力形式
保存する際は、-corrected サフィックスを使用します:
- 入力:
filename.srt - 出力:
filename-corrected.srt
検証スクリプト
字幕ファイルの検証と分析には、scripts/subtitle_tool.py を使用します:
# Validate corrected file preserves structure
python scripts/subtitle_tool.py validate original.srt corrected.srt
# Show word-level diff with colored output (default, changes only)
python scripts/subtitle_tool.py diff original.srt corrected.srt
# Show ALL entries (changed and unchanged) in terminal
python scripts/subtitle_tool.py diff original.srt corrected.srt --all
# Generate HTML diff report (recommended for review)
python scripts/subtitle_tool.py diff original.srt corrected.srt --html report.html
# Show simple line-based diff (original/corrected lines)
python scripts/subtitle_tool.py diff original.srt corrected.srt --simple
# Disable colors for piping to files
python scripts/subtitle_tool.py diff original.srt corrected.srt --no-color
# Analyze file for potential speech recognition errors
python scripts/subtitle_tool.py analyze input.srt --terms "LangChain,OpenAI"
差分の出力形式
ターミナル出力(デフォルト)
色付きで単語単位の変更を表示します:
[1] 00:00:01,500 --> 00:00:04,500
今天我们来学习[-Luncheon-]{+LangChain+}框架
[3] 00:00:08,000 --> 00:00:12,500
我们可以用它来创建[-绘画-]{+会话+}应用程序
[-deleted-]- 削除されたテキスト(ターミナルでは赤色で表示){+added+}- 追加されたテキスト(ターミナルでは緑色で表示)- 変更のないエントリーも表示するには、
--allを使用します
HTML レポート(レビューにおすすめ)
詳細な比較レポートを生成します。レポートには以下が含まれます:
- すべてのエントリーを表示(変更あり・変更なし)
- 左右に並べた列:Original | Corrected | Diff View
- 視覚的なハイライト:削除箇所は赤い取り消し線、追加箇所は緑色で表示
- 概要統計:エントリーの合計数、変更数、変更なしの数
- ジャンプリンク:変更されたエントリーへすばやく移動
- 変更インジケーター:変更された行に黄色の点を表示
python scripts/subtitle_tool.py diff original.srt corrected.srt --html diff_report.html
その後、ブラウザーで diff_report.html を開きます。
検証ワークフロー
- 修正前:
analyzeを実行して、潜在的なエラーを特定します - 修正後:
validateを実行して、構造の整合性を確認します - 変更のレビュー:
diff --html report.htmlを実行して、視覚的な比較レポートを生成します
検証項目
- エントリー数が元のファイルと一致している
- すべてのタイムスタンプが変更されていない
- すべての連番が保持されている
- 書式が破損していない
対話例
対話 1:ユーザーが用語を指定せずにファイルをアップロード
ユーザー:この字幕ファイルを修正してください
Claude:
在开始修正之前,请提供一些关键术语,帮助我更准确地识别语音识别错误:
1. **专有名词**:人名、品牌名、产品名
2. **技术术语**:框架、库、工具名称
3. **领域词汇**:行业特定词汇
4. **其他关键词**:视频中频繁出现的重要词汇
请用逗号分隔,例如:`LangChain, Agent, OpenAI`
ユーザー:LangChain, Agent, OpenAI, LangGraph, checkpointer
Claude:
收到以下术语:
- 技术框架:LangChain, LangGraph, OpenAI
- 技术概念:Agent, checkpointer
这是一个 LangChain 相关的技术教程。还有补充吗?
ユーザー:以上です。始めてください
Claude:[修正ワークフローを続行します]
対話 2:ユーザーが用語を事前に指定
ユーザー:字幕を修正してください。用語:LangChain, OpenAI, Agent
Claude:[用語を確認してから、そのまま修正を開始します]
修正プロセス
- アップロードされた .srt ファイルを読み取ります
analyzeを実行して、潜在的なエラーを特定します- 指定された用語を主な参照情報として、修正を適用します
validateを実行して、構造の整合性を確認します- 修正済みファイルを
-correctedサフィックスを付けて保存します - 差分レポートを生成し、変更内容の概要を提示します
- HTML レポートを提案:レビューしやすい HTML 差分レポートが必要か、ユーザーに尋ねます
出力:実施した修正を分類した概要を提示します。
完了後、ユーザーに次のように尋ねます:
修正完成!我可以生成一个 HTML 差异报告,方便您在浏览器中查看所有修改。
需要生成 HTML 报告吗?
Correction complete! I can generate an HTML diff report for easier review in your browser.
Would you like me to generate the HTML report?