Markdown記法
Markdown 記法ガイド
Markdown ファイルは動画の「ソースコード」として機能します。slidemovie はこのファイルを解析して、構造、ビジュアル要素、音声台本を理解します。
スライド構造
各スライドは レベル1見出し (#) で定義されます。
# スライドのタイトル
- 箇条書き 1
- 箇条書き 2
::: notes
ナレーション用の原稿です。
:::
- 見出し:
#(H1) だけが新しいスライドを作成します。##(H2) 以下の見出しは、そのスライド内のテキストとして扱われます。 - コンテンツ: 標準的な Markdown(リスト、太字、コードブロック、画像など)を使用できます。
- ノート:
::: notesブロックはナレーションのために必須です。
特殊コメントタグ
slidemovie は、高度な動作を制御するために HTML コメント形式の特殊タグをサポートしています。
1. スライド ID (<!-- slide-id: ... -->)
ツールを実行すると、各スライドに固定の ID が自動的に割り当てられます。
<!-- slide-id: myproject-01 -->
# 私のスライド
- 目的: この ID は、Markdown のセクションと、生成される画像ファイル (
myproject-01.png) および音声ファイル (myproject-01.wav) を紐付けます。 - 自動生成: 自分で書かなくても、
slidemovieが初回実行時に自動的に挿入します。 - 推奨事項: 一度生成された ID は手動で変更しないでください。既存のアセット(画像や音声)との同期が失われる可能性があります。
スライドの管理とID
- 新しいスライドの挿入: 新しいスライドを追加する際は、
slide-idを記述せずに内容(見出しとノート)だけを書いてください。次回の実行時にslidemovieが自動的に新しいユニークな ID を付与します。 - スライドの並べ替え: 順番を変える場合は、
slide-idを含めたブロックごと移動させてください。 - 順序: 最終的な動画のスライド順序は、Markdown ファイル内の記述順に従います。スライドIDの番号順ではありません。
- バリデーション: スライドIDの重複は許可されていません。重複が見つかった場合、プログラムはエラーで終了します。
2. 動画の挿入 (<!-- video-file: ... -->)
静止画スライドの代わりに、動画ファイル(画面録画やデモ動画など)を挿入することができます。
<!-- slide-id: myproject-05 -->
# デモ動画
<!-- video-file: demo_clip.mp4 -->
- demo_clip.mp4 が再生されます。
- PowerPoint スライドはできますが動画では使われません。
- 使い方:
demo_clip.mp4ファイルをmovie/{プロジェクト名}/ディレクトリの中に置いてください。 - 挙動: 静止画 + TTS を生成する代わりに、ツールは
demo_clip.mp4を取得し、設定された画面サイズに合わせてリサイズ(必要な場合はパディング)を行い、最終的なタイムラインに挿入します。
ノートブロック (::: notes) のルール
::: notes ブロックの中身は、そのまま TTS エンジンに渡されます。
- 空行:
::: notesの前には必ず空行を入れてください。
- 良い例:
- アイテム
::: notes
- 悪い例:
- アイテム
::: notes
- プレーンテキスト: 原稿は「読み上げさせたい通り」に書いてください。Markdown の装飾(
**太字**など)は、TTS エンジンがそれを無視すると確信できる場合を除き、ノートブロック内では避けてください。
::: notes
みなさんこんにちは。今日は Python についてお話しします。
:::