Я пытаюсь использовать Linphone с моим микрофоном, но звук очень прерывистый. Немного поработав с arecord , я обнаружил, что хотя звук на моем устройстве sysdefault прерывистый, запись на front:CARD=Generic работает лучше и с меньшим количеством шума.

Однако front может быть записан только с 2 активными каналами. Linphone вызывает моно на входе (теоретически он может использовать стерео, но, кажется, нет способа установить это в конфигурации), и поэтому выдает ошибку alsa, так как не может правильно установить каналы.

То же самое происходит, если я использую arecord чтобы подключить 1 канал к устройству:

$ 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 ответ1

2

Вам нужен один программный канал с двумя аппаратными каналами, поэтому вы должны выполнить сопоставление в противоположном направлении:

...
ttable {
    0.0 1
    0.1 1
}

И вы должны использовать правильный параметр, чтобы указать устройство:

$ arecord --help | grep -i -- ^-d
-D, --device=NAME       select PCM by name
-d, --duration=#        interrupt after # seconds

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