ALSA 捕获具有 8 个通道的流,但以 4 个通道打开流
ALSA capture stream with 8 channels but opening stream as 4
我正在为嵌入式设备编写应用程序。该设备连接到一个 8 麦克风板,因此 8 个通道被传输到板中。在 ALSA 中,此设备显示为 HW:3,0.
我打开了 HW:3,0 流并使用:
snd_pcm_hw_params_test_channels()
我检查了允许的频道数。输出为 1 - 8。
如果我打开流并将通道数设置为 4,会发生什么情况? ALSA 是否丢弃其余的 4 个通道,我得到一个 CH1 的缓冲区 | CH2 | CH3 | CH4 样本或我得到 CH1 | ... |缓冲区中的 CH8?
谢谢你的帮助,
叛徒
hw_params_*
约束由驱动程序管理。所以驱动程序被告知流有四个通道,然后驱动程序负责配置硬件以每帧生成四个样本。
我正在为嵌入式设备编写应用程序。该设备连接到一个 8 麦克风板,因此 8 个通道被传输到板中。在 ALSA 中,此设备显示为 HW:3,0.
我打开了 HW:3,0 流并使用:
snd_pcm_hw_params_test_channels()
我检查了允许的频道数。输出为 1 - 8。
如果我打开流并将通道数设置为 4,会发生什么情况? ALSA 是否丢弃其余的 4 个通道,我得到一个 CH1 的缓冲区 | CH2 | CH3 | CH4 样本或我得到 CH1 | ... |缓冲区中的 CH8?
谢谢你的帮助, 叛徒
hw_params_*
约束由驱动程序管理。所以驱动程序被告知流有四个通道,然后驱动程序负责配置硬件以每帧生成四个样本。