タイムラプスモード
対応 Issue: #5 タイムラプスモード
要件「タイムラプスモード」。インターバル撮影した連番静止画を タイムラプス動画 として生成・書き出す。
機能要件
- タイムラプス用プリセット(間隔・総時間・出力 FPS)
- 連番 JPEG → 動画(mp4 / gif)への合成
- 出力解像度・FPS・再生倍速の指定
- 生成プレビューと保存 / 共有
合成場所の選択
ESP32-S3 は本格的な動画エンコードが苦手なため、合成はデバイス外で行う。
| 方式 | 説明 | 採否 |
|---|---|---|
PWA 内 ffmpeg.wasm | 連番 JPEG をブラウザ内で mp4 合成 → SNS 投稿へ直結 | 採用(主) |
| クラウド合成 | アップ済み画像をサーバ / 関数で合成 | フォールバック |
| PC 合成 | microSD を抜いて ffmpeg で合成(参考記事の運用) | フォールバック |
実装方針
- インターバル写真 の連番 JPEG を PWA が取得 →
ffmpeg.wasmで mp4 (H.264) 生成 - 出力解像度・FPS・倍速を指定可能に。長尺はプログレス表示
- 大量フレーム / 高解像度はクラウド or PC 合成へフォールバック
リスク
- ffmpeg.wasm のメモリ上限(モバイルブラウザ)→ フレーム数 / 解像度に上限ガード
- iOS Safari の wasm 性能・メモリ制約を実機検証
受け入れ条件
- [ ] 連番画像からタイムラプス動画が生成できる
- [ ] FPS / 倍速 / 解像度が指定できる
- [ ] 生成物をプレビュー・保存・SNS 共有できる