一个有趣的音频应用 -Virtual Audio Cable
1. 前言
首先在了解Virtual Audio Cable音频回环技术之前,我们先介绍几个基础的概念:
-
虚拟声卡:是一种硬件虚拟化技术;基于软件技术虚拟出麦克风或者虚拟扬声器硬件,提供给上层用户程序使用虚拟麦克风和扬声器,例如通过给虚拟扬声器喂送音频数据实现麦克风录音效果。
-
音频回环:跟我们网络通信的回环地址(127.0.0.1)通信一样;所谓的音频回环是内核驱动层直接将麦克风/扬声器的声音直接提交给扬声器/麦克风,可以达到数据硬件层的直接转发的功能。
-
Virtual Audio Cable(VAC):是一种虚拟化的技术;用来虚拟一条音频线实现音频回环,该音频线用来连接麦克风和扬声器,可以将麦克风的声音数据直接通过音频线进行播放(或者扬声器播放的声音直接进入麦克风)。
Virtual Audio Cable技术的前提是虚拟声卡,如果不熟悉虚拟声卡驱动的开发,可以参考文章——
如何在云电脑串流中实现声音输入输出—虚拟声卡(虚拟扬声器和虚拟麦克风)开发。
2. 背景
最近在开发虚拟声卡驱动(包括虚拟麦克风和虚拟扬声器),但是在测试麦克风和扬声器是