Skip to content

Bug 対応: webm → mp4 の変換が正常に動作しない場合の workaround

これはなに

拡張機能で作成した webm ファイルを、MediaConvert を利用して mp4 ファイルに変換する際に、正常に変換が完了しないという不具合が時々発生します。

原因は複数考えられ、下記の GitHub issue にて現在調査中です。

このドキュメントでは、この問題が発生した場合の暫定的な対応手順、すなわち動画の差し替えが手順を説明してきます。

手順

おおまかな手順は以下のとおりです。

webm ファイルをローカル PC 環境で mp4 に変換する手順

  1. itemId とクリップ作成者の userId を把握する
    • userId はフロント側の dev console で api response を見たり、amplitude の user-lookup で検索したりすることで分かります(もちろん DB を参照してもわかります)
  2. 対象の itemId の webm ファイルを AWS S3 のバケットからダウンロードしてくる
  3. ダウンロードした webm ファイルを、ffmpeg を利用して mp4 に変換する
    • コマンド例: itemId が 634bfc5cf289bb002590fb39 のものを変換する例
      • docker run --rm -v $(pwd):$(pwd) -w $(pwd) jrottenberg/ffmpeg -i 634bfc5cf289bb002590fb39-full.webm -r 30 -max_muxing_queue_size 1024 634bfc5cf289bb002590fb39-full.mp4
  4. 変換した mp4 ファイルを S3 にアップロードする

トリムを再実行する手順

  1. ElasticTranscoder を開き、対象の job を検索する
  2. job を copy し、再実行する
  3. job が完了したら、CloudFront にてキャッシュのクリアを行う

↓のクリップで実際に手順を説明しています。