音频
eydwyz
AA123456123456
展开
-
Linux ALSA指南(zz)
1. 简介什么是ALSA?ALSA是Advanced Linux Sound Architecture,高级Linux声音架构的简称,它在Linux操作系统上提供了音频和MIDI(Musical Instrument Digital Interface,音乐设备数字化接口)的支持。在2.6系列内核中,ALSA已经成为默认的声音子系统,用来替换2.4系列内核中的OSS(Open转载 2017-05-11 18:53:41 · 1034 阅读 · 0 评论 -
基于 libmad 的简单 MP3 流媒体播放器的实现
1.介绍本文在 Fedora 5 Linux 下实现了一个基于 libmad 的 MP3 流媒体播放器。此流媒体播放器可以播放基于 HTTP 1.1 协议传输的 MP3 流媒体数据。基本原理是:从 HTTP 服务器获得 MP3 媒体信息,然后通过网络传输把 MP3 数据以数据流的形式接收到 MP3 流媒体播放器客户端,由客户端通过 libmad 解码 MP3 数据流,得到 PCM转载 2017-05-15 10:39:56 · 1598 阅读 · 0 评论 -
Alsa音频编程
一、前序这里了解一下各个参数的含义以及一些基本概念。声音是连续模拟量,计算机将它离散化之后用数字表示,就有了以下几个名词术语。样本长度(sample):样本是记录音频数据最基本的单位,计算机对每个通道采样量化时数字比特位数,常见的有8位和16位。通道数(channel):该参数为1表示单声道,2则是立体声。帧(frame):帧记录了一个声音单元,其长度为样本转载 2017-05-15 10:41:47 · 756 阅读 · 0 评论 -
音频帧概念详解
正常人听觉的频率范围大约在20Hz~20kHz之间。采样频率是指将模拟声音波形进行数字化时,每秒钟抽取声波幅度样本的次数。根据奈奎斯特采样理论,为了保证声音不失真,采样频率应该在40kHz左右。常用的音频采样频率有8kHz、11.025kHz、22.05kHz、16kHz、37.8kHz、44.1kHz、48kHz等,如果采用更高的采样频率,还可以达到D转载 2017-05-15 11:00:54 · 13200 阅读 · 3 评论 -
I2S与pcm的区别
I2S仅仅是PCM的一个分支,接口定义都是一样的, I2S的采样频率一般为44.1KHZ和48KHZ做,PCM采样频率一般为8K,16K。有四组信号: 位时钟信号,同步信号,数据输入,数据输出.I2S总线标准I2S(Inter-IC Sound Bus)是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准。在飞利浦公司的I2S标准中,既规定了硬件接口规范转载 2017-05-08 14:09:39 · 11805 阅读 · 0 评论 -
Linux ALSA音频驱动(一)
本文的部分内容参考来自DroidPhone的博客(http://blog.csdn.net/droidphone/article/details/6271122),关于ALSA写得很不错的文章,只是少了实例。本文就是结合实例来分析ALSA音频驱动。开发环境:ubuntu10.04目标板:linux-2.6.37 (通过命令uname -r 查看linux内核版信息)编译器:转载 2017-05-08 14:12:37 · 781 阅读 · 0 评论 -
linux audio 子系统(转)
[-]认识一些有用的数据结构soc-corec说起从字符型驱动原型开始研究ASoc符合字符驱动架构Alsa 控制接口1 创建一个新的控制接口11 Kernel内核驱动端12 Kernel提供给Alsa层的API13 Alsa层的Amixer API14 如何写External Control Plugin SDK15 Socket编程简转载 2017-05-08 14:16:01 · 4151 阅读 · 0 评论 -
嵌入式Linux下ALSA音频架构ALSA-lib移植与编译
***************************************************************************************************************************作者:EasyWave转载 2017-05-20 13:52:52 · 1214 阅读 · 0 评论 -
asla架构和alsa-lib音频库的移植
alsa 是在Linux出现比较晚的音频处理库,主要是针对原有的OSS的库进行改进.性能更好,支持多个播放源等.但相应的,增加的编程的复杂性. 旧的oss是采用标准文件IO接口,设备打开采用open,声音播录是采用数据IO接口(read/write),设备的参数采用ioctl来控制.都是系统调用因此无需额外库和配置文件来操作设备.但alsa也是最终采用open/read/write/ioct转载 2017-05-20 13:59:15 · 620 阅读 · 0 评论 -
alsa用户空间编程
[-]ALSA简介Device naming声音缓存和数据传输Overrun and underrunDisplay Some PCM Types and FormatsOpening PCM Device and Setting ParametersSimple Sound PlaybackSimple Sound RecordingAdvanced Features转载 2017-05-20 14:02:56 · 1538 阅读 · 0 评论 -
音频基本概念
转自 https://zhidao.baidu.com/question/2053292811772756147.html这里了解一下各个参数的含义以及一些基本概念。样本长度(sample):样本是记录音频数据最基本的单位,常见的有8位和16位。通道数(channel):该参数为1表示单声道,2则是立体声。桢(frame):桢记录了一个声音单元,其长度为样本长度与通道数的乘积。采样率(ra原创 2017-05-20 14:53:27 · 2348 阅读 · 0 评论 -
ALSA 音频系统源代码分析: ALSA library 分析 --- 配置系统
ALSA的配置主文件默认是:/usr/share/alsa/alsa.confALSA lib源代码中的conf.c负责load,解析这个配置文件。配置以层次结构组织的,由一个snd_config_t 数据结构对象snd_config保存着总配置根,用list_head的方法将各个层次的配置组织起来。[cpp] view plain copy转载 2017-05-20 15:00:21 · 961 阅读 · 0 评论 -
alsa分析:alsa的那些配置文件 ( 1 )
http://blog.csdn.net/doom66151/article/details/6573176在根文件系统下,alsa相关的配置文件有:在/system/usr/share/alsa目录下:├── alsa.conf ├── cards │ └── aliases.conf └── pcm ├── cen转载 2017-05-20 15:02:07 · 2350 阅读 · 0 评论 -
alsa分析:alsa的那些配置文件 ( 2 )
http://blog.csdn.net/doom66151/article/details/6577955 关于ALsa的配置文件,这里有一篇很好的文章。感谢原著。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 理解和使用Alsa的配置转载 2017-05-20 15:03:55 · 668 阅读 · 0 评论 -
linux alsa pcm 播放声音
/**alsa play test *ALSA用户空间编译,ALSA驱动的声卡在用户空间,不宜直接使用 *文件接口中,而应使用alsa-lib *打开---->设置参数--->读写音频数据 ALSA全部使用alsa-lib中的API *交叉编译 *export LD_LIBRARY_PATH=$PWD:$LD_LIBRARY_PATH *arm-linux-gcc -o a转载 2017-05-15 10:24:56 · 1630 阅读 · 0 评论 -
Linux ALSA 系统架构
ALSA是Linux声卡驱动的架构,下面基于linux-2.6.32描述下ALSA系统架构。ALSA系统可以分为alsa-lib、alsa-driver,而alsa-driver又分为core层和底层硬件层。作为开发者,我们只需移植底层硬件层,根据自己硬件特性,实现底层的移植。而core层基本属于ALSA标准框架,不需要自己实现。介绍ALSA框架,下面是大体框架图。 如转载 2017-05-15 10:13:07 · 344 阅读 · 0 评论 -
Alsa音频编程
样本长度(sample):样本是记录音频数据最基本的单位,常见的有8位和16位。通道数(channel):该参数为1表示单声道,2则是立体声。桢(frame):桢记录了一个声音单元,其长度为样本长度与通道数的乘积。采样率(rate):每秒钟采样次数,该次数是针对桢而言。周期(period):音频设备一次处理所需要的桢数,对于音频设备的数据访问以及音频数据的存储,都是以此为单转载 2017-05-11 19:28:00 · 432 阅读 · 0 评论 -
Linux ALSA 音频处理深入解析
任何人如果经常的使用linux机器处理音乐,那么他迟早会和ALSA打交道。ALSA是Advanced Linux Sound Architecture的简称,和过时的Open Sound System(OSS)比起来更强大功能更多。事实上,你可能已经不知不觉的使用了ALSA,比如ALSA的OSS模拟功能。当在web上搜索关于ALSA的答案时,我发现都是提问和自相矛盾的声明,鲜有确切的答案。我想有两转载 2017-05-11 19:30:27 · 2673 阅读 · 0 评论 -
ALSA Audio API 使用指南(译文)
工作需要,最近研究ALSA,写了个简单的音频接口并移植到板子上了,使用API的过程中发现一些知识对理解还是十分重要的,于是把API使用指南给粗略的翻译了一遍,e文水平有限,希望有人可以指出我的错误,哈哈,第一次翻译技术文档.原文:http://equalarea.com/paul/alsa-audio.html#interruptex⊙﹏⊙b汗!原来还有字数限制,把代码删掉了,看原转载 2017-05-11 19:31:56 · 2194 阅读 · 0 评论 -
Linux Audio Stack & ALSA
目录(?)[-]Linux Audio StackossALSAPulseAudioALSA ProjectALSA体系结构环境搭建测试ALSA混音ALSA编程Linux Audio StackossOSS借用了UNIX里”一切都是文件”的概念,。 把声卡模拟成一个/dev/dsp设备, 多块声卡就是dsp0, d转载 2017-05-12 10:32:44 · 586 阅读 · 0 评论 -
ALSA System on Chip(ASOC)
此文档仅作为开发随笔记录文档,可作为正式文档做材料参考,但不做正式文档。 Written bywolfgang huang(stillinux@gmail.com) 此类文档仅记录Android4.1.2+Kernel2.6.37+OMAP3730平台ALSA开发及内核要点,备注好资料应用,以供后续开发人员快速入手,也可作为科普类资料,供其他相关人员学习。转载 2017-05-23 18:38:54 · 466 阅读 · 0 评论 -
Line in和Mic in的区别及使用
我们的电脑声卡上,一般都会有Line in和Mic in两个接口,翻译成中文就是“线性输入”和“麦克风输入”,这两个都是输入端口,但是还是有区别的:1、Line in端口:该端口主要用于连接电吉他、电子琴、合成器等外界设备的音频信号输出的录音,由于这些设备本身输出功率就比较大,因此需要连接到Line in端口录音,当然使用它们录音从某种程度上也可以被称为外部设备的“内录”。一般您使用的声卡转载 2017-05-05 14:18:41 · 12421 阅读 · 0 评论 -
Linux 音频 API 指南
目录(?)[-]你想了解在什么情况下你必须使用某种特定的音频API吗你想了解多些有关safe ALSA 子集吗FAQ后记译者语由于历史的原因,在 Linux 环境下有多种API系统可用于声音编程。但没有合适的指引就难以找到合乎自己需要的体系。这里是一个指引,是由Lennart Poettering 所写(参见:Homepage of Lennart), 目的就是带你转载 2017-05-05 14:30:55 · 1154 阅读 · 0 评论 -
Audio Jack 的耳机检测和按键检测
原文http://blog.csdn.net/pillarbuaa/article/details/8900182基于QCM 8960二十七、Audio jack1. https://wiki.sonyericsson.net/androiki/Huashan_legacy_feature:_Vibrator_%26_Audio_Jack2. How to get转载 2017-05-05 14:31:40 · 2505 阅读 · 0 评论 -
linux驱动开发: wm8960 codec代码分析
关于alsa架构已经啃了好久好久,但是也卡了好久好久。难说皮毛到底有看懂多少,不管,我们先来啃wm8960 codec的驱动代码:必要相关函数说明: ////////////////////////////////////////////////////////////////////////////1.#define SOC_ENUM_SINGLE(xreg, xshift, x转载 2017-05-24 19:56:48 · 2009 阅读 · 0 评论 -
wm8960驱动:裸机代码研读
网上已经有基本的wm8960驱动的demo。可以播放特定频率的wav文件。这个程序很具有参考性。 我们知道,初始化wm8960,需要大概的步骤如下: 1.初始化I2C总线,通过I2C接口给wm8960下配置命令。 2.将声音文件加载到memory中 3.初始化I2S,并把内存中的数据通过I2S总线送给wm8960,从而wm8960通过解码播放出声音 我们大概来看一下,这个代码的转载 2017-05-24 19:59:56 · 6945 阅读 · 0 评论 -
内核资料:ALSA资料
内核资料好多好多,一个人摸索真的很难。 最近又卡住了,没办法向前进了。声卡,资料真的好多。没有一个系统的视频或者学习资料真的感觉无从下手。只能用时间耗了,先堆一些枯燥的资料。等我哪天茅塞顿开了,再来写心得吧!Master clock:每一个音频子系统都需要一个主时钟,通常被称作MCLK或者SYSCLK,主时钟可以来自外部晶振,锁相环或者CPU系统时钟.某些时钟源是 可以配置转载 2017-05-24 20:01:30 · 635 阅读 · 0 评论 -
linux alsa 音频路径切换
kcontrol的创建和注册和调用流程步骤1:创建过程通过如下等宏来初始化一个 snd_kcontrol_new 结构的实例SOC_DOUBLE_R_TLV/SOC_ENUM/SOC_SINGLE/SOC_SINGLE_TLV......步骤2:注册过程调用 snd_soc_add_codec_controls,该函数首先通过 snd_soc_cnew 函数将这些来转载 2017-05-24 20:03:14 · 1657 阅读 · 0 评论 -
camera的测试程序-预览的保存
step1: 打开视频设备static int video_open(const char *devname){ struct v4l2_capability cap; int dev, ret; dev = open(devname, O_RDWR); if (dev < 0) { TestAp_Printf(TESTAP_DBG_ERR, "Error opening de转载 2017-05-24 20:06:39 · 565 阅读 · 1 评论 -
ALSA(高级Linux声音架构):一 简单例子
ALSA是Advanced Linux Sound Architecture,高级Linux声音架构的简称,它在Linux操作系统上提供了音频和MIDI(Musical Instrument Digital Interface,音乐设备数字化接口)的支持更多内容可以参考这篇文章: http://mysuperbaby.iteye.com/blog/932729下面是两个简单例子转载 2017-05-15 09:26:44 · 979 阅读 · 0 评论 -
alsa分析:网络资源
关于alsa,网络上已经有很多人做了分析,有的分析的非常好,图文并茂,我就拿来主义,直接引用了。下面是收集的一些链接,内容包括:alsa驱动架构audio codec的驱动alsa的snd_controls/dapm/alsa-lib/alsa配置脚本.....alsa的中间层:alsa-lib alsa-HAL alsa-framework++++转载 2017-05-20 15:06:45 · 279 阅读 · 0 评论