自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(717)
  • 收藏
  • 关注

原创 Android Audio代码分析(2): AudioPoilicyService 启动

AudioPolicyService 所在进程frameworks/av/media/audioserver➜ audioserver git:(0111) ✗ tree.├── Android.mk├── audioserver.rc├── main_audioserver.cpp└── OWNERSint main(int argc __unused, char **argv){ android::hardware::configureRpcThreadpool(...

2021-08-05 20:18:39 2615 1

原创 Android Audio代码分析(1):IAudioPolicyService 数据结构

system/media/audio/include➜ include git:(0111) tree.└── system ├── audio-base.h ├── audio-base-utils.h ├── audio_config.h ├── audio_effect-base.h ├── audio_effect.h ├── audio_effects │├── audio_effects_conf.h │├...

2021-08-03 16:34:21 820

原创 Native Binder

system/core/include/utils/RefBase.h// This provides primarily wp<> weak pointer types and RefBase, which work// together with sp<> from <StrongPointer.h>.// sp<> (and wp<>) are a type of smart pointer that use a wel...

2021-07-26 19:22:48 263

原创 Android MediaProjection 代码分析

MediaProjection是什么MediaProjection指的是一个令牌,这个令牌授权应用一个能力:去捕捉屏幕内容和系统声音* A token granting applications the ability to capture screen contents and/or* record system audio. The exact capabilities granted depend on the type of* MediaProjection.MediaProj..

2021-07-22 17:53:24 3706 5

原创 Android AIDL生成的文件

AIDL File: ILights.aidlpackage android.hardware.light;import android.hardware.light.HwLightState;import android.hardware.light.HwLight;/*** Allows controlling logical lights/indicators, mapped to LEDs in a* hardware-specific manner by the HAL im..

2021-07-21 17:16:42 1284 2

原创 Java List

1. 包含源文件、头文件、生成静态库/动态库,依赖动态库静态库、交叉编译(编译参数的设置), 宏定义2. 测试用例基本操作CMakeLists.txt 一般和源文件在同级目录, 在 CMakeList.txt 目录下创建文件夹 build, 在 build目录下执行 cmake .., 然后执行make, 生成的结果都在build目录下。 add_library(macemc_skel SHARED macemc/rpc/skel/macemc.cc macemc/r...

2021-06-24 16:31:02 108

原创 reflection

https://docs.oracle.com/javase/tutorial/reflect/index.html

2021-06-11 12:15:29 167

原创 runnable, thread, handler

runnalbe 是个啥?package java.lang;@FunctionalInterfacepublic interface Runnable { void run();}只是一个interface而已class RecordThread implements Runnable {public void startRecording() { // getMinBufferSize is a class static method audioBuf

2021-05-23 23:16:57 143

原创 PCM双声道分离为单声道

双声道的数据存储格式https://blog.csdn.net/chinabinlang/article/details/72932947有两种类型, LRLR...每个采样点交替, LLL...RRR 每个通道隔离C++的实现;为了简单,我这里先知实现一个声道的获取:unsigned char * get_oneChannel_left_from_doubleChannel(unsigned char * pDoubleChannelBuf, int nLen, int nPerSam

2021-05-22 22:44:28 846 1

原创 怎样收集唤醒词数据和得到期望的数据:Loudest Section

问题:怎样录音https://github.com/tinyMLx/open-speech-recordinghttps://github.com/petewarden/open-speech-recording问题: 如果录音3秒钟,而其中说话的部分只有约1秒钟,其他是背景音,怎样找到说话的那一秒钟对应的数据?Speech Commands: A Dataset for Limited-Vocabulary Speech Recognitionhttps://arxiv.org/pdf

2021-04-14 10:09:52 345

原创 wave格式分析

1. 怎样用VIM 16进制打开:%!xxd:%!xxd -r2. wav文件格式在文件的前44字节放置标头(header),使播放器或编辑器能够简单掌握文件的基本信息,其内容以区块(chunk)为最小单位,每一区块长度为4字节通过一个具体的文件对应看下音讯格式:小端(低地址对应低位) 0100 -> 0001 (PCM)通道数: 小端0100 -> 0001 (单通道)采样率: 小端 803e 0000 -> 00003e80 (1600...

2021-04-13 17:35:07 340

原创 tflite interpreter

https://www.tensorflow.org/lite/guide/inference怎样训练模型后进行推断验证假设输入数据为list, 假设为yes_listimport numpy as npimport tensorflow as tf# Load the TFLite model and allocate tensors.interpreter = tf.lite.Interpreter(model_path="converted_model.tflite")in.

2021-03-05 09:43:50 1439 3

原创 CMake的使用

基本功能:怎样使用:在CMakeLists.txt的目录下创建build文件夹,在build 路径 执行cmake .. (.. 表示上级目录), 然后执行make, 生成的中间文件 和 target文件都在build路径下。怎样定义target:可执行文件、静态库和动态库add_library(hello_library STATIC /SHARED (默认是static) src/Hello.cpp)add_executable(hello_binary sr...

2021-03-04 09:31:41 528 1

原创 MFCC 学习

Mel Frequency Cepstral Coefficient (MFCC) tutorialhttp://www.practicalcryptography.com/miscellaneous/machine-learning/guide-mel-frequency-cepstral-coefficients-mfccs/这篇英文文章讲的的挺好,还有对应的代码https://github.com/jameslyons/python_speech_featureshttps://en.

2021-03-02 17:26:38 344

原创 jni with gradle

相关学习资料https://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/jniTOC.htmlhttps://www.baeldung.com/jnihttps://www.protechtraining.com/bookshelf/java_fundamentals_tutorial/_java_native_interface_jnihttps://wwmmyy.github.io/2017/09/21/Android%

2021-02-20 17:25:24 248 1

原创 google speech command dataset的生成

生成数据集的代码tensorflow/examples/speech_commands➜ speech_commands git:(master) ✗ lsaccuracy_utils.cc data input_data.py label_wav_test.py recognize_commands.h train.pyaccuracy_utils.h free...

2021-02-09 16:58:58 2844

原创 tflite micro makefile and test

Makefile

2021-01-29 17:51:19 594 1

原创 模型量化整理

https://tensorflow.google.cn/model_optimization/guide/

2021-01-29 16:16:40 202

原创 DNN 学习笔记

CNN简史https://zhuanlan.zhihu.com/p/39068853

2020-12-17 11:31:29 173

转载 工具安装----Clang-format的基本使用

工具安装----Clang-format的基本使用简介ClangFormat 是一个规范代码的工具 ClangFormat 支持的语言有:C/C++/Java/JavaScript/Objective-C/Protobuf/C# ClangFormat 支持的规范有:LLVM,Google,Chromium,Mozilla 和 WebKit测试环境Ubuntu 18.04 LTS clang-format-6.0安装$ sudo apt install clang-format

2020-12-11 14:57:31 1054

原创 GDB 的使用

https://www.ibm.com/developerworks/cn/linux/sdk/gdb/index.html :使用 GDB 调试 Linux 软件https://blog.csdn.net/yinjiabin/article/details/7732931 :gdb基本命令http://www.gnu.org/software/gdb/ :GDB: The GNU Project Debugger 1 List of classes of commands:...

2020-12-06 22:51:12 140 2

原创 mace micro: init过程

include/public/micro.h 没有对应的class MaceMicroEngine.hstruct MaceMicroEngineConfig { model::NetDef *net_def_; const uint8_t *model_data_; framework::Graph *graph_; //has a graph framework::Operator **op_array_; uint8_t *tensor_mem_; const void *...

2020-11-30 12:28:13 203

原创 mace micro 代码分析: netdef 和Graph文件的生成

NetDef的内容pb文件定义message NetDef { repeated OperatorDef op = 1; repeated Argument arg = 2; repeated ConstTensor tensors = 3; optional DataType data_type = 4 [default = DT_FLOAT]; repeated InputOutputInfo input_info = 100; repeated InputOutput...

2020-11-27 17:34:01 395

原创 SoundTrigger 代码分析

目的:在ADSP上运行DNN去识别唤醒词,感觉代码看明白了,但没有具体实现,记录下大概过程,以后也许会有用。整体框架soundTriggerHALtypes.halinterface ISoundTriggerHwInterfaceInterface ISoundTriggerHwCallbackSoundTriggerHalImplstdev_load_sound_modelaudio-kernel...

2020-11-16 17:28:01 2981

原创 Protocol Buffers原理解析

https://github.com/coconilu/Blog/issues/159

2020-11-12 11:48:18 176

原创 Android sensor睡眠唤醒相关

sensor hal log等级的设置什么个逻辑可以动态控制log等const char SENSORS_HAL_PROP_DEBUG[] = "persist.vendor.debug.sensors.hal";/* map debug property value to log_level */static const unordered_map<char, sensors_log::log_level> log_level_map = { { '0', sensors_..

2020-10-20 15:39:47 1970

原创 Android: sensor 时间戳从sensor子系统到AP android层的变化

因为_offset_ns的存在,两个时间体系的转换没有那么简单,不知offset是不是个常量,还是每次开机都会变化?开机也有可能变化?void har::handle_sns_client_event(const sns_client_event_msg_sns_client_event& pb_event){ if (pb_event.msg_id() == SNS_HAR_MSGID_SNS_DATA) { sns_std_sensor_event pb_stream...

2020-05-13 19:50:06 3212

原创 模型预测指标的意思

参考:https://blog.goodaudience.com/introduction-to-1d-convolutional-neural-networks-in-keras-for-time-sequences-3a7ff801a2cfHere is a brief recap of what those scores mean:Accuracy:The ratio betw...

2020-04-30 14:42:58 688

原创 clang-format 格式化代码

安装$ sudo apt install clang-format常用命令如下:预览规范后的代码$ clang-format main.cc直接在原文件上规范代码$ clang-format -i main.cc显示指明代码规范,默认为 LLVM$ clang-format -style=google main.cc把规范保存成文件clang-forma...

2020-04-24 18:17:11 3778

原创 libutils: 反汇编等工具

gprof: 分析性能瓶颈这个没有用过nm./hexagon-nm -C ./wire_pedometer/sns_wrist_pedometer_sensor_algo_island.o./hexagon-nm ./wire_pedometer/sns_wrist_pedometer_sensor_algo_island.o -Ssizestrings...

2020-04-21 11:35:49 533 1

原创 Andorid QCOM GPS: 代码流程

GPS基础知识http://fancyerii.github.io/2020/04/06/gps/常见术语信噪比,英文名称叫做SNR或S/N(SIGNAL-NOISE RATIO),又称为讯噪比。是指一个电子设备或者电子系统中信号与噪声的比例 , 信噪比越大此颗卫星越有效(也就是说可以定位)伪随机噪声(PRN)码: 用于表示卫星相关的信息TTFFTime to first...

2020-04-20 19:36:05 3341

原创 git: 基本概念和操作

参考https://www.cnblogs.com/kidsitcn/p/5318627.htmlhttps://www.cnblogs.com/kidsitcn/p/5319282.html

2020-04-03 19:11:30 906

原创 Nanopb在SEE中的应用

什么是nanopbnapopb是一种新的类似pb(protocol buffer)的协议吗?nanopb和pb有什么区别?nanopb的基本概念proto file是个接口描述语言,类似android中aldl, 会发现接口描述语言很多,还有yaml, 只要有对应的解析脚本把解析后的结果能集成到使用环境就行。protoco文件中样式如下,这里的1并不是对变量赋值为1,是说...

2020-03-26 12:10:33 1042

原创 android SEE HAL classes

SEE HAL 中的sensorsensor是hal最抽象的类,ssc_sensor是sensor在ssc(snapdragon sensor core)下实现的类;xxx是继承自ssc_sensor SEE环境sensor在android hal的对应部分。hal层要和SEE通信最终都是要通过 ssc_connection实现。android sensor see hal部分的代码...

2020-03-03 16:55:39 567

原创 android sensor native class

frameworks/native/libs/sensor/ classNative class initNativeCreatenativeSensorEventQueueframeworks/native/services/sensorservice/sensor data from service to clientUidPolicy 用于控制...

2020-03-02 17:51:16 295

原创 android sensor: registerListener

sensor Java层private final HashMap<SensorEventListener, SensorEventQueue> mSensorListeners = new HashMap<SensorEventListener, SensorEventQueue>();@Overrideprotected boolean ...

2020-02-26 13:14:16 1071

原创 android sensor framework: java to jni to sensorservice

SensorEventListener/*** Used for receiving notifications from the SensorManager when* there is new sensor data.*/public interface SensorEventListener { /** * Called when there is a n...

2020-02-25 22:01:16 262

原创 android sensor 是怎样获得sensorlist的

从java层到SEE层看怎样得到sesorlist的frameworks/base/services/core/java/com/android/server/power/PowerManagerService.javaSensorManager sensorManager = new SystemSensorManager(mContext, mHandler.getLooper()...

2020-02-25 08:30:44 4522

原创 android sensor 的aidl和 hidl 接口

ISensorService接口:enum { GET_SENSOR_LIST = IBinder::FIRST_CALL_TRANSACTION, CREATE_SENSOR_EVENT_CONNECTION, ENABLE_DATA_INJECTION, GET_DYNAMIC_SENSOR_LIST, CREATE_SENSOR_DIRECT_C...

2020-02-25 08:11:47 2803

原创 SEE 中的数据结构及之间的关系

sensor and sensor_instancesensor表示一个物理或者虚拟的sensor, sensor instance是具体化了一个配置如采样率数据结构sensor管理sensor instance, 使用sensor callback function(framework 实现) 调入到 sensor framework 去创建、删除sensor instance等;...

2020-02-22 20:46:25 2510

空空如也

空空如也

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

TA关注的人

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