音频
文章平均质量分 62
音视频学习笔记和
Fireworks_light
业精于勤,荒于嬉; 行成于思,毁于随。
展开
-
安卓系统音频开发经验积累
本文主要记录一些平时工作中遇到的问题,以及一些音频经验,解决思路等等。分为四大块介绍,首先会介绍平时工作中都会遇到哪些高频问题,以及解决问题的思路,后面会分别介绍fwk, hal, kernel 遇到的一些问题记录和修改方案。持续更新~原创 2024-03-15 23:05:48 · 427 阅读 · 0 评论 -
音频smmu问题之smmu学习
简单来说, SMMU(System Memory Management Unit)是ARM为外设访问系统RAM提供了一种类似于MMU的虚拟内存访问机制, 外设可以通过DMA直接访问RAM, 而无需CPU的干预. 如此, 外设可以通过一个虚拟的地址即可访问物理地址(可以不连续), 做到了不同外设之间IO地址空间的彼此独立与隔离. 因此, SMMU也通常被称为IOMMU(Input/Output MMU).原创 2024-02-24 16:39:11 · 1400 阅读 · 2 评论 -
mtk平台老化问题经验总结
1、老化的log路径:02_data_log/rt/2、02_data_log/rt/xxx.png文件可以查看哪些测试项失败了3、音频模块一般有两种失败,audio_loop和MicSilence4、audio_loop分为Speaker_Loop和Receiver_LoopSpeaker_Loop是spk播放,主mic录音,后台设备计算声音大小Receiver_Loop是spk播放,副mic录音,后台设备计算声音大小5、关键log:AudioLoopTestspeaker_loopre原创 2022-04-18 21:41:48 · 611 阅读 · 0 评论 -
mtk平台耳机调试
mtk耳机调试原创 2021-12-28 22:13:24 · 1861 阅读 · 0 评论 -
高通 mdm9607编译以及audio框架
高通编译使用bitbake,编译都需要在cd poky目录下进行单模块编译模块路径apps_proc\poky\meta-qti-bsp-propcd pokysource build/conf/set_bb_env.shbitbake -fc clean 模块名(注意这里指定的模块名字是 其bb文件所在的目录名)bitbake -fv 模块名生成的bin文件路径:/poky/build/tmp-glibc/work/mdm9607-oe-linux-gnueabi/例如:编原创 2021-10-12 10:49:57 · 3135 阅读 · 0 评论 -
【Qualcomm高通音频】如何使用QXDM、QCAT音频数据抓取
转载:https://blog.csdn.net/crow_ch/article/details/103916789原创 2021-11-15 17:05:51 · 4697 阅读 · 1 评论 -
底层开发常用知识点积累
这篇博客主要是积累一下平时开发中有用的一些小的知识点。printk打印#define AUDIO_LOGI(fmt,...) printk("[AUDIO][%s][%d][INFO]"fmt, __func__, __LINE__, ##__VA_ARGS__)#define AUDIO_LOGW(fmt,...) printk("[AUDIO][%s][%d][WARNING]"fmt, __func__, __LINE__, ##__VA_ARGS__)#define AUDIO_LOGE(f原创 2021-11-15 14:36:03 · 879 阅读 · 0 评论 -
aplay,arec,amix使用
标准的alsa命令为,aplay,amixer,arecord如下是高通在mdm9x07芯片上做了客制化的命令aplayaplay -D hw:0,17 -P &arecarec -D hw:0,17 -P -R 8000 -C 1 &amixamix \"SEC_AUX_PCM_RX_Voice Mixer CSVoice\" 1原创 2021-11-13 15:12:58 · 1278 阅读 · 0 评论 -
i2c音频设备的常用节点
常用节点sys节点debug节点proc节点sys节点/sys/kernel/debug/asoc/mdm9607-tomtom-i2s-snd-card/codec:nau88c22.2-001a//sys/kernel/debug/asoc/mdm9607-tomtom-i2s-snd-card/codec:nau88c22.5-001adebug节点proc节点原创 2021-11-13 14:59:47 · 511 阅读 · 0 评论 -
高通sdx12 audio架构
前言:高通sdx12使用linux 5.4内核sdx12介绍audio单独编译source build/conf/set_bb_env.shbitbake -c compile -f audiodlkmsdx12原创 2021-10-15 11:47:44 · 490 阅读 · 0 评论 -
高通linux平台(mdm9x07,sdx12)连接qact
mdm9607连接qact在开发mdm9607的时候,连接不上qact工具,提单给高通,高通反馈mdm9607只能使用 QACT 7.1.X版本连接,之前我使用的qact版本太高。下面说一下连接步骤:1、运行acdb_start/ # start_pcm acdb_start2、运行QPST3、启动QACT点击connect to device即可...原创 2021-10-14 20:08:18 · 1748 阅读 · 0 评论 -
alsa 中控件介绍
mixerSOC_SINGLESOC_SINGLE_TLVSOC_ENUMSOC_DOUBLESOC_DOUBLE_R_TLVSOC_DAPM_SINGLESND_SOC_DAPM_DACSND_SOC_DAPM_PGASND_SOC_DAPM_MIXERSND_SOC_DAPM_SUPPLYSND_SOC_DAPM_INPUTSND_SOC_DAPM_OUTPUTSOC_MIXER_ARRAY原创 2021-09-23 20:14:32 · 1634 阅读 · 0 评论 -
ALSA driver---DAPM flow
参考:https://elixir.bootlin.com/linux/v4.9.218/source/sound/soc/soc-dapm.c#L804https://blog.csdn.net/DroidPhone/article/details/14146319https://blog.csdn.net/DroidPhone/article/details/14052861h...转载 2020-04-19 14:32:21 · 721 阅读 · 0 评论 -
ALSA driver---register codec
参考:https://elixir.bootlin.com/linux/v4.9.218/source/sound/soc/soc-core.c#L3314https://blog.csdn.net/DroidPhone/article/details/7283833在移动设备中,Codec的作用可以归结为4种,分别是:对PCM等信号进行D/A转换,把数字的音频信号转换为模拟...转载 2020-04-19 14:29:55 · 450 阅读 · 0 评论 -
ALSA driver---register platform
参考:https://elixir.bootlin.com/linux/v4.9.218/source/sound/soc/soc-core.c#L3159https://blog.csdn.net/DroidPhone/article/details/7316061platform通过调用snd_soc_register_platform来注册。snd_soc_register...转载 2020-04-19 14:28:13 · 435 阅读 · 0 评论 -
ALSA driver---register card
通过snd_soc_register_card来注册card,即注册整个machine driver.此函数接收一个参数 snd_soc_card:/* SoC card */struct snd_soc_card { const char *name; const char *long_name; const char *driver_name; ...转载 2020-04-19 14:27:12 · 1072 阅读 · 0 评论 -
ALSA driver---register CPU DAI
参考:https://elixir.bootlin.com/linux/v4.9.218/source/sound/soc/soc-core.c#L3034https://blog.csdn.net/DroidPhone/article/details/7316061CPU DAI通过调用snd_soc_register_component进行注册。在snd_soc_regi...转载 2020-04-19 14:22:28 · 593 阅读 · 0 评论 -
Linux音频驱动-ASOC(ALSA System on Chip)
Linux音频驱动-ALSA概述https://cloud.tencent.com/developer/article/1603864概述此处还需引入之前说过的话: 新事物的出现必然是为了解决旧事物中的不足。这句话在现实生活中和程序世界中道理一样。ASOC的出现就是为了解决ALSA无法解决的问题。ALSA到底存在什么问题? 以及ASOC会以怎样的方式去解决ALSA存在的问题?详细参...转载 2020-04-01 22:56:43 · 412 阅读 · 0 评论 -
Linux音频驱动-PCM设备
https://cloud.tencent.com/developer/article/1603968概述1. 什么是pcm?pcm(Pulse-code modulation)脉冲编码调制,是将模拟信号转化为数字信号的一种方法。声音的转化的过程为,先对连续的模拟信号按照固定频率周期性采样,将采样到的数据按照一定的精度进行量化,量化后的信号和采样后的信号差值叫做量化误差,将量化后...转载 2020-04-01 22:32:26 · 1309 阅读 · 0 评论 -
Linux音频驱动-AOSC之Codec
https://cloud.tencent.com/developer/article/1603869概述ASOC的出现是为了让Codec独立于CPU,减少和CPU之间的耦合,这样同一个Codec驱动无需修改就可以适用任何一款平台。还是以下图做参考例子:在Machine中已经知道,snd_soc_dai_link结构就指明了该Machine所使用的Platform和Codec...转载 2020-04-01 22:25:19 · 711 阅读 · 0 评论 -
Linux音频驱动-AOSC之Platform
https://cloud.tencent.com/developer/article/1603969概述在ASOC在Platform部分,主要是平台相关的DMA操作和音频管理。大概流程先将音频数据从内存通过DMA方式传输到CPU侧的dai接口,然后通过CPU的dai接口(通过I2S总线)将数据从达到Codec中,数据会在Codec侧会解码的操作,最终输出到耳机/音箱中。依然已下图作为参考...转载 2020-04-01 22:23:04 · 588 阅读 · 0 评论 -
Linux音频驱动-ASOC之Machine
https://cloud.tencent.com/developer/article/1603725概述在ASOC小节中描述了整个ASOC的架构,其中Machine是ASOC架构中的关键部件,没有Machine部件,单独的Codec和Platform是无法工作的。因此本节则先从Machine部分开始,那应该如何开始呢? 答案当然是从代码入手,先进入ASOC在kernel中的位置: ...转载 2020-04-01 22:16:35 · 1068 阅读 · 0 评论 -
codec驱动常用接口函数积累之snd_soc_codec_get_drvdata
1、snd_soc_codec_get_drvdata./include/sound/soc.hstatic inline void *snd_soc_codec_get_drvdata(struct snd_soc_codec *codec){ return dev_get_drvdata(codec->dev);}调用dev_get_drvdata函数,函...原创 2020-03-31 23:52:33 · 1201 阅读 · 0 评论 -
codec硬件音频通路
https://www.jianshu.com/p/146eb5a6005d硬件总体框图image.png数据通道有:MIC录音通道 MICIN-->ADC-->DIGITAL FILTERS-->DIGTAL AUDIO INTERFACE MIC旁路输出通道 MICIN-->SIEATT-->RHPROUT/LHPOUT MICI...转载 2020-03-25 22:20:39 · 2475 阅读 · 0 评论 -
LINUX音频驱动架构
https://www.jianshu.com/p/0f5fe8f51b66从CODEC的接口和内部模块分析各种功能从接口上看,有: INL-连接音响设备,输入模拟声音信号 MIC-连接麦克风,输入模拟语音信号 DMIC-连接数字麦克风,输入数字音频信号 I2S/PCM-连接CPU,输入数字音频信号 CONTROL INTERF...转载 2020-03-25 21:59:36 · 2461 阅读 · 0 评论 -
Linux audio 音频
Linux 音频、Android 音频https://www.cnblogs.com/linhaostudy/p/8169383.htmlhttps://www.jianshu.com/p/0f5fe8f51b66简介LINUX下音频驱动开发,要遵循标准的ALSA架构,下面分别从硬件架构、软件架构、驱动程序,3个方面分析。硬件架构硬件上音频总线接口有很多,如I2S、...原创 2020-03-25 21:50:45 · 2574 阅读 · 0 评论 -
FFmpeg开源框架及重要结构体简绍
1. FFmpeg介绍与裁剪1.1 FFmpeg简介 FFmpeg(Fast forword mpeg,音视频转换器)是一个开源免费跨平台的视频和音频流方案,它提供了录制/音视频编解码、转换以及流化音视频的完整解决方案。ffmpeg4.0.2源码目录结构如下:目录说明:FFmpeg |—compat 该目录存放的是兼容文件,以便兼容早期版本 |—doc 说明文档...转载 2019-12-29 18:28:08 · 635 阅读 · 0 评论 -
ffmpeg命令参数详解
ffmpeg相关命令:暂无相关命令ffmpeg是一个源于Linux的工具软件,是FLV视频转换器,可以轻易地实现FLV向其它格式avi、asf、 mpeg的转换或者将其它格式转换为flv。原文:https://www.jianshu.com/p/049d03705a81在线ffmpeg命令如何在CentOS下编译参数:1, 通用选项-L licens...转载 2019-12-29 18:04:58 · 627 阅读 · 0 评论 -
Linux下安装ffmpeg
下载ffmpeg从ffmpeg官网:http://ffmpeg.org/download.html下载最新的ffmpeg安装包,然后通过如下命令解压:tar jxfffmpeg-2.5.3.tar.bz2或者用Git从github下载配置本文进行一个比较简单的配置:./configure --enable-shared --prefix=/usr/local/...转载 2019-12-29 17:16:46 · 139 阅读 · 0 评论 -
Arm-Linux 移植 FFMPEG库 + x264
背景:ffmpeg 中带有264的解码,没有编码,需要添加x264。libx264是一个自由的H.264编码库,是x264项目的一部分,使用广泛,ffmpeg的H.264实现就是用的libx264。FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。librtmp用来接收、发...转载 2019-12-29 15:59:18 · 324 阅读 · 0 评论 -
FFmpeg从入门到精通读书笔记(1)
笔者才开始学习音视频开发,FFmpeg从入门到精通读书笔记系列主要是基于阅读刘歧、赵文杰编著的《FFmpeg从入门到精通》以及雷霄骅博士博客总结写的入门心得体会。官方文档资料FFmpeg官方文档:https://ffmpeg.org/documentation.htmlFFmpeg官方wiki:http://trac.ffmpeg.org/wiki中文经典资料雷霄骅博士csdn链...转载 2019-12-29 15:53:01 · 559 阅读 · 0 评论