🔧

Remotionトラブルシューティング — よく発生するエラーと解決法

レンダリング速度低下、delayRenderタイムアウト、useState無限ループなど実践エラー集

Remotion開発でよく遭遇するエラーと解決法をまとめました。

1. レンダリングが遅い: --concurrencyを増やすかRemotion Lambdaを使用。

2. delayRenderタイムアウト: 必ずcontinueRender(handle)を呼び出す — catchブロック内でも。

3. useState無限ループ: Remotionは毎フレーム再レンダリングするため、useStateが無限ループを誘発。useCurrentFrame() + interpolate()を代わりに使用。

4. CSSアニメーションが動かない: Remotionは各フレームを独立してレンダリングするため、CSSトランジションと同期しない。spring()interpolate()を使用。

5. Lambdaでチラつき: concurrencyを下げる、ローカルで先に確認、Remotionバージョンを最新に更新。

動作フロー

1

エラーメッセージを確認: delayRender、too many renderings、timeoutなどキーワードで原因特定

2

useState使用有無を確認: フレームベースの値は必ずuseCurrentFrame() + interpolate()で代替

3

delayRender呼び出し確認: すべての分岐(成功/失敗)でcontinueRender()が呼ばれるか検証

4

CSSアニメーション/transition使用有無を確認: Remotion APIに置換

5

レンダリング速度問題時は--concurrencyオプションまたはLambda導入を検討

メリット

  • ほとんどのエラーがパターン化されているため解決が速い
  • Remotion Studioで問題フレームを特定してデバッグ可能

デメリット

  • Lambda関連の問題はAWSインフラ知識が必要で解決が難しい場合がある

ユースケース

Remotion入門者が経験するよくある間違いの解決 プロダクション環境でのレンダリング安定性確保