- 博客(380)
- 资源 (11)
- 收藏
- 关注
转载 audio_policy_configuration.xml 解析
android的audioserver 进程启动时,会创建AudioPolicyManager,洋洋洒洒数千行的其构造函数,第一步就是加载配置相关的xml。#define AUDIO_POLICY_XML_CONFIG_FILE_PATH_MAX_LENGTH 128#define AUDIO_POLICY_XML_CONFIG_FILE_NAME "audio_policy_config...
2018-11-29 11:28:50
2604
转载 Android AudioPolicyService服务启动过程
转至:https://www.cnblogs.com/senior-engineer/p/5089559.htmlAudioPolicyService是策略的制定者,比如什么时候打开音频接口设备、某种Stream类型的音频对应什么设备等等。而AudioFlinger则是策略的执行者,例如具体如何与音频设备通信,如何维护现有系统中的音频设备,以及多个音频流的混音如何处理等等都得由它来完成。Aud...
2018-11-29 11:19:32
1349
转载 Android音频模块启动流程分析
注意:本文基于 Android 7.0 进行分析。1) 设备开机,系统启动时将执行 /system/etc/init/audioserver.rc ,运行 /system/bin/ 目录下的 audioserver 服务。audioserver.rc 内容如下:service audioserver /system/bin/audioserver class main us...
2018-11-29 11:05:16
2577
转载 配置音频政策
配置音频政策Android 7.0 引入了一种新的音频政策配置文件格式 (XML),用于描述音频拓扑。以前的 Android 版本需要使用 device/<company>/<device>/audio/audio_policy.conf 来声明您产品上存在的音频设备(您可以在 device/samsung/tuna/audio/audio_policy.conf ...
2018-11-29 10:57:23
1403
转载 MTK 驱动(63)---MTK TP驱动移植
MTK TP驱动移植 对于MTK TP驱动移植一般分为六部分:1、硬件IO口配置;2、TP驱动移植;3、I2C通信;4、中断触发;5、数据上报;6、虚拟按键; 硬件电路:1、GPIO配置打开 vendor\mediatek\proprietary\scripts\DrvGen.exe 选择 cendor\mediatek\proprieta...
2018-11-06 18:19:29
1103
转载 单片机多级菜单编程实现-基于二叉树链表
单片机多级菜单编程实现(ZT)建立一个树状的菜单结构,用链表实现链表中包含:1、指向同级左右菜单和指向父菜单、子菜单的四个菜单结构体指针;2、进入该菜单时需要执行的初始化函数指针3、退出该菜单时需要执行的结束函数指针4、该菜单内的按键处理函数指针数组的指针操作菜单模块需要的按键操作有:左、右、确认、退出。采用这种办法,可以方便的添加或删减菜单。并且只需要在其头文件中修改初始变量就可...
2018-10-22 10:25:57
5761
3
转载 MTK 驱动(38)---MTK 待机问题分析
转:https://blog.youkuaiyun.com/zhangbijun1230/article/details/79832115mtk 平台待机问题分析:1 待机问题分类 1)无法待机: 1. 需要确认 APK 是否有 partial_wakelock 2. kernel 是否持有 wakeup source 不释放. 2)可以待机,但是唤醒频繁. 1. 是否有打开数据连接...
2018-10-22 09:30:59
1200
转载 转 新型的按键扫描程序(转)长按 短按 写的很棒
原文:http://blog.ednchina.com/zp2009/983530/message.aspx不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享出来,和广大同僚们共勉。我非常坚信这种按键处理办法的便捷和高效,你可以移植到任何一种嵌入式处理器上面,因为C语言强大的可移植性。 同时,这里面用到了一些分层的思想,在单片机当中也是相当有用...
2018-10-16 18:34:33
381
1
转载 uCGUI 按键窗口切换机制二叉树
转自:https://www.cnblogs.com/hiker-blogs/archive/2013/07/02/3166080.html前段时间在做一个窗口项目,这个项目菜单项过多,在管理起来比较麻烦。想做一个高效移植又方便的一个切换机制。后来在网上多方查找这方面资料,但是感觉比较少。后来自己整理出了这个结构,希望对后来朋友有所帮助。 本结构不只局限与按键操作,同时也支持触摸切换...
2018-10-16 18:34:00
355
转载 分享一个按键液晶多级菜单设计方法,工控行业中沿用多年,屡试不爽,附带本人一个调试通过
转自:https://www.amobbs.com/forum.php?mod=viewthread&tid=4001689typedef struct { uchar KeyStateIndex ; / / 当前状态索引号 uchar KeyDnState ; / / 按下“向下”键时转向的状态索引号 uchar KeyUpState...
2018-10-16 18:32:51
3623
转载 多级菜单框架(C实现)
以前见过的多级菜单都是用索引号实现,但是这种菜单修改不易,正好这段时间我要在OLED上显示菜单,所以就编了一个框架出来,代码如下C文件#include "parallelmenu.h"#include "include.h"#include <string.h>#define check 1Page* current_page;Option* current_opt;...
2018-10-16 18:30:57
9621
2
转载 转 单片机实现多级菜单
转自:https://blog.youkuaiyun.com/u010980705/article/details/52600980单片机实现多级菜单 1、首先定义一个机构体如下typedef struct { uchar current; uchar up;//上键 uchar down;//下键 uchar enter;//确认键 vo...
2018-10-16 18:27:36
1560
转载 多功能按键设计。利用一个I/O口,接一个按键,实现3功能操作:单击 + 双击 + 长按
题目:多功能按键设计。利用一个I/O口,接一个按键,实现3功能操作:单击 + 双击 + 长按。 ============================================================================ 用户基本操作定义: 1。短按操作:按键按下,按下时间<1s,属于一次短按操作 2。长按...
2018-10-16 18:25:52
2940
1
转载 Android Gatt连接流程源码分析之ClientIf注册
本文将重点描述Android蓝牙GATT连接的大致流程,不会过多地纠缠代码细节,只为了从架构上梳理清楚,为接下来深入研究底层机制奠定一个宏观认识。首先建立GATT连接前,我们通常要扫描蓝牙设备,获得设备的BluetoothDevice对象,然后调用connectGatt去建立GATT连接并等待连接状态回调,接下来我们就开始分析这一过程,首先看看connectGatt的实现:public B
2016-12-02 15:35:29
3235
1
转载 蓝牙流程介绍
转至:http://blog.youkuaiyun.com/ffmpeg4976/article/details/490484691 基础知识介绍1.1 缩略语BTIF: Bluetooth Interface BTU : Bluetooth Upper Layer BTM: Bluetooth Manager BTE: Bluetooth embedded syste
2016-12-02 15:34:39
4746
转载 surfaceflinger Bootanimation 服务init 启动
在Init.rc中,用service关键字声明了一系列服务.init.rc对service的说明如下:(详见system/core/init/readme.txt)Services--------Services are programs which init launches and (optionally) restartswhen they exit. Services tak
2015-03-17 11:19:33
879
转载 pppd错误码
给还在使用modem拨号的朋友 0 pppd已经断开,或者已经成功建立连接后请求方又中 断了。 1 发成了一个严重错误,例如系统调用失败或者访问非法内存。 2 处理给定操作是检测到错误,例如使用两个互斥的操作。 3 调用pppd的用户没有权限(必须是超级用户)。 4 内核不支持ppp,例如PPP驱动没有加载或者内核编译没有包含PPP驱动。 5 pppd收到SIG
2015-02-06 10:35:47
3592
转载 pppd chat中文帮助
最近在做pppd程序测试,在修改chat脚本pppd-on-dialer文件时出现了一些小问题,虽然chat脚本似乎并不难懂,但是要精通掌握还是需要花费一点精力的。虽然后来chat脚本问题基本已经解决了,但是为了彻底搞懂chat脚本,在baidu、google能用的关键字都用了结果只有找到一个官方的英文说明,就是没有中文。为了以后参阅花了1个白天3个夜晚的时间将文件翻译成中文。英文水平有限,难免有
2015-02-05 10:50:03
2510
转载 Android 3G 拨号脚本
1.WCDMAdebugnodetachlock/dev/ttyUSB0115200user "card"password "card"crtsctsshow-passwordusepeerdnsnoauthnoipdefaultnovjnovjccompnoccpd
2015-02-04 10:21:49
986
转载 HI3515海思开发板移植3G模块笔记
海思Hi3515 Linux3G模块:1、移动模块:ZTE M305(TD-SCDMA)2、联通模块:HUAWEI EM770W(WCDMA)3、电信模块:HUAWEI EM660(CDMA2000-EVDO)开始工作:1、在编译内核时,通过make menuconfig打开模块加载选项,因为调用3G需要用到pppd服务,所以找到pppd服务的,全部启用。2、修改串
2015-01-28 11:54:13
1935
转载 什么是GMS、CDMA、GPRS、EDGE、WCDMA、TD-CDMA、HSPA+、LTE?
什么是GMS、CDMA、GPRS、EDGE、WCDMA、TD-CDMA、HSPA+、LTE?天下无骗 发表于 2012-11-15▌ 引言这也经常会在手机产品规格中常见的数据,这些到底都是什么呢? 这些都是网络制式,手机必须入网才能通话,才能上网传数据,这是现在手机的基本功能,也是选购手机时第一个要搞清楚的问题。
2014-10-30 10:24:28
2310
转载 RIL层源码分析
写在前面 1、本文从宏观的角度去分析问题,因此忽略了一些非主线的函数。 2、同理,对于函数内部非主要的逻辑部分,也采取了省略。 3、受限于知识的积累和理解能力,文中描述如有分析不妥之处,希望能够得到大家更正。从Main函数开始的故事 Android的智能机架构是应用处理器+基带芯片,也就是AP+Modem的模式,AP部分相当于CPU,Modem相当于网卡
2014-09-03 19:21:21
1786
1
转载 移动开发:Android数据连接浅析
在Android中,应用对数据连接的操作需要通过framework提供的以下两个服务类frameworks/base/services/java/com/android/server/ConnectivityService数据连接的系统级服务类,frameworks/base/core/java/android/net/ConnectivityManager数据连接的应用层管理类。下面就Conne
2014-06-19 11:54:37
1981
转载 Android 系统电话管理机制一--工厂模式和代理模式
电话管理是Android 系统支持的重要的业务之一,提供接听电话,收发短信、电话薄、网络事件监听、读取用户信息等功能。 从下到上可以分为四层:硬件驱动层、RIL daemon层、Telephony框架实现层、 PHONE应用层,下层为上层提供服务,每层之间采用不同的通讯方式交互。RIL daemon层实现为单独的一个开机启动的进程(rild命令),通过AT命令硬件驱动层交互,Te
2014-06-18 16:43:04
978
转载 ANDROID 系统网络连接和管理机制--状态模式
一 网络连接功能介绍 ANDROID 系统网络连接和管理服务由四个系统服务ConnectivityService、NetworkPolicyManagerService、NetworkManagementService、NetworkStatsService共同配合完成网络连接和管理功能,四个服务只有ConnectivityService、NetworkPolicyManagerS
2014-06-18 16:31:20
2077
转载 android 4.0 "移动网络" 选项 不存在
关键词:android 4.0 移动网络 Mobile networks平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV310(samsung exynos4210)作者:xubin341719(欢迎转载,请注明作者)前几天调试3G模块,最后发现我拿到的BSP,在“设置”—中没有关于3G的选项,状态栏也没有显示
2014-06-18 15:19:40
1373
转载 Android 4.0 虚拟按键、手机模式、平板模式
平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV310(samsungexynos4210/4412)作者:xubin341719(欢迎转载,请注明作者) 三星新拿回来来的BSP,编译后没有“返回、最近打开应用、home”三个虚拟键。我们硬件在设计的时候也没有设定相应的物理按键,平时调试程序的时候比较麻烦。怎
2014-06-18 15:12:50
2016
转载 Android WebRTC 音视频开发总结(三)
前面介绍了WebRTC的基本结构,本节主要介绍WebRTC音视频的实现,通过前面的例子我们知道运行WebRTCDemo即可看到P2P的效果,实际应用中我们不可能让用户自己去里面设置对方的IP和音视频端口,而且即使设置了对方的IP和端口也不一定能运行起来,因为P2P的双方如果不在同一个网段下还需穿透NAT,即打洞,下面介绍两种达到实用效果的方法:1、增加中转服务器:增加一台公网服务器,客户端先将
2014-03-25 18:43:01
1106
转载 Android WebRTC 音视频开发总结(二)
上节介绍了WebRTC代码编译和WebRTCDemo的运行,这节主要介绍WebRTCDemo的结构,以此来简单了解WebRTC的调用流程。1、先看WebRTCDemo的代码结构,如下图:2、WebRTCDemo中音视频管理接口--MediaEngine,包括操作音频和视频的接口,详见MediaEngine的实现。 3、jni实现:细心的读者会发现WebRTCDemo下面有一
2014-03-25 18:42:21
1095
转载 Android WebRTC 音视频开发总结(二)
上节介绍了WebRTC代码编译和WebRTCDemo的运行,这节主要介绍WebRTCDemo的结构,以此来简单了解WebRTC的调用流程。1、先看WebRTCDemo的代码结构,如下图:2、WebRTCDemo中音视频管理接口--MediaEngine,包括操作音频和视频的接口,详见MediaEngine的实现。 3、jni实现:细心的读者会发现WebRTCDemo下面有一
2014-03-25 18:40:43
1087
转载 Android WebRTC 音视频开发总结(一)
接触Android WebRTC有一段时间了,现在将研究过程中的一些经验和知识总结出来,希望大家有所帮助。本章主要介绍下面四点:一、WebRTC是什么?WebRTC是Google提供的一个跨平台的音视频开源解决方案,旨在使其成为音视频通讯的标准。其实在Google将WebRTC开源之前,微软和苹果各自的通讯产品已占用很大市场份额(如Skype),估计Google也是为了快速扩大市场,所以选
2014-03-25 18:40:06
1407
转载 Android VOIP 介绍一
以前觉得IP电话很神奇,他比用座机和手机便宜太多了(移动,联通等巨头估计收到他的冲击很大),但不知道他的原理是怎样的,前段时间刚好有机会做这部分工作,所以研究了其实现方式(涉及SIP,RTP,SRTP,NAT,STUN,TURN),下面介绍这部分涉及到的内容: 一、IP电话如何实现P2P通信?1、通信最终都是通过TCP/IP协议来实现的,具体通信过程包括信令控制和数据传输,信令控制
2014-03-25 18:38:20
1221
转载 MIPI DSI 协议介绍
一、MIPIMIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写。MIPI(移动行业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放标准。已经完成和正在计划中的规范如下: 二、MIPI联盟的MIPI DSI规范1、名词解释• DCS (DisplayCommandSet):DC
2014-03-17 10:43:21
1182
转载 Samung LCD接口原理
这篇文章中转载的成分比较多,不过大部分内容是从芯片手册上翻译过来。Framebuffer部分是黄冈老师--《嵌入式Linux之我行》这一系列博客中的,嵌入式Linux之我行这系列博客写的非常精,我刚学习Linux时经常拜读他的博客。这部分内容比较固定,三星的芯片跟新了好多代,不过这部分变化不大,技术是一个积累的过程,感谢那些前辈给我们整理比较好的学习资料,有比较好的技术继承。这篇从LCD控制器
2014-03-17 10:24:29
926
转载 LCD基本原来
平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos 4210、exynos 4412 、exynos 5250下面我们说一下TFT-LCD的构造和显示原理,和以前写的博客一样,我会写一下器件的组成、和简单工作原理,这些跟程序、android的关系并不是太大,不过要去调试一个模块,对它的构造有一个系
2014-03-17 10:14:46
1132
转载 关于android定位方式
android 定位一般有四种方法,这四种方式分别是GPS定位、WIFI定位、基站定位、AGPS定位。1、 Android GPS需要GPS硬件支持直接和卫星交互来获取当前经纬度,这种方式需要手机支持GPS模块现在大部分的智能机应该都有了。通过GPS方式准确度是最高的但是它的缺点也非常明显。1、 比较耗电2、 绝大部分用户默认不开启GPS模块3、 从GPS模块启动到获取第一次定
2014-02-21 14:36:27
5450
转载 音频参数意义
1.Frequency Response(频率响应):指标范围越宽越好。 反映了播放器播放的各个频率的声音信号的信号相对大小是否还能保持原本面貌,理想情况下频响曲线应该是一条直线。 好的频率响应是在每一个频率点都能输出稳定足够的信号,不同频率点彼此之间的信号大小均一样。然而在低频与高频部分,信号的重建比较困难,所以在这两个频段通常都会有衰减的现象。输出品质越好的装置,这一条频率响应曲线就
2014-01-08 09:45:59
2491
转载 Android音频系统探究——从SoundPool到AudioHardware
对音频系统的探索起源于工作中遇到的一个bug。平时都是力求快速解决问题,不问原因。这次时间比较宽裕,正好借着解决问题的机会,把Android的音频系统了解一下。既然由bug引发,那就从bug开始说。一. bug现象 Android的照相机在拍照的时候会播放一个按键音。最近的一个MID项目(基于RK3188,Android 4.2)中,测试部门反馈,拍照时按键音播放异常
2013-12-12 16:24:53
1845
转载 GUI系统之SurfaceFlinger(8)应用程序与BufferQueue的关系
文章都是通过阅读源码分析出来的,还在不断完善与改进中,其中难免有些地方理解得不对,欢迎大家批评指正。转载请注明:From LXS. http://blog.youkuaiyun.com/uiop78uiop78/GUI系统之SurfaceFlinger章节目录:blog.youkuaiyun.com/uiop78uiop78/article/details/8954508
2013-11-20 10:35:11
803
转载 GUI系统之SurfaceFlinger(7)应用程序的典型绘图流程
文章都是通过阅读源码分析出来的,还在不断完善与改进中,其中难免有些地方理解得不对,欢迎大家批评指正。转载请注明:From LXS. http://blog.youkuaiyun.com/uiop78uiop78/GUI系统之SurfaceFlinger章节目录:blog.youkuaiyun.com/uiop78uiop78/article/details/89545081
2013-11-20 10:34:33
1248
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人