У меня есть USB-ключ Huawei E173, подключенный к Raspberry PI. Я пытаюсь использовать устройство для совершения и приема звонков.
Для моих целей необходимо (i) сохранить звук вызова в файл и (ii) отправить звук на телефонный вызов из входной файл.
Насколько я понял (я не могу найти официального руководства), ключ E173 устанавливает три новых устройства (пожалуйста, поправьте меня, если я ошибаюсь):
/dev/ttyUSB0
для команд /dev/ttyUSB1
для голосовых данных /dev/ttyUSB2
для уведомлений
Чтобы включить телефонные звонки, я запускаю следующие команды: AT+CLIP=1
, AT+CRC=1
, AT+CNMI=1,2
на /dev/ttyUSB0
. Кроме того, если я запускаю AT^CVOICE?
, я получаю ^CVOICE:0,8000,16,20
. Наконец, когда я делаю / принимаю звонки, я запускаю AT^DDSETEX=2
на /dev/ttyUSB0
, чтобы включить пересылку звука на порт /dev/ttyUSB1
.
На этом этапе я застрял.
Я знаю, что есть другие похожие сообщения, пытающиеся перенаправить вход микрофона и выход динамиков на ключ, но моя цель - сохранить разговор в файл (во время разговора я пытался запустить cat /dev/ttyUSB1 > filename.raw
, но файл не может быть открыт с помощью стандартного программного обеспечения, следовательно, как я могу его преобразовать?) и одновременно отправить голос из файла (в каком формате? Я попытался отправить обратно filename.raw
в /dev/ttyUSB1
с cat filename.raw > /dev/ttyUSB1
, но вся система зависает).
Как мне сохранить аудио в файл и отправить аудио из файла?
Я нашел некоторые ресурсы на Inte rnet пытаюсь объяснить для подобных устройств, что звук должен быть отправлен в моно, с цифровой частотой 8000 Гц и оцифрован в 16 бит. Если посмотреть на результат выполнения команды AT^CVOICE?
, такие параметры должны применяться и в моем случае. Кроме того, тот же ресурс сообщает, что «аудиоданные должны подаваться на аудиопорт модема пакетами по 320 байтов каждые 0,02 секунды». Я пробовал применить даже такой подход, но безуспешно.