DualCam

デュアルカメラ動画は、アップロードすると音声がなぜ劣化するのか

DualCam が書き出したファイルそのものは変わっていません。Instagram や TikTok、あるいは送った先のどこかで聞こえ方が変わるのは、その動画を運んだプラットフォームが道中で音声トラックに対して2つのことをしているからです。映像と同じように音声も再エンコードし、さらに多くのプラットフォームでは、そのアプリ内の他の動画と音量が揃うよう、トラック全体の響きの大きさも調整しています。

アップロード後に映像が粗く見える理由は、これとは別の話として答えがあります。ここで扱うのは映像の下に流れているトラックのほうです。もともと隣の映像トラックよりずっと小さく、控えめに作られた1本のモノラル録音が、もう一度圧縮され、もう一度音量を揃えられると何が起きるのか、という話です。

音声側で、DualCam が実際に書き出しているもの

DualCam は動画1本につき音声トラックを1本だけ書き出します。カメラごとに1本ではありません。44.1kHz、およそ96kbpsのモノラルAACストリーム1本で、そのときiOSが端末の既定の音声入力に設定していたものからそのまま取り込まれます。確認すべきゲインの設定はなく、バランスを取るべき複数のミックスもありません。トラックはその場の部屋とマイクが実際に拾った音量のまま書き出され、そのあと変わることはありません。写真アプリへの保存も、共有シートを開く操作も、渡されるのは音声を含めてまったく同じファイルで、どちらの操作もそこに手を加えません。

つまり、録画した直後に DualCam 自身のライブラリで聞こえているそのトラックが、到達できる最良の状態です。あとになって聞こえ方が違うと感じたなら、それはその先のどこか、ファイルを運んだアプリの中で起きたことです。

外に出ていく途中で、実際には2つの別々のことが起きている

より劣化の大きい2回目の圧縮

メッセージアプリやSNSのほとんどは、動画を送受信する前にまず再エンコードします。この再エンコードは映像だけを対象にした処理ではなく、コンテナごとファイル全体を処理するものなので、音声トラックも同じ工程の中でもう一度圧縮されます。AACのような非可逆コーデックは、聞き手がいちばん気づきにくい情報を削ることで成り立っていて、同じトラックに対してそれを2回行うのは、1回だけ行うのとは違います。1回目で残しておいた細部が、2回目では「なくても構わない」と判断されることがあります。

声のトラックにこの劣化が現れるときの出方は、かなり特徴的です。まず高域がわずかに丸くなり、「s」や「t」の摩擦音の鋭さが薄れ、背景で鳴っていた食器の音や環境音が先に少しにじみます。話している内容そのものが聞き取りにくくなるのは、その、もっとあとです。

圧縮だけでなく、音量そのものの調整も

動画をホストするプラットフォームの多くは、ラウドネス正規化も行っています。トラックの平均的な音の大きさを測り、そのアプリ内で目安としている基準に合わせて全体を上げ下げする処理で、出どころのまったく違うクリップがフィードの中で連続再生されたときに音量が急に跳ねないようにするためのものです。これは圧縮とは別の、音量を揃えるための工程で、通過するすべての動画に対して行われる通常の処理であり、デュアルカメラの動画だから特別に受けるものではありません。

同じクリップが、あるプラットフォームでは少し小さく、別のプラットフォームでは少し大きく聞こえるのもこのためです。それぞれが自分の基準に合わせているだけで、DualCam が実際に書き出した音量をそのまま保っているわけではありません。DualCam 自身のライブラリでちょうどよく聞こえていたトラックでも、よそに行けばどちらの方向にも動かされ得ます。

なぜ小さなモノラルトラックのほうが、かえって余裕がないのか

これだけ控えめなトラックなら、もうこれ以上落ちようがないと思いたくなりますが、実際はむしろ逆です。DualCam の音声は、最初から意図的に抑えて録られています。ステレオではなくモノラルなのは、腕の長さほど離して構えたスマートフォンでは、そもそも残す価値のあるステレオ像が録れないからで、ビットレートも映像トラックのおよそ10Mbpsに比べればごくわずかです。この抑えた作りは、スマートフォンのマイクが実際に拾えるものに対しては妥当な選択ですが、そのぶん1回目のエンコードの時点で、使われずに残っている余地——2回目の圧縮が気づかれないうちに削れる類の情報——がもともと少ないということでもあります。

単眼で4K撮影した映像が再エンコードを受けてもきれいに見えていられるのは、同じ理由の裏返しです。出発点に余らせるだけの細部があったからです。デュアルカメラの映像はそれができません。キャンバスの上限がもともと幅1080ピクセルだからです。音声トラックはこれを小さく再現したような話で、録音した瞬間からずっと、必要なぶんより多くを積んではいなかったのです。

変わらないもの

話している言葉そのものは変わりません。再エンコードとラウドネス調整が作り変えるのは、トラックの縁の部分——高域や全体の音量——であって、何を話したか、いつ話したかではありません。アップロード後にデュアルカメラ動画の音声と映像がずれていくとしたら、それは原因のまったく別の、独立した問題であって、再エンコードやラウドネス調整そのものが引き起こすものではありません。

元の音声をできるだけそのまま保つには

映像を守るのに有効な習慣は、その下にある音声トラックを守るのにもそのまま有効です。どちらも同じ経路を通っていくからです。エアドロップは、通過するものを何でも再エンコードするよう作られたサーバーを経由せず、2台のApple製デバイスの間でファイルそのものをやり取りします。DualCam が書き出したそのままの音声を相手に渡すのに、いちばん近い方法です。通信が不安定だったり従量制だったりするモバイル回線ではなく、Wi-Fiで送ることも大事です。アプリによっては、回線が細いと判断すると、より強く圧縮をかけてくるからです。そして、どこかで誰かがすでにダウンロードしたコピーを回すのではなく、DualCam のライブラリや写真アプリから元のファイルを直接共有すれば、再エンコードとラウドネス調整をそれぞれ1回で済ませられます。何回分も積み重ねずに済みます。

よくある追加の疑問

保存や共有のとき、DualCam は音声を圧縮したり調整したりしますか。

いいえ。保存はファイルのコピーをそのまま写真アプリに書き込み、共有は同じファイルを iOS の共有シートに渡すだけです。そのあと聞こえ方が変わるとすれば、それはその先で受け渡すアプリの中で起きたことです。

同じ動画なのに、あるアプリのほうが別のアプリより音が大きく聞こえるのはなぜですか。

多くのプラットフォームは、通過するすべての動画のラウドネスを自分の基準値に合わせて正規化しています。同じ元トラックでも、着地する場所によって上げ下げされる幅が変わります。

ステレオに対応したところにアップロードしても、音声はモノラルのままですか。

聞こえ方としてはモノラルのままです。DualCam は録音の時点で1本のモノラルトラックしか書き出しておらず、プラットフォームが技術的にステレオに対応していても、足せるだけの2つ目の実データは存在しません。

アップロード後に、元の音質を取り戻すことはできますか。

アップロード済みのコピーからは戻せません。再エンコードとラウドネス調整はプラットフォーム側で行われ、そこから元に戻すことはできないためです。特定のクリップの音質が重要なら、誰かがどこかからダウンロードしたものを転送するのではなく、できればエアドロップで元のファイルを直接共有してください。

とにかく撮ってみたいなら

DualCam は iPhone の前面・背面カメラを同時に動かし、撮りながら 1 本の MP4 に合成します。無料、アカウント不要、広告なし、映像は端末の外に出ません。

App Store でダウンロード