串口上的PCM语音数据到linux中的声音设备转换

时间:2011-12-15 11:55:04

标签: linux audio serial-port modem pcm

我有一个电话调制解调器,它通过16位PCM 8000hz中的串行USB ttyUSB0为我的接口应用程序提供语音。我能够捕获这些数据并使用大胆播放。我希望这个端口被检测为linux中的声音设备(我在ubuntu上)。可能吗?还有其他选择吗?

2 个答案:

答案 0 :(得分:0)

我猜你正在使用华为3G调制解调器或者类似的东西给ttyUSB1音频。确保你有绑定的串行驱动程序。然后只需将端口本身作为“文件”传递给您选择的任何程序的输入。您需要root访问权限。您想出了音频设置,所以它必须足够。我在UBUNTU 11.10与华为进行语音呼叫。所以,如果我可以继续提供帮助,请告诉我。

答案 1 :(得分:0)

好的,我认为这是一个非常古老的问题,但答案帮助我找到了正确的方向,所以我决定帮助别人。

  1. 实现(除了下面)你是什么的一种方式 寻找的是编写动态内核模块。
  2. 将其注册为声音设备,并检查它是否具有GSM 模块存在(哪个模块是完全可以识别的 dmesglsmodoutput)。
  3. 然后在用户空间表示之间建立通信 声卡和串口USB模块。
  4. 另一种方法是获取dmesglsmod识别的模块,并将其功能扩展为声卡。

    所有这些都是棘手的任务,因为:

    • 在第一种情况下你必须解决内核级别的模块间通信......即使程序员在主题中有正确的背景,这就是说,有点难。
    • 第二种情况很难,你必须处理:
      • USB堆栈(对人类来说有点不愉快)和
      • 声音子系统(由于历史问题,这有点麻烦)。

    没有经验丰富的内核程序员,成功的可能性很小。