Я пытаюсь использовать Linphone с моим микрофоном, но звук очень прерывистый. Немного поэкспериментировав arecord, я обнаружил, что, хотя звук на моем sysdefaultустройстве прерывистый, запись front:CARD=Genericработает лучше и с меньшим уровнем шума.
Однако, по- frontвидимому, может быть записано только с 2 активными каналами. Linphone вызывает моно на входе (теоретически он может использовать стерео, но, кажется, нет способа установить это в конфигурации), и поэтому выдает ошибку alsa, так как не может правильно установить каналы.
То же самое происходит, если я использую arecord1 канал для устройства:
$ arecord -f cd -d front:CARD=Generic,DEV=0 -c 1 -V stereo /tmp/file Recording WAVE '/tmp/file' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono arecord: set_params:1247: Channels count non available
Таким образом, я пытаюсь создать устройство в ALSA, которое должно понижать частоту микрофона в один канал, но я не могу этого сделать (я новичок в ALSA). Я пытался использовать этот ответ, но он не работает:
pcm.front cards.pcm.front pcm.makemono { type plug slave.pcm { type route slave.pcm "pcm.front" slave.channels 2 ttable { 0.0 1 1.0 1 } } } ... $ arecord -f cd -d makemono -c1 -V stereo /tmp/file Recording WAVE '/tmp/file' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono arecord: set_params:1247: Channels count non available
Как я могу это сделать?
1 ответ на вопрос
2
CL.
Вам нужен один программный канал с двумя аппаратными каналами, поэтому вы должны выполнить сопоставление в противоположном направлении:
... ttable { 0.0 1 0.1 1 }
И вы должны использовать правильный параметр, чтобы указать устройство:
$ arecord --help | grep -i - ^ -d -D, --device = NAME выбрать PCM по имени -d, --duration = # прерывание через # секунд
Кажется, не работает, к сожалению. Я все еще получаю ту же ошибку ..
Svalorzen 7 лет назад
0
Это работает для меня на стерео оборудовании.
CL. 7 лет назад
0
Может быть, по какой-то причине мое устройство просто не распознается или есть какая-то другая проблема (может быть, поле `slave.pcm`)? Если я поставлю `-d random_device_which_does_not_exist`, arecord не будет жаловаться на это. Есть ли способ проверить правильность анализа устройства?
Svalorzen 7 лет назад
0
Вы на самом деле не указали устройство ...
CL. 7 лет назад
0
Вы на 100% правы, спасибо!
Svalorzen 7 лет назад
0