ホーム 記事一覧 ブック DH週間トピックス 検索 このサイトについて
English
YouTube StudioでVTT字幕ファイルをアップロードする手順

YouTube StudioでVTT字幕ファイルをアップロードする手順

YouTube StudioでVTT字幕ファイルをアップロードする際、UIがわかりにくく手順に迷ったので整理しました。 前提 VTTファイル(タイムコード付き)が手元にある YouTube Studioの動画編集画面にアクセスできる Step 1: 動画の言語を設定する 左メニューから「言語」を開くと、初回は言語が未設定の状態です。 「言語を設定」のプルダウンから「日本語」を選択し、「確認」をクリックします。 確認後、言語設定画面が切り替わり、「字幕を編集」「手動でアップロード」ボタンと「翻訳」セクションが表示されます。 Step 2: 元言語(日本語)の字幕をアップロードする 上部の「手動でアップロード」をクリックすると、ファイル形式の選択ダイアログが表示されます。 「タイムコードあり」を選択して「続行」をクリックし、ja.vtt ファイルを選択します。 アップロードだけでは公開されない ここが注意点です。VTTファイルをアップロードしただけでは字幕は公開されません。 アップロード後、以下の追加操作が必要です。 「字幕を編集」をクリックしてエディタを開く 内容を確認する 右上の「公開」ボタンをクリックする 「公開」を押すまでは下書き状態のままで、視聴者には表示されません。タイムコード付きの完成データをアップロードしているので、そのまま公開されても良さそうですが、YouTube Studioでは手動での確認・公開が必須のようです。 Step 3: 翻訳言語(英語)の字幕をアップロードする 翻訳セクションの右上にある「言語を追加」をクリックすると、言語一覧が表示されます。 「英語」を選択すると、英語の字幕追加画面が開きます。「ファイルをアップロード」を選択し、「タイムコードあり」を選んで en.vtt をアップロードします。 アップロード後、エディタ画面が表示されます。 右上の「公開」をクリックして完了です。翻訳言語の場合も、アップロード後に公開操作が必要です。 元言語と翻訳言語の操作の違い 操作 元言語(日本語) 翻訳言語(英語) アップロード場所 上部「手動でアップロード」 翻訳テーブルの該当言語行 公開操作 「字幕を編集」→ 確認 →「公開」 エディタ画面で「公開」 UIの導線が元言語と翻訳言語で異なるため、混乱しやすいです。 URLパラメータによる字幕の制御 YouTubeのURLに cc_load_policy=1 を付けると、字幕をデフォルトでONにできます。 https://www.youtube.com/watch?v=VIDEO_ID&cc_load_policy=1 cc_lang_pref による言語指定 cc_lang_pref=en のように表示する字幕言語を指定するパラメータも存在します。YouTube IFrame Player APIに記載されています。 https://www.youtube.com/watch?v=VIDEO_ID&cc_load_policy=1&cc_lang_pref=en ただし、このパラメータは通常のwatch URLでは安定して動作しません。実際に試したところ、同じURLでもあるときは英語のみ、別のときは日本語のみが表示されるなど、再現性がありませんでした。 Google Issue Trackerにもバグとして報告されています。 ...

YouTube Studioで英語字幕(VTTファイル)をアップロードする手順

YouTube Studioで英語字幕(VTTファイル)をアップロードする手順

YouTube Studioで日本語字幕のアップロードが完了している状態から、英語字幕(en.vtt)を追加する手順をまとめます。 関連記事:Claude Codeを使って動画に多言語字幕を自動生成し、IIIF v3マニフェストで公開する 前提 YouTube Studioにログイン済み 対象動画の日本語字幕(ja.vtt)はアップロード済み 英語字幕ファイル(en.vtt)が手元にある 手順 1. 字幕の管理画面を開く YouTube Studio → 対象の動画を選択 → 左メニューの「字幕」をクリックします。 日本語(動画の言語)が「公開済み」になっていることを確認します。 2. 「言語を追加」をクリック 「言語を追加」ボタンをクリックし、言語一覧から「英語」を選択します。 「英語(アメリカ合衆国)」「英語(イギリス)」など複数の候補が表示されますが、通常は「英語」を選択すれば問題ありません。 3. 英語の行の「追加」をクリック 字幕一覧に「英語」の行が追加されます。この行にある「追加」ボタンをクリックします。 4. 「ファイルをアップロード」を選択 字幕を追加する方法の選択画面が表示されます。「ファイルをアップロード」を選択します。 5. 「タイムコードあり」を選択 VTTファイルにはタイムコード(タイムスタンプ)が含まれているため、「タイムコードあり」を選択して「続行」をクリックします。 6. en.vttファイルを選択してアップロード ファイル選択ダイアログが表示されるので、en.vtt を選択します。 アップロードが完了すると、字幕のプレビューが表示されます。内容を確認し、右上の「公開」をクリックします。 7. 完了確認 YouTube動画で、字幕メニュー(CCボタンまたは歯車アイコン → 字幕)から「日本語」と「英語」を切り替えられることを確認します。 補足 VTTファイルの中身はテキストエディタで確認できます。タイムスタンプと字幕テキストが交互に記述されています 字幕を修正したい場合は、YouTube Studio上でテキストを直接編集するか、修正したVTTファイルを再アップロードします 複数の動画がある場合は、各動画に同じ手順で英語字幕を追加します

Claude Codeを使って動画に多言語字幕を自動生成し、IIIF v3マニフェストで公開する

Claude Codeを使って動画に多言語字幕を自動生成し、IIIF v3マニフェストで公開する

動画コンテンツに字幕をつける作業は手間がかかります。本記事では、Claude Code(CLI版Claude)を使い、動画のフレーム分析から多言語字幕(VTT)の生成、IIIF v3マニフェストの作成までを効率的に行う方法を紹介します。 実際のプロジェクトについてはこちらの記事をご覧ください。 全体の流れ 1. 動画ファイル(mp4)を用意する 2. ffmpegでシーンチェンジを検出 3. シーンチェンジポイントのフレームを抽出 4. Claude Codeでフレーム画像を読み取り、内容を把握 5. シーンチェンジのタイムスタンプに基づいてVTTファイルを作成 6. 英語字幕も同様に作成 7. IIIF v3マニフェストを作成 8. HTMLプレーヤーで動画・字幕・読み上げを同期 前提条件 Claude Code(CLI版) ffmpeg / ffprobe 字幕をつけたい動画ファイル(mp4) # macOSの場合 brew install ffmpeg Step 1: シーンチェンジの検出 動画の画面が切り替わるタイミングを自動検出します。これが字幕のタイムスタンプの基準になります。 ffmpeg -i "video.mp4" \ -vf "select='gt(scene,0.15)',showinfo" \ -vsync vfr -f null - 2>&1 \ | grep "pts_time" \ | sed 's/.*pts_time:\([0-9.]*\).*/\1/' 出力例: 3.033333 8.066667 20.066667 25.066667 32.100000 ... なぜシーンチェンジ検出が重要か 最初は3秒間隔でフレームを抽出していましたが、実際の画面切り替えとずれが生じました。シーンチェンジ検出を使うことで、実際に画面が変わるタイミングに基づいた正確な字幕タイミングが得られます。 Step 2: シーンチェンジポイントのフレーム抽出 mkdir -p scenes ffmpeg -i "video.mp4" \ -vf "select='gt(scene,0.15)'" \ -vsync vfr -q:v 2 \ scenes/scene_%03d.jpg Step 3: Claude Codeでフレーム画像の内容を読み取る Claude Codeのマルチモーダル機能で、抽出したフレーム画像の内容を読み取ります。 ...

デジタル源氏物語 動画字幕プロジェクト:IIIF v3マニフェストによる多言語字幕の公開

デジタル源氏物語 動画字幕プロジェクト:IIIF v3マニフェストによる多言語字幕の公開

デジタル源氏物語の機能紹介動画に、日本語・英語の二言語字幕を付与し、IIIF v3マニフェストとして公開するプロジェクトを作成しました。 Demo: https://nakamura196.github.io/genji-movie/ GitHub: https://github.com/nakamura196/genji-movie 対象動画 以下の3本の機能紹介動画に字幕を付与しています。 動画 時間 内容 画像とテキストを一緒にみる 2:42 TEI & IIIFを活用したParallel Text Viewerの使い方 AI画像検索(改訂版) 4:19 くずし字OCRと類似度計算による写本画像の横断検索 パタパタ顔比較 1:38 vdiff.jsによる源氏百人一首の挿絵比較ツール 多言語字幕 各動画に日本語・英語のWebVTT字幕ファイルを用意しています。字幕は1文単位で分割されており、読みやすさを重視しています。 VTTファイルはそのままYouTubeの字幕としてもアップロードできます。 IIIF v3マニフェスト 各動画にIIIF Presentation API 3.0準拠のマニフェストファイルを作成しています。動画はpaintingのAnnotation、字幕はsupplementingのAnnotationとして記述しています。 { "annotations": [{ "type": "AnnotationPage", "items": [ { "type": "Annotation", "motivation": "supplementing", "label": { "ja": ["日本語"] }, "body": { "id": "https://example.com/ja.vtt", "type": "Text", "format": "text/vtt", "language": "ja" } }, { "type": "Annotation", "motivation": "supplementing", "label": { "en": ["English"] }, "body": { "id": "https://example.com/en.vtt", "type": "Text", "format": "text/vtt", "language": "en" } } ] }] } 複数のIIIF対応ビューアで表示可能 IIIF v3マニフェストを採用しているため、以下のIIIF対応ビューアで直接表示できます。 ビューア 動画再生 字幕表示 言語切替 備考 Player(本プロジェクト) ○ ○ ○ Web Speech APIによる読み上げ機能付き RAMP ○ ○ ○ AV資料に最も強い Theseus ○ ○ ○ IIIF対応の汎用ビューア Clover ○ ○ △ Samvera/Northwestern開発 Universal Viewer ○ △ - v4でAV対応改善 各ビューアへのリンクは、デモページの各動画カードに用意されています。 ...