linux音频测试记录
linux音频控制在驱动中一般是一个主设备号,一堆次设备号,我的开发板上对应的音频接口如下
查看声卡驱动
ls -l /dev/snd/*
/dev/snd/controlC0 /dev/snd/pcmC1D0c /dev/snd/pcmC2D0p
/dev/snd/controlC1 /dev/snd/pcmC1D0p /dev/snd/pcmC3D0c
/dev/snd/controlC2 /dev/snd/pcmC1D1c /dev/snd/pcmC3D0p
/dev/snd/controlC3 /dev/snd/pcmC1D1p /dev/snd/timer
/dev/snd/pcmC0D0c /dev/snd/pcmC1D2c
/dev/snd/pcmC0D0p /dev/snd/pcmC1D2p
一个声卡共用一个主设备号,里面很多设备,每个设备基本上都会有控制(control)(eg:音量控制),声音采集(capture)和声音播放(playback),三种次设备号
eg:
/dev/snd/controlC0
/dev/snd/pcmC0D0c
/dev/snd/pcmC0D0p
我开发板上使用的驱动是tinyalsa
测试代码一般在开发板源码库上
eg: /opt/EmbedSky/TQT507/linux-4.9/longan/test/dragonboard/src/lib/tinyalsa-master-2.0/
源码库中可能有多套测试代码,我这个就有三套源码,可以向厂家咨询或者自己尝试
编译过程中可能出现,参数错误一类的问题,那就换个源码库吧,开发板厂家的话,也只是参考,自己实际验证才是真理
./tinyplay music-44K1.wav -D 0 -d 0
对用驱动名称 /dev/snd/pcmC0D0p
一般的都会将snd对应的编译成动态库进行调用,我嫌麻烦,直接编译在一起了
https://files.cnblogs.com/files/RYSBlog/tinyalsa-master-2.0.zip
//关于声音的其他基础知识(看完后再看程序就知道了)
多媒体文件格式(五):PCM / WAV 格式 - 知乎 (zhihu.com)
WAV文件头相关信息解析
更深入的学习
(131条消息) 视音频数据处理入门:PCM音频采样数据处理_雷霄骅的博客-CSDN博客_pcm绘制波形图
//
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
2021-09-13 qt 在debug断点时候,临时变量不显示
2021-09-13 qt 二进制文件转换工具