#ifndef __SOUNDCARDDATA_H__ #define __SOUNDCARDDATA_H__ #include "GlobalVariable.h" #include "AudioRecord.h" #include "spdlog/spdlog.h" /** * @brief 全局的声卡信息 * */ #define SoundCards SoundCardManager::Instance() class SoundCardManager { SoundCardManager() = default; SoundCardManager(const SoundCardManager&) = delete; SoundCardManager& operator=(const SoundCardManager&) = delete; public: ~SoundCardManager() = default; static SoundCardManager& Instance() { static SoundCardManager instance; return instance; } /* 初始化数据,获取声卡信息 */ bool InitData(); /* 获取声卡信息 */ const std::list& getListAudioDevice() const { return m_listAudioDevice; } private: /* 打印声卡列表 */ void printAudioDevices(); /* 打印声卡描述列表 */ void printAudioDeviceDesc(std::list& pcmDevices); private: /* 声卡设备列表 */ std::list m_listAudioDevice; }; #endif // __SOUNDCARDDATA_H__