Jak mogę nagrywać dźwięk z wiersza poleceń systemu Windows?

14

Czy istnieje aplikacja do nagrywania dźwięku, którą mogę uruchomić z wiersza poleceń na XP?

Najlepiej byłoby zacząć od jednego polecenia, a zatrzymać od innego. Lub mógłbym określić czas trwania za pomocą polecenia startowego.

Tom Wright
źródło

Odpowiedzi:

10

Możesz użyć pakietu SoX .

rec recorded_track.wav 00:05

Nagrywa przez 5 minut.

Więcej dokumentacji na stronie SoX .

Sathyajith Bhat
źródło
3
Wydaje się, że SOX nie jest już wysyłany z poleceniem „rec”.
PeterX
1
@peterx Zobacz odpowiedź od @ this-lausox -t waveaudio −d new-file.wav
Holger Bille,
12

recnie jest już dostępny w pakiecie SoX Windows. Zamiast tego możesz użyć tego wiersza polecenia:

sox -t waveaudio -d new-file.wav
Laurent
źródło
Dziękuję za aktualizację. Chciałbym móc to „przykleić” dla przyszłych odkrywców.
Tom Wright,
@TomWright Możesz wybrać tę odpowiedź jako nową najlepszą odpowiedź.
Hashim
4

Aby nagrać dźwięk za pomocą wiersza poleceń w systemie Windows, możesz użyć fmedia :

fmedia --record --out=Recording.wav

Możesz zatrzymać nagrywanie w dowolnym momencie, naciskając Ctrl+C.

Podczas nagrywania fmedia pokazuje, jak głośny jest sygnał, na przykład:

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

Obsługiwane formaty to WAV, FLAC, OGG i MP3. Wyjście do WAV jest najszybsze. Jednak kompresja FLAC jest również dość szybka, więc prawdopodobnie nie zauważysz żadnej różnicy w wykorzystaniu procesora.


Jeśli chcesz przechwytywać dźwięk z określonego urządzenia (nie tylko domyślnego):

Krok 1. Użyj --list-devprzełącznika, aby wyświetlić wszystkie dostępne urządzenia.

Krok 2. Wybierz urządzenie, którego chcesz użyć i wywołaj fmedia z --dev-captureargumentem.

Na przykład rozpocznij nagrywanie z określonego urządzenia - mikrofonu:

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
def
źródło
3

FFmpeg

Oprócz konwersji ffmpegmoże zrobić znacznie więcej (np. Filtry, sterowanie urządzeniami we / wy) . W tym konkretnym temacie skupię się na urządzeniach wejściowych .


Wyświetl listę wszystkich urządzeń wejściowych DirectShow . FFmpeg wymaga wejściowej nazwy pliku, która w tym przypadku nie jest zbyt realistyczna, więc nulljest przekazywana jako nazwa pliku.

ffmpeg -list_devices true -f dshow -i null

Na przykład poniższe polecenie zapisuje 30 sekund danych PCM z danych dshowwejściowych. DEVICE_NAMEzastępuje rzeczywiste urządzenie, zastępując je rzeczywistą nazwą urządzenia z listy urządzeń.

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

Dokumentacja FFmpeg na dshow .

Quadcubic
źródło
1

To jest stare, ale może być alternatywą

LiveInCode

Ten program koduje dźwięk na żywo z wejścia liniowego lub mikrofonu bezpośrednio do Ogg Vorbis, MP3, FLAC, Speex i innych formatów.

Obecna wersja ma tylko wbudowaną obsługę Ogg Vorbis i Speex. Oznacza to, że możesz używać także innych koderów, ale w przypadku koderów innych niż Ogg Vorbis i Speex musisz ręcznie określić wiersz polecenia.

Nifle
źródło