1

我有以下设置:运行 2.6.34 内核的 imx28。SAIF 接口连接到 Cinterion 调制解调器的 PCM 输出。我想以字符驱动程序之类的方式将 PCM 原始数据导出到用户空间。您对实施有什么想法吗?

4

1 回答 1

1

“正确的做法”大概是制作一个ALSA驱动,通过ALSA驱动访问PCM数据。然后设备显示为声音设备,PCM 数据可以被任何 ALSA 音频程序访问,例如 arecord。

优点:

  • 您将标准 API 用于声音数据,因此您的设备可以被许多现有的音频工具访问。相反,您编写的用户空间程序将与其他音频设备一起使用。
  • 驱动程序应提供有关 PCM 采样率和数据格式的相关详细信息,以便它可以轻松地用于音频程序。

i.MX28 ALSA 驱动程序使用 ASoC 架构。请参阅Documentation/sound/alsa/socLinux 源代码中的目录。

PS:我看到你问了一个后续问题,表明你正朝着 ALSA ASoC 方向前进。

于 2012-11-13T23:03:01.603 回答