c++11 - 如何复制 alsa 音频流?
问题描述
我只有一个设备,如下所示(ps 第二个只是一个虚拟设备) -
# 播放 -l
**** 播放硬件设备列表 ****
卡 0:tlv320aic32x4 [tlv320aic32x4],设备 0:tlv320aic32x4-hifi tlv320aic32x4-hifi-0 [] 子设备:1/1 子设备 #0:子设备 #0
卡 0:tlv320aic32x4 [tlv320aic32x4],设备 1:e001d000.i2s-dummy-codec-1 [] 子设备:1/1 子设备 #0:子设备 #0
我已经有一个应用程序使用这个设备来传输音频(所以任何进入麦克风的音频输入都会被流出)。现在我必须添加另一个应用程序,该应用程序也使用此音频设备的相同麦克风。所以这会导致音频设备的争用。我怎样才能避免这种争论?
我在堆栈溢出中看到了另一篇文章,其中谈到了“键入 multi”alsa 模块以向两个不同的设备播放声音”。但我的问题不同。我没有两个不同的设备。我只有一个设备。
是否可以在 alsa 中复制音频流?这样可以避免这种争用,并且各种应用程序可以继续使用来自单个音频设备的音频信息。
解决方案
推荐阅读
- android - 在布局中添加垂直按钮
- git - Create new Branch from Master branch but not full source code
- postscript - 为什么在递归 Postscript 过程中使用保存/恢复?
- javascript - Spotify 网络播放 SDK
- ionic-framework - 为什么 Ionic 4 Framwork 无法创建 apk?
- html - div doesn't show up with textarea angular+
- android - 共享首选项给出错误 - 使用示例
- apache-storm - What is the difference between using LocalCluster and StormSubmitter to create topology in Apache Storm?
- c++ - Single header file for exporting and C and C++ APIs
- sql-server - SQL Server 备份无法恢复:媒体集有 2 个系列,但只提供了 1 个。必须提供所有成员