前回の記事では、スマホで動画撮影してパソコンで編集すると音ズレする原因がわかりました。
前回の内容をまとめてみますと、動画にはフレームレート (fps) という単位があります。動画は複数の画像の集まりによって構成されていて、例えば標準で使われている30fpsだと1秒間に30枚の画像が使用されているということになります。
このフレームレートには2つの種類があります。「固定フレームレート / CFR」(以下 固定(CFR))と「可変フレームレート / VFR」 (以下 可変(VFR))です。
30fpsであれば固定 (CFR) は常に一定の30fpsで動画が構成されます。それに対し可変 (VFR) だと動画の中でも静止画に近い箇所では30fps以下の25fpsだったり、アクションシーンなどの多くのコマ数が必要な個所では30fps以上の35fpsだったりと30fpsの前後ではありますが一定ではないのです。
音ズレの原因
僕の場合AZスクリーンレコーダーというAndroid専用の動画キャプチャアプリを使っていますが、このアプリでは可変 (VFR) の動画データとして保存されるようです。
たいていのスマホアプリではこの可変 (VFR) になるようで、僕はパソコンで編集する時にAviutlという動画編集ソフトを使っていますがAviutlだと固定 (CFR) として読み取ってしまうためにここで誤差が生じて音ズレとなってしまうのです。
MediaInfo
MediaInfoというソフトがあります。こちらは動画や音声データのファイル情報を表示確認させるためのソフトです。
MediaInfoを使えばスマホで撮影した動画データが固定 (CFR) なのか可変 (VFR) なのか確認することができます。
それでは早速ダウンロードしてみましょう。公式サイトのコチラから「ダウンロード!」をクリックします。

日本語を選択「OK」をクリック。

インストール先フォルダはデフォルトのままで問題なしです。「インストール」→「完了」と選択。

MediaInfoの使い方
インストールしたMediaInfoを起動します。
インストール時に日本語を選択しましたが、「English」になっているのでこれを「日本語」→「OK」と選択。

ここに調べたい動画ファイルをドロップ&ドラッグするだけで確認することができます。

上メニューから「表示」→「ツリー」を選択でフレームレートを確認することができます。モードが「VFRモード」と表示されているので、可変 (VFR)の動画データということになります。
可変 (VFR) → 固定 (CFR)に変更する
可変 (VFR) なら固定 (CFR) に変換する必要があります。いくつか方法があるようですが、Aviutlの拡張機能「L-SMASH Works」を導入している場合の方法を紹介します。
「L-SMASH Works」はAVIファイル以外にも複数のファイルが読み込みできるようになる拡張機能です。Aviutlで動画編集している方は導入している人も多いかと思います。
Aviutlを立ち上げます。上メニューから「ファイル」→「環境設定」→「入力プラグインの設定」→「L-SMASH Works File Readerの設定」を選択。
するとダイアログが立ち上がります。VFR->CFRにチェックを入れ30fpsなら「30000 / 1000」60fpsなら「60000 / 1000」→として「OK」で保存します。

Aviutlの場合設定後に再起動しないと設定が効いていないことが多いので、一度Aviutlを終了してまた立ち上げます。
動画ファイルを読み込むと音が一致しているはずです。だいたいこの方法で解決するかと思います。これで一致していなければそれ以外の原因なのでしょう。
まとめ
以前読み込んだ時は音がズレまくっていましたが、今回の設定後に読み込んだら見事に映像と音声が一致していました。これにて一見落着です。
この設定をすることで動画編集が各段にはかどります。音ズレに悩んでいる方は一度試してみてはいかがでしょうか。