Windowsでミキサーを使わずに音声入力と音声出力を同時に録音する
投稿日:
ミキサーが使えない場合に自分のマイク入力とPCからのスピーカー出力を両方取りたいときに使える方法。
確認環境
Windows 11環境下。
| Env | Ver |
|---|---|
| ffmpeg | 7.1.1-essentials_build-www.gyan.dev |
| Screen Capture Recorder | 0.13.3 |
事前セットアップ
Chocolateyはあるものとする。
- ffmpegのインストール
choco install ffmpeg - Screen Capture Recorderのインストール
GitHubのリリース一覧からインストーラーを拾ってきてインストールする
手順
- 録音するマイクを調べる
ffmpeg -list_devices true -f dshow -i dummy - 録音するマイクを指定して録音する(以下はマイク名が「マイク (Sound BlasterX G1)」であるケース)
ffmpeg -f dshow -i audio="マイク (Sound BlasterX G1)" -f dshow -i audio=virtual-audio-capturer -filter_complex "[0:a][1:a]amerge=inputs=2[a]" -map "[a]" output.mp3 - Qキーを押して終了する(Ctrl+Cだと保存されない)
おまけ
ps1ファイルをダブルクリックで実行できる環境を作っておき、以下の内容でrec.ps1みたいなものを作っておくと、ワンクリックで呼び出せる。
Write-Host "録音を開始する場合は何かキーを押してください…" -NoNewLine
[Console]::ReadKey($true) > $null
$input="マイク (Sound BlasterX G1)"
$filename=Get-Date -Format "yyyy-MM-dd_HH_mm_ss"
ffmpeg -f dshow -i audio=$input -f dshow -i audio=virtual-audio-capturer -filter_complex "[0:a][1:a]amerge=inputs=2[a]" -map "[a]" "$filename.mp3"