Я знаю, как декодировать мой аудиофайл flac в wav, вот так:
flac -d flac.flac wav.wav , который преобразует flac.flac в wav.wav. Но я хочу записать wav-данные в терминал, чтобы я мог передать их в другую программу без необходимости сохранять их в файл. Например, я хочу сделать что-то вроде этого flac_to_wav_output_terminal | cat > /path/to/wav/file (эта команда не совсем то, что я собираюсь сделать.

1 ответ1

2

Unix-программы не "записывают в терминал", если вы хотите передать свои выходные данные в другую программу, термин является stdout (сокращение от стандартного вывода), который является именем дескриптора файла, используемого внутри. Таким же образом, они считываются из стандартного ввода (или стандартного ввода).

Поэтому, если вы посмотрите на man-страницу (man flac) и поищите термин stdoutless пейджеров вы можете использовать / для поиска), вы увидите следующее:

   -c, --stdout
             Write output to stdout

Поэтому flac -c -d flac.wav | ... будет делать то, что вы хотите.

Также обратите внимание, что в вашем примере

flac_to_wav_output_terminal | cat > /path/to/wav/file

cat лишний, как вы могли бы написать

flac_to_wav_output_terminal > /path/to/wav/file

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .