見出し画像

OBSを使用して32-bit floatかつマルチトラック録音する方法


はじめに

OBSって実は32-bit floatで録音する設定あるんです。
折角UAC-232買ったのでOBSでも32-bitで収録したいんですよね。
でもなぜかそれを解説している動画もツイート(死語)にもないのでまとめてみました。
もし、もっと分かりやすくて良い記事が出たら非公開にします。多分。

間違ってる部分もあるかもしれませんが、とりあえずは動いているので一旦細かいところは許してください。

実行環境

OS : Windows11
CPU : i9-13900K
メモリ : 128GB
GPU : RTX 4070ti, RTX 3060
オーディオ I/F : ZOOM UAC-232 (32-bit floatでの録音に対応)


動画編集はPremiere Pro 2024で行う想定です。DaVinci Resolveは説明しませんが、この記事に従えば同じように使える筈です。知らず知らずの間にどこかで遠回りをすることになる可能性はありますが。

OBSの設定


OBSの設定画面

OBSの設定から出力→録画の項目を選択すると上の画像の設定画面に飛べるはずです。(出力モードは詳細にしてください。一番上にあります)

録画フォーマットはMOV(FragmentedでもただのMOVでも可)。
これはmp4内の音データで32-bit floatを扱えないためです。mkvでもいけるかもしれません。
映像エンコーダは好きにしてください。多分影響ないです。

音声エンコーダはFFmpeg PCM(32-bit float)
その真下にある音声トラックにチェックを入れるとマルチトラックになります。その辺の詳しい仕様についての説明は省きます。

残りのエンコーダ設定は好きに指定してください。

録画後

録画が完了すると.movファイルが書き出されます。
このファイルをPremiere Proにインポートするとマルチトラックになっていません

その辺の理由調べながら記事書いてる間に、似たようなことしてるnoteを見つけました。

なんでマルチトラックにならないかはこのnoteに書いてあります。ラッキー
ついでに上記のnoteはカスタム出力でmovを設定していたので合わせてやってみましたが、同じような内部データになったので多分どっちでもいいと思います。良くないかもしれません。……多分大丈夫だと思います。

内部データとしてはちゃんと32bitになっている

とにかく、現時点ではPremiere Proでダイレクトに読み込むのは無理なので、分離して読み込みましょうという話です。

映像と音声の分離

FFmpegを使います。

上記のページにあるツールを今回使用しました。

音声コーデックの拡張子だけwavにしておいてください。初期設定のm4aで書き出すと正常に読み込めません。(実行環境がWindowsのため?)
また、m4aはそもそも32-bit floatを持てない可能性もありそうです。

めんどくさいのでWAVでいいです。確実なので。

Premiere Proで読み込む

ドラッグ&ドロップ。以上です。

32-bit floatでよかった~~~~~~~

実際に確認するために、音源をクリップさせておきました。
録音は32-bit floatを扱えるUAC-232で行っています。
さっそくゲインを下げてみました。

欠けてる

欠けてます。……が、これは仕様です。レンダリングして置き換えてやれば変更後のウェーブフォームが出てきてます。

欠けてなかった

クリップして見えなかった部分がちゃんと出てきました。レンダリングして置き換えしなくてもちゃんとクリップは直っているので気にならない人はしなくても大丈夫です。

マイクからの音だけじゃない

後ろで流している音楽がでかすぎる

BGMが爆音音割れ状態のときも

ちゃんと保存されている

ゲインを下げればクリップ部分が出てきます。
マイクからの音だろうがデスクトップ音声だろうが全部32-bit floatにしてくれているようです。

mp4で録画したら終わりです


いいなと思ったら応援しよう!