自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(215)
  • 问答 (1)
  • 收藏
  • 关注

转载 Android 编译时:m、mm、mmm、mma、mmma的区别

转自:Android 编译时:m、mm、mmm、mma、mmma的区别 - 行走的思想 - 博客园m:编译整个安卓系统 makes from the top of the tree mm:编译当前目录下的模块,当前目录下需要有Android.mk这个makefile文件,否则就往上找最近的Andrhttps://www.cnblogs.com/onelikeone/p/9309238.htmlm:编译整个安卓系统makes from the top of the treemm:编译当前...

2022-04-26 11:56:06 1706

转载 Android 10 (Android Q)中的屏幕刷新率(display refresh rate)切换方法和策略

转自:Android 10 (Android Q)中的屏幕刷新率(display refresh rate)切换方法和策略_whoatenereyhow的博客-CSDN博客_android 刷新率1. 屏幕刷新率和应用的显示帧率 首先请区分好屏幕刷新率(Panel Refresh Rate)和应用的帧率(APP Frame Rate)两个概念。 屏幕刷新率是显示器(LCD/OLED等)的硬件性能参数,即它每秒钟能刷新几幅画面,一般用物理单位Hz来表示。我们知道显示器的面板始...

2022-04-14 15:40:12 5771 1

原创 adb am start -n启动安装的apk

1. 使用 “adb shell dumpsys package”命令首先大致找到需要启动的apk package名字:2. 使用“adb shell dumpsys package com.qualcomm.qti.qmmi” 命令找到具体的可以启动apk的package 名字及其 activity:3. 使用上步获取的具体package及其activity 名字启动apk:adb shell am start -n com.qualcomm.qti.qmmi/.framework..

2022-02-08 17:00:42 2945 1

转载 C++入门:类和对象,命名空间和std命名空间,标准库

一.类和对象的概念类 :C++中的类是一种用户定义的类型,可以理解为C语言中的结构体的升级版。对象 :C++中的类也是一种构造数据类型,但是进行了一些扩展,类的成员不但可以是变量,还可以是函数;通过类定义出来的变量就叫做对象。下面给出一段示例代码:#include<stdio.h>int main(void){ class Student{ public: char *name; int age;...

2021-09-16 10:55:39 562

转载 使用repo命令统一回退项目中各git版本库到指定日期

原文链接:https://blog.csdn.net/Qidi_Huang/article/details/65443351执行下面这样的repo命令就行了:repo forall -c 'commitID=`git log --before "2017-03-17 07:00" -1 --pretty=format:"%H"`; git reset --hard $commitID'参数说明:forall 操作分支中的所有仓库-c 只操作当前分支--before 早于指定时间点的提交记

2021-08-20 15:38:10 2882

转载 Android 中的安全增强型 Linux

https://source.android.google.cn/security/selinux/作为 Android安全模型的一部分,Android 使用安全增强型 Linux (SELinux) 对所有进程强制执行强制访问控制 (MAC),甚至包括以 Root/超级用户权限运行的进程(Linux 功能)。很多公司和组织都为 Android 的SELinux 实现做出了贡献。借助 SELinux,Android 可以更好地保护和限制系统服务、控制对应用数据和系统日志的访问、降低恶意软件的影响,并..

2021-08-18 08:59:10 133

原创 ubuntu ADB 权限配置及版本升级

参考 原文链接:https://blog.csdn.net/qq_31180471/article/details/1044861021)问题现象:ator@atorpc:~/workspace$ adb devicesList of devices attached1234567 no permissions解决方案:1. lsusb以下是我的输出(当前连的是小米手机)Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 ...

2021-08-03 19:27:47 1616

转载 nano编辑器使用教程

2010年06月1日 下午 | 作者:VPS侦探使用Linux VPS会经常和编辑器打交道,一般常用的是vi和nano,虽然vi功能强大,但是相对新手来要稍微难上手,GNU nano是一个体积小巧而功能强大的文本编辑器。这里就简单说一下nano的使用方法。安装CentOS:执行yum -y install nanoDebian:执行apt-get install -y nano新建/打开文件nano 路径+文件名如果改文件存在,上面的命令将打开这个文件;如果文件不存在则将会

2021-07-05 15:38:55 373

原创 git 查看某个文件某个函数具体修改时间及内容

git blame kernel/sched/core.c | grep try_to_wake_up

2021-06-30 14:11:35 1218

原创 grep查找当前及其子目录文件中的关键字符串

grep -ERwn "poll_work参考:https://blog.csdn.net/xiaocao9903/article/details/9097363/https://www.runoob.com/linux/linux-comm-grep.html

2021-06-29 18:39:32 570

原创 tinyalsa工具命令

目前linux中主流的音频体系结构是ALSA(Advanced Linux Sound Architecture),ALSA在内核驱动层提供了alsa-driver,在应用层提供了alsa-lib,应用程序只需要调用alsa-lib提供的API就可以完成对底层硬件的操作。说的这么好,但是Android中没有使用标准的ALSA,而是一个ALSA的简化版叫做tinyalsa。Android中使用tinyalsa控制管理所有模式的音频通路,我们也可以使用tinyalsa提供的工具进行查看、调试。编译tinya

2021-06-21 12:09:57 808

原创 使用adb命令启动APK方法

1.获得需要启动的apk 在设备中的activity: 把xxx.apk的安装包后缀改为.rar的压缩文件,然后用解压ruanj

2021-06-18 13:44:54 6977

原创 git 分支操作管理

查看所有分支:ator@atorpc:~/workspace/soft/git_org_kernel/linux-stable$ git branch -a* (HEAD detached at v4.19.82) master remotes/origin/HEAD -> origin/master remotes/origin/linux-2.6.11.y remotes/origin/linux-2.6.12.y remotes/origin/linux-2.6.13....

2021-06-17 17:31:36 377 1

原创 CP SCP RSYNC 复制文件过程中排除特定文件目录

1. CP(同一个PC 不同文件目录之间) :CP前文档目录结构:martin@martin-OptiPlex-5040:/data/project$ ls---------- | ator_test ------------- | | cp1-------- | | | cp1.txt | | ...

2021-06-09 20:29:01 2096

原创 repo init 下载代码error.GitError: manifests ls-remote: usage: git ls-remote

ator@atorpc:~/workspace/soft/alphard20$ repo init -u ssh://ator.liang@IP/INP-Alphard-022.1/manifest -m default.xmlDownloading Repo source from https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/remote: Counting objects: 6393, done.remote: Compressing obj

2021-04-26 17:48:16 1801

原创 ubuntu16.04LTS install python3.6

先update一下sudo apt-get updatesudo apt-get install software-properties-common python-software-properties -y# 这一句update好像不是必要的。sudo apt-get updatesudo add-apt-repository ppa:jonathonf/python-3.6 -y解决办法:sudo add-apt-repository ppa:deadsnakes/ppa#这

2021-04-26 15:40:04 166

原创 执行repo init提示error.GitError: manifests ls-remote解决方案

1)首次执行repo init 命令提示如下(粗体提示):atorliang@atorliang-HP-ProDesk-680-G4-MT:~/workspace/soft/cv25$ repo init -u ssh://ator.liang@IP/INP-Alphard-022.1/manifest -m default.xmlDownloading Repo source from https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/remote

2021-04-22 15:41:52 5234

转载 android Audio System 之三: AudioPolicyService 和 AudioPolicyManager

转自:https://blog.csdn.net/DroidPhone/article/details/5949280DroidPhone 2010-10-18 17:25:00 57934 收藏 7分类专栏: 移动开发之Android 文章标签: audio android system stream output jni版权引言AudioPolicyService是Android音频系统的两大服务之一,另一个服务是AudioFlinger,这两大服务都在系统启动时有MediaSe...

2021-04-20 21:26:53 538

转载 音频播放AudioTrack之入门篇

转自:https://www.jianshu.com/p/632dce664c3d音频播放音频播放声音分为MediaPlayer和AudioTrack两种方案的。MediaPlayer可以播放多种格式的声音文件,例如MP3,WAV,OGG,AAC,MIDI等。然而AudioTrack只能播放PCM数据流。当然两者之间还是有紧密的联系,MediaPlayer在播放音频时,在framework层还是会创建AudioTrack,把解码后的PCM数流传递给AudioTrack,最后由AudioFlinger

2021-04-20 21:03:15 2333

转载 Android的USB系统简单分析之一

转自:https://www.jianshu.com/p/b267c5cedfa90.682017.08.28 09:39:16字数 1,959阅读 11,9481.1PAD作为USB Device设备USB Device的功能很丰富,其支持的协议越来越多包括:MTP、ADB、rndis、mass storage、accessory、audio_source、CDROOM等。1.1.1代码简单分析在代码中涉及到的目录主要有:1.frameworks/base/services/jav

2021-04-20 15:57:40 1239

转载 rk音频驱动分析之ring buf

转自:https://www.cnblogs.com/wen123456/p/14043030.html以下是原文内容:参考:https://blog.csdn.net/u013531497/article/details/48290195http://www.echojb.com/hardware/2016/12/21/283392.htmhttps://blog.csdn.net/droidphone/article/details/73160611.dma buffer简介..

2021-04-13 12:06:18 895

转载 rk音频驱动分析之tinycap录音

一.Tinycap分析使用命令:tinycap /sdcard/test.wav -D card0 -d device0 -c 2 -r 48000 -b 16 -p 1024 -n 16Tinycap.c (external\tinyalsa)录音流程: #define ID_RIFF 0x46464952//这个值是RIFF的ASCII值 #define ID_WAVE 0x45564157//这个值是WAVE的ASCII值 #define ID_FMT 0...

2021-04-13 11:06:10 1856

转载 Linux USB3.0驱动分析(十一)——Gadget设备枚举分析

转自: https://www.tqwba.com/x_d/jishu/401447.html 作者:神秘网友 发布时间:2021-02-04 15:50:05Linux USB3.0驱动分析(十一)——Gadget设备枚举分析一.URT介绍前面介绍了Linux USB Gadget的软件结构与各软件层的整合过程。经过各种注册函数,Gadget功能驱动层,USB设备层与UDC底层结合在了一起形成了一个完整的USB设备。而这个设备已经准备好了接受主机的枚举。在介绍USB设备枚举之前。先熟悉一下各层通.

2021-04-12 20:08:45 3008

转载 Linux中断,时钟和延时

1. 概述 由于中断服务程序的执行并不存在于进程上下文中,所以要求中断服务程序的时间要尽量短。因此, Linux在中断处理中引入了顶半部和底半部分离的机制。另外,内核对时钟的处理也采用中断方式,而内核软件定时器最终依赖于时钟中断。根据中断的来源,中断可分为内部中断和外部中断内部中断的中断源来自CPU内部(软件中断指令、溢出、除法错误等,例如,操作系统从用户态切换到内核态需借助CPU内部的软件中断) 外部中断的中断源来自CPU外部,由外设提出请求。 可屏蔽中断与不可屏蔽中断...

2021-04-10 19:46:36 853

转载 基础讲解USB/UAC运作原理

USB是通用串行总线的意思,本质上并不是专门用来传输音频数据的。这里先简单列举USB2.0几个特性:双绞线、带电源、数据速率与传输频率无关、自同步(不需要单独传输时钟)、Token(令牌)轮询特性[1]。双绞线的特性使得USB天生具有抗共模干扰的能力,带供电使得它带的设备可以不需要电源,令牌轮询特性用于“交通管制”。USB是主从模式的总线,Host控制器决定它下面所有设备一切事务的发送/接收时机。全速下,Host每1ms±500μs生成一个“帧”(frame)。高速下,每125us±0.0625μs生成一个

2021-04-02 18:11:47 4344

转载 UAC1.0和UAC2.0区别

传统3.5mm模拟耳机逐步被USB数字耳机代替。采用USB协议进行音频播放使用USB Audio Class协议(简称UAC).UAC2.0由于支持USB High Speed,从而天生带有高带宽、低延时的优势。这些优势转化为对于Hi-Resolution Auido的支持。UAC1.0最高只支持到双声道192Khz 16b的音源:(2 x 192 x 16) / 1024 = 6Mb = 6Mb/8 = 0.75MBUAC2.0可以最高支持15声道384Khz 32b的音源:(15 x 384K x

2021-04-02 17:46:53 8390 1

转载 rk音频驱动分析之tinyplay播放

转自:https://www.cnblogs.com/wen123456/p/14042749.html#top一.tinyplay播放操作命令:tinyplay /sdcard/test.wavTinyplay.c (external\tinyalsa) file = fopen(filename, "rb");//对应的音频文件 fread(&riff_wave_header, sizeof(riff_wave_header), 1, file);//...

2021-02-19 15:03:59 3063

转载 Linux USB 3.0驱动分析—UAC驱动分析

因为项目里面有USB音频外设,所以需要分析一下UAC驱动。USB Audio Class,USB音频类,一个像USB这样的通用数据接口,可以有很多种实现数字音频数据传输的方式。不同的开发者可以根据自己的喜好和需求,定义任意的控制方式,传输模式,音频格式等等参数。一.UAC驱动初始化分析代码路径:sound\usb\card.c我们先来看看初始化部分,主要是初始化usb_audio_driver结构体static const struct usb_device_...

2021-02-18 17:34:40 2921

转载 USB 配置,接口,设置,endpoint描述符的关系

一个USB设置可以有多个配置,在初始化的过程中,会选择一个默认的配置,选择的方法根据驱动实现而不一样,linux usb会选择第一个标准的配置。else if (udev->descriptor.bDeviceClass !=USB_CLASS_VENDOR_SPEC &&(desc && desc->bInterfaceClass !=USB_CLASS_VENDOR_SPEC)) {best = c;break;}比较的是配置里

2021-02-04 17:06:30 1735

原创 usb/gadget_configfs.txt

/sxr2130_Pre-CS/kernel/msm-4.19/Documentation/usb/gadget_configfs.txt2 3 4 5 Linux USB gadget configured through configfs6 7 8 25th April 20139 10 11 12 13 Overview14 ========15 16 A USB Linux Gadget is a device which has a UDC (

2021-01-27 17:34:41 326

转载 Kconfig详解

1 前言当执行#make menuconfig时会出现内核的配置界面,所有配置工具都是通过读取"arch/$(ARCH)Kconfig"文件来生成配置界面,这个文件就是所有配置的总入口,它会包含其他目录的Kconfig注:对于uboot来讲,配置的总入口在uboot/Kconfig2. Kconfig的作用Kconfig用来配置内核,它就是各种配置界面的源文件,内核的配置工具读取各个Kconfig文件,生成配置界面供开发人员配置内核,最后生成配置文件.config3. Kconfig基本

2021-01-27 15:01:43 1169

转载 Android.mk 文件语法详解

转:http://blog.sina.com.cn/s/blog_602f8770010148ce.html=====================================================================================0. Android.mk简介:Android.mk文件用来告知NDK Build 系统关于Source的信息。 Android.mk将是GNU Makefile的一部分,且将被Build System解析一次或多次。

2021-01-27 11:50:40 346

原创 tinyalsa(tinymix/tinycap/tinyplay/tinypcminfo)使用介绍

目前linux中主流的音频体系结构是ALSA(Advanced Linux Sound Architecture),ALSA在内核驱动层提供了alsa-driver,在应用层提供了alsa-lib,应用程序只需要调用alsa-lib提供的API就可以完成对底层硬件的操作。但是Android中没有使用标准的ALSA,而是一个ALSA的简化版叫做tinyalsa。Android中使用tinyalsa控制管理所有模式的音频通路,我们也可以使用tinyalsa提供的工具进行查看、调试。编译tinyal...

2021-01-22 14:20:43 8897

原创 debug-开机问题-build.prop

开发过程中,手动修改设备vendor/build.prop 中的属性值(voip=true),然后push到设备路径。执行reboot,从PC可以看到COM端口显示一个单感叹号的异常端口,adb 及vysor无法识别到该设备。 查看修改前build.prop 文件权限为600,修改后变成了666。把文件权限命令chmod改回到600,问题得以处理。记之以备忘。...

2021-01-15 14:02:40 268

转载 关于播放模式的选择

转自:https://www.cnblogs.com/wulizhi/p/8183658.html感谢博主!2018-01-03 14:36wulizhi 阅读(2981)一。 简介:我们知道,在Android Audio框架中,主要有四种播放模式: Deep buffer Playback, Low latency Playback, Offload playback和Mutichannel Playback。Deep buffer Playback:音频文件是在AP侧解码成P...

2021-01-13 15:21:04 2071

转载 Qualcomm Audio HAL 音频通路设置

转自:https://blog.csdn.net/azloong/article/details/79383323感谢博主!sepnic2018-02-27 04:54:391. 音频框图概述| Front End PCMs | SoC DSP | Back End DAIs | Audio devices | *************PCM0 <------------> * * <----...

2021-01-13 15:10:15 1212

转载 Android智能手机上的音频浅析及各种音频场景下的audio data path

转自:https://www.cnblogs.com/talkaudiodev/p/8858470.html上一篇文章(Android智能手机上的音频浅析)说本篇将详细讲解Android智能手机中各种音频场景下的音频数据流向,现在我们就开始。智能手机中音频的主要场景有音频播放、音频录制、语音通信等。不同场景下的音频数据流向有很大差异,即使是同一场景,在不同的模式下音频数据流向也有所不同。1,音频播放Android系统audio框架中主要有三种播放模式:low latency playback、.

2021-01-13 11:53:53 845 1

转载 Linux ALSA声卡驱动之八:ASoC架构中的Platform

DroidPhone2012-03-13 14:56:491. Platform驱动在ASoC中的作用前面几章内容已经说过,ASoC被分为Machine,Platform和Codec三大部件,Platform驱动的主要作用是完成音频数据的管理,最终通过CPU的数字音频接口(DAI)把音频数据传送给Codec进行处理,最终由Codec输出驱动耳机或者是喇叭的音信信号。在具体实现上,ASoC有把Platform驱动分为两个部分:snd_soc_platform_driver和snd_soc_dai...

2021-01-08 20:36:46 575

转载 音频通路相关-Kcontrol

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 函数将这些来自snd_kcontrol_new的成员组织到新分配的snd_kcontrol结构体成员中,然后调用snd_ctl_add 函数,将.

2021-01-08 18:23:56 420

转载 Linux ALSA声卡驱动之四:Control设备的创建

DroidPhone2011-05-10 19:41:00声明:本博内容由http://blog.csdn.net/droidphone原创。感谢博主!Control接口Control接口主要让用户空间的应用程序(alsa-lib)可以访问和控制音频codec芯片中的多路开关,滑动控件等。对于Mixer(混音)来说,Control接口显得尤为重要,从ALSA 0.9.x版本开始,所有的mixer工作都是通过control接口的API来实现的。ALSA已经为AC97定义了完整的控制接...

2021-01-08 18:05:22 391 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除