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



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

我猜你正在使用华为3G调制解调器或类似的东西,为音频提供ttyUSB1。确保您已将串行驱动程序绑定到它。然后简单地将端口本身作为一个"文件"传递给您选择的任何程序的输入。您需要root访问权限。你弄清楚了音频设置,所以应该足够了。我有语音通话工作在UBUNTU 11.10与华为。如果还需要我帮忙的话,请告诉我。

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

  1. 实现(除了下面)你是谁的一种方法查找的是编写动态内核模块。
  2. 注册为声音设备,并检查它是否有GSM模块存在(它究竟是哪个模块可以被识别)dmesglsmodoutput)。
  3. 然后建立用户空间之间的通信表示为声卡和串行usb模块。

另一种方法是获得dmesg, lsmod识别的模块并扩展其作为声卡的功能。

都是棘手的任务,因为:

  • 在第一种情况下,您必须在内核级别解决模块间通信......这有点困难,即使程序员在这方面有一定的背景。
  • 第二种情况比较困难,因为你必须处理:
    • USB堆栈(这对人类来说有点不愉快)和
    • 声音子系统(由于历史问题,它有点繁重)。

如果没有经验丰富的内核程序员,成功的机会很小。

最新更新