web-dev-qa-db-ja.com

Windowsコマンドラインからサウンドを録音するにはどうすればよいですか?

XPのコマンドラインから実行できるサウンドを録音できるアプリケーションはありますか?

理想的には、あるコマンドで開始し、別のコマンドで停止するのが理想的です。または、開始コマンドで期間を指定することもできます。

14
Tom Wright

SoXパッケージ を使用できます。

rec recorded_track.wav 00:05

5分間記録します。

SoXマンページ に関する詳細なドキュメント。

10
Sathyajith Bhat

recは、SoX Windowsパッケージでは提供されなくなりました。代わりに、次のコマンドラインを使用できます。

sox -t waveaudio -d new-file.wav
12
laurent

Windowsでコマンドラインを使用してサウンドを録音するには、 fmedia を使用できます。

fmedia --record --out=Recording.wav

Ctrl+Cを押すと、いつでも録音を停止できます。

録音中、fmediaは信号の大きさを示します。次に例を示します。

g:\fmedia>fmedia --record --out=myrec.flac
fmedia v0.10
0:19  [========..] -7.89dB / -1.31dB

サポートされている形式は、WAV、FLAC、OGG、MP3です。 WAVへの出力が最速です。ただし、FLAC圧縮も非常に高速であるため、CPU使用率の違いに気付かないでしょう。


特定のデバイス(デフォルトのデバイスだけでなく)からサウンドをキャプチャする場合:

手順1. --list-devスイッチを使用して、使用可能なすべてのデバイスを表示します。

ステップ2.使用するデバイスを選択し、--dev-capture引数を指定してfmediaを呼び出します。

たとえば、特定のデバイスから録音を開始する-マイク:

C:\>fmedia --list-dev
fmedia v0.10
Playback:
device #1: Realtek Digital Output (Realtek High Definition Audio)
device #2: Speakers (Realtek High Definition Audio)

Capture:
device #1: Stereo Mix (Realtek High Definition Audio)
device #2: Microphone (Realtek High Definition Audio)
device #3: Line In (Realtek High Definition Audio)

C:\>fmedia --record --out=Recording.wav --dev-capture=2
4
def

FFmpeg

変換に加えて、ffmpegはそれよりもはるかに多くのことを実行できます(つまり、フィルター、i/oデバイス制御)。この特定の主題では、input-devicesに焦点を当てます。


DirectShow のすべての入力デバイスを一覧表示します。 FFmpegには入力ファイル名が必要ですが、この場合はそれほど現実的ではないため、nullがファイル名として渡されます。

ffmpeg -list_devices true -f dshow -i null

たとえば、次のコマンドは、dshow入力から30秒のPCMデータを保存します。 DEVICE_NAMEは、実際のデバイスのプレースホルダーで、デバイスのリストにある実際のデバイス名に置き換えます。

ffmpeg -f dshow -t 30 -i "audio=DEVICE_NAME" out.flac

FFmpegdshow に関するドキュメント。

3
Quadcubic

これは古いですが、代わりになるかもしれません

LiveInCode

このプログラムは、ライン入力またはマイクからのライブオーディオを直接Ogg Vorbis、MP3、FLAC、Speexおよびその他の形式にエンコードします。

現在のバージョンには、Ogg VorbisとSpeexのサポートのみが組み込まれています。これは、他のエンコーダーも使用できることを意味しますが、Ogg VorbisおよびSpeex以外のエンコーダーでは、コマンドラインを手動で指定する必要があります。

1
Nifle