共 11 篇文章 |
|
【2011.03.24】播放madplay实例——kill 使用的几种情况。ioctl(MIX_FD, MIXER_WRITE(SOUND_MIXER_VOLUME), &iLevel);case ''b'': { system("killall -STOP madplay &");//利用system函数调用killall命令将madplay暂停 } break;//利用system函数调用killall命令恢复madplay的播放 } bre... 阅8 转自noreen_yue 公众公开 15-07-10 00:12 |
对于Linux应用程序员来讲,音频编程接口实际上就是一组音频设备文件,通过它们可以从声卡读取数据,或者向声卡写入数据,并且能够对声卡进行控制,设置采样频率和声道数目等等。为了简化应用程序的设计,Linux上的声卡驱动程序大多都支持将混音器的ioctl操作直接应用到声音设备上,也就是说如果已经打开了/dev /dsp,那么就不用再打开/dev/mixe... 阅5 转自Sachchit 公众公开 15-07-09 08:04 |
ALSA 编程:入门篇1、GNU/Linux 系统下三大主流声卡驱动程序集 Linux 有三个主流的声卡驱动程序集:OSS/Lite(也称为OSS/Free)、OSS/Full(商业软件)、ALSA(自由软件)。ALSA 是linux内核的下一代标准声卡驱动集。开始时 Jaroslav Kysela 等人为Gravis UltraSound Card 开发驱动程序,后来该计划改名为 ALSA「先进的linux音频体系」,因为他... 阅44 转自Sachchit 公众公开 15-07-09 08:03 |
ALSA编程细节分析。对于playback,假设第三个参数设为320,那么就是说,当用户调用writei,写入的数据,将暂时存在alsa驱动空间里,当这个数据量达到 320帧时,alsa驱动才开始将数据写入hardware buffer,并启动DA转换。xrun指的是,声卡period一到,引发一个中断,告诉alsa驱动,要填入数据,或读走数据,但是,问题在于alsa的读取和写入操作必... 阅686 转1 评0 公众公开 15-01-01 10:06 |
阅839 转6 评0 公众公开 15-01-01 10:06 |
深入了解ALSA.但是硬件card和device的规范不能做为ALSA设备,事实上有些ALSA devices的参数不是硬件相关的。配置文件用来定义ALSA devices。如果在播放音乐时,显示的是”closed“,那么说明声音没有流到这个subdevice。例外情况:如果一个ALSA device被一个multi-channel playback使用,那么第一个subdevice记录总channel数,其他的则汇报为cl... 阅672 转3 评0 公众公开 14-12-31 00:25 |
深入了解ALSA.但是硬件card和device的规范不能做为ALSA设备,事实上有些ALSA devices的参数不是硬件相关的。配置文件用来定义ALSA devices。如果在播放音乐时,显示的是”closed“,那么说明声音没有流到这个subdevice。例外情况:如果一个ALSA device被一个multi-channel playback使用,那么第一个subdevice记录总channel数,其他的则汇报为cl... 阅264 转1 评0 公众公开 14-12-30 23:56 |
alsa_lib源码中pcm.c文件中snd_pcm_readi(,buffer,size)调用pcm_local.h文件中_snd_pcm_readi(,buffer,size);内核中,根据/soc/pcm_native.c文件中.unlocked_ioctl = snd_pcm_capture_ioctl,可知snd_pcm_capture_ioctl1被调用,根据SNDRV_PCM_IOCTL_READI_FRAMES参数可知snd_pcm_lib_read(substream, xferi.buf, xferi.frames);被调用,最终snd... 阅3172 转0 评0 公众公开 14-12-30 23:52 |
阅432 转3 评0 公众公开 14-12-30 23:33 |
Linux提供的cat命令可以很方便地从/dev/sndstat获得声卡的当前状态: [xiaowp@linuxgam sound]$ cat /dev/sndstat /dev/dsp 声卡驱动程序提供的/dev/dsp是用于数字采样(sampling)和数字录音(recording)的设备文件,它对于Linux下的音频编程来讲非常重要:向该设备写数据即意味着激活声卡上的D/A转换器进行放音,而向该设备读数据则意味着... 阅18 转自ylw527 公众公开 14-12-24 00:28 |