进行Linux音频设备驱动实验的时候,教材上说明dev下有一个dsp设备文件,其是音频的编解码器,可以使用命令

cat test.wav > /dev/dsp

进行音频播放,但是在我的Ubuntu16.04下并没有找到dsp文件,网上有说现在Linux版本将音频相关的设备文件都搬到/dev/snd目录下面去了,然而并没有发现/dev/snd有dsp文件,估计也是一些与音频有关的文件,但是不知道如何使用,姑且先想办法实验dsp设备文件吧。

      找了不少文章都说dsp已经被淘汰了,但是还是有办法弄出来,可以使用命令:

modprobe  snd-pcm-oss

大安装snd-pcm-oss之后就会自动在dev目录下创建dsp设备节点,直接可以使用,可以使用下面的命令测试:

echo xxxx > /dev/dsp

会发现系统会响一声,这就表示数据写进声卡并被播放出来了,只是数据太少且没规律而已。

 

 

 

写了一个需要通过dsp进行音频操作的小程序,执行时却提示/dev/dsp:No such file or directory

 

[plain] view plain copy
 
 linux下/dev/dsp:No such file or directory解决方法_Linux系统linux下/dev/dsp:No such file or directory解决方法_Linux教程_02
  1. $ls /dev  
目录下并没有dsp这个文件,解决方法很简单:

 

 

[plain] view plain copy
 
 linux下/dev/dsp:No such file or directory解决方法_Linux系统linux下/dev/dsp:No such file or directory解决方法_Linux教程_02
  1. $sudo mknod /dev/dsp c 14 3  
  2. $sudo chmod 666 /dev/dsp  

对于系统已经不支持oss的,也就是上面操作完之后又提示/dev/dsp:没有这个设备

可以执行如下命令:

 

[plain] view plain copy
 
 linux下/dev/dsp:No such file or directory解决方法_Linux系统linux下/dev/dsp:No such file or directory解决方法_Linux教程_02
  1. $sudo modprobe  snd-pcm-oss  
  2. $sudo modprobe  snd-mixer-oss