自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Android系统攻城狮

CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!

  • 博客(3220)
  • 资源 (98)
  • 收藏
  • 关注

原创 欢迎关注公众号:Android系统攻城狮 原创持续更新中!!!

更多原创,欢迎关注:Android系统攻城狮。

2023-04-13 14:32:43 389

原创 Android9.0 setStereoVolume左右声道流程(二十四)

注意:这条路其实没有走,过后会写第二篇分析到底是怎么控制AudioTrack的左右声道的。栗子:setStereoVolume()控制左右声道流程.private AudioTrack mAudioTrack;int bufferSize = AudioTrack.getMinBufferSize(mSampleRateInHz, mChannelConfig, AudioFormat....

2019-03-06 18:30:21 3698 1

原创 通过AMS分析Binder流程(Java到Kernel)

栗子:public class MainActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent = new Intent(this, D...

2019-01-08 13:00:08 1208

原创 MediaPlayer到ACodec到OMX流程(十九)

********************************************************************************OpenMax(OMX)框架位置及作用1.android系统中只用openmax来做code,所以android向上抽象了一层OMXCodec,提供给上层播放器用。 播放器中音视频解码器mVideosource、mAudiosou...

2018-09-01 18:12:36 3877

原创 Android7.1 audio 播放流程(三十五)

MediaPlayer基本使用方式:播放一首MP3歌曲MediaPlayer mp = new MediaPlayer();mp.setDataSource("/sdcard/test.mp3");mp.prepare();mp.start();//这里初始化CCDeCoder解码器1. IMediaPlayer.cpp/h<1>.头文件frameworks/av/i...

2018-08-03 17:26:31 2348

原创 tshark/wireshark/tcpdump实战笔记(更新中...)

注意Wireshark表示意义:Source: 发送方IP Destination: 接收方IPProtoco: 协议Length: 这里显示的物理层(Frame)数据长度,Frame层长度最长,因为每层都要加上包头。info: 显示发送和接收数据的状态//安装tshark和wireshark# sudo apt-get install tshark# sudo apt-g...

2018-05-18 17:51:19 1835

原创 Android输入事件InputReader和InputDispatcher分析

.C++frameworks/native/services/inputflinger/InputDispatcher.cppvoid InputDispatcher::notifyKey(const NotifyKeyArgs* args) { mPolicy->interceptKeyBeforeQueueing(&event, /*byref*/ policyFlags);}.J

2017-08-10 17:07:25 1823 2

原创 Linux之常用命令备忘<不断更新中...>(十七)

1、模糊查找字符串# find . "*" | xargs grep "ro.hardware" -rn --color# find -name "*.rc" | xargs grep "ro.hardware" -rn --color# find -name "*.rc" | xargs grep -rn --color "ro.hardware"//过滤不想看到的字符...

2016-11-09 15:20:23 1676

原创 Android4.4之Camera2预览流程APP到Driver(十四)

1.APP调用 packages/apps/Camera2/src/com/android/camera/PhotoModule.java private void startPreview() { Log.v(TAG, "startPreview"); mCameraDevice.startPreviewAsync(); mFocu...

2016-11-03 18:59:46 3617

原创 C语言之回调函数+可变参数__VA_ARGS__:用法实例(四十八)

本篇目的:C语言之回调函数+可变参数:用法实例在C语言中,是一个可变参数宏的示例,它允许开发者调用一个函数FUNC,并将可变数量的参数传递给它。这种机制在C语言的标准库中非常常见,尤其是在处理像printf这样的函数时,它们可以接受不同数量和类型的参数。

2024-04-25 04:00:00 61

原创 Linux内核之hook机制:call_void_hook用法实例(六十一)

本篇目的:Linux内核之hook机制:call_void_hook用法实例char * lsm;\ ____ptr?\ pos;char * lsm;\ ____ptr?\ pos;char * lsm;\ ____ptr?\ pos;char * lsm;\ ____ptr?\ pos;

2024-04-24 06:15:00 457

原创 Linux内核之宏_IOWR:如何生成ioctl控制命令(六十)

本篇目的:Linux内核之宏_IOWR:如何生成ioctl控制命令在Linux内核中,_IOWR是一个宏,用于生成系统调用中ioctl命令代码的一部分。ioctl(“input/output control”)系统调用是Linux中用于与设备文件交互的接口,它允许用户空间程序向设备驱动发送控制命令,并可能传递或接收数据。_IOWR宏用于构造一个ioctl命令,该命令支持双向数据传输,即可以同时从用户空间读取数据和向用户空间写入数据。

2024-04-24 05:00:00 617

原创 Linux内核之内存回收器:shrinker用法实例(五十九)

本篇目的:Linux内核之内存回收器:shrinker用法实例struct shrinker 是 Linux 内核中用于管理内存回收器的结构体。它允许内核在系统内存紧张时释放不再需要的内存对象,以确保系统的稳定性和性能。

2024-04-23 06:00:00 561

原创 shell进阶之正则表达式:字符转义(十七)

本篇目的:shell进阶之搜索:正则表达式字符转义Shell脚本中的正则表达式(Regular Expression,简称Regex)是一种强大的文本处理工具,它通过特定的模式匹配规则来搜索、替换、查找和操作字符串。正则表达式在Shell脚本中的应用非常广泛,例如在处理日志文件、文本数据、配置文件等方面。然而,正则表达式中包含了一些特殊字符,这些特殊字符在正则表达式中有特殊的意义和用途。当我们在Shell脚本中使用正则表达式时,有时需要对这些特殊字符进行转义,以避免它们被误解为正则表达式的特殊含义。

2024-04-23 04:30:00 541

原创 Android14音频进阶之车载音频系统AAOS:VehicleService服务(六十八)

本篇目的:Android14音频进阶之AAOS车载音频系统VehicleService服务学习接第六十七篇:Android14音频进阶之Perfetto高级调试技巧本篇来分析一下AAOS车载音频系统VehicleService服务启动过程。在AAOS系统未推出之前,大家开发车机系统,都是基于AOSP原生系统开发,Google开始发力自己的车机系统,各大车企也纷纷加入。从而降低了企业的开发成本,但是开发人员的学习成本并没有因此降低。

2024-04-22 07:00:00 1052

原创 Linux内核之slab、slub内存分配器实例用法区别(五十八)

本篇目的:Linux内核之slab、slub内存分配器用法实例区别在Linux内核中,slab和slub都是内存分配器,用于管理内核空间的内存分配和释放。它们的作用是优化内存分配和释放的性能,减少内存碎片化,并提高系统的性能和稳定性。

2024-04-22 05:15:00 854

原创 Linux内核之注册字符设备:alloc_chrdev_region静态注册、register_chrdev动态注册(五十七)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门实战课【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

2024-04-22 04:00:00 968

原创 Linux内核之内核通知文件系统创建的路径:fsnotify_create用法实例(五十六)

本篇目的:Linux内核之内核通知文件系统创建的路径:fsnotify_create用法实例fsnotify_create 函数是 Linux 内核中的一个函数,用于通知文件系统中的文件或目录创建事件。当新的文件或目录被创建时,内核会调用 fsnotify_create 函数来向文件系统通知机制注册相应的创建事件监听器。// 审计文件系统事件:通知有新的子节点被创建// 发送文件系统通知事件:文件被创建参数说明:inode:新创建的文件或目录所属的父目录的索引节点。

2024-04-21 06:15:00 636

原创 Linux内核之文件系统访问:目录项、inode、物理磁盘访问关系(五十五)

本篇目的:Linux内核之目录项/inode/物理磁盘访问关系在Linux文件系统中,目录项(dentry)、inode和物理磁盘之间的关系是理解和文件访问流程的关键。

2024-04-21 04:15:00 684

原创 Linux内核之目录项关联inode索引节点:d_instantiate用法实例(五十四)

本篇目的:Linux内核之目录项关联inode索引节点:d_instantiate用法实例在Linux内核中,函数是一个关键的文件系统接口,它用于将目录项(dentry)与inode关联起来。这个函数在文件系统的路径查找过程中被调用,对于文件系统的性能和稳定性有着重要影响。

2024-04-20 06:15:00 956

原创 Linux内核之读、写信号量:up_read、up_write用法实例(五十三)

本篇目的:Linux内核之读写信号量:up_read/up_write用法实例在 Linux 内核中,up_read 和 up_write 是用于管理读写信号量的函数,通常与 down_read 和 down_write 函数一起使用,用于实现读写锁。up_read函数:作用:释放读取锁定信号量。用法: up_read(& sem);说明:up_read 函数用于释放先前通过 down_read 函数获取的读取锁。它使得其他进程或线程能够获取读取锁,允许多个并发读取操作。

2024-04-20 05:45:00 944

原创 Linux内核之查找文件系统中文件或目录:lookup_one_len用法实例(五十二)

本篇目的:Linux内核之查找文件系统中路径:lookup_one_len用法实例Linux内核中的函数是文件系统路径查找中的一个关键函数,它用于在VFS(Virtual File System)层中根据给定的路径名查找目录项(dentry)。这个函数的主要作用是在文件系统中寻找与路径名匹配的目录项,它是文件系统交互的基础之一,对于文件系统的性能和稳定性有着重要影响。在Linux系统中,每个文件或目录都有一个与之对应的目录项对象,即dentry。

2024-04-19 09:09:27 778

原创 Linux内核之引用计数器:refcount_set代码实例(五十一)

本篇目的:Linux内核之引用计数器:refcount_set代码实例是 Linux 内核中用于设置引用计数值的函数之一。引用计数是一种常见的内核机制,用于跟踪内核对象的引用次数,以确保在没有任何引用时可以安全地释放对象。其中,r是一个refcount_t类型的指针,表示要设置的引用计数器,而n是要设置的值。通常,函数在初始化内核对象的引用计数时使用,或者在需要重置引用计数器值时使用。在初始化时,它可以将引用计数设置为初始值,通常为 1,表示对象的第一个引用。

2024-04-19 07:42:28 549

原创 Linux内核之虚拟地址转物理页:virt_to_page实现代码实例(五十)

本篇目的:Linux内核之virt_to_page实现与用法实例是Linux内核中用于将虚拟地址转换为对应的页描述符(page descriptor)的函数。在Linux内核中,每个物理内存页都有一个对应的结构,该结构包含了页的详细信息,如页的状态、引用计数、映射信息等。当内核需要操作一个特定的虚拟地址时,它通常会使用来获取该虚拟地址对应的page结构。在Linux内核中,虚拟地址空间被划分为多个区域,如内核空间、用户空间等。每个区域内部又被划分为多个页,每页大小通常为4KB。

2024-04-18 10:03:20 996

原创 Linux内核之kfree如何释放内存(四十九)

本篇目的:Linux内核之kfree实现及用法实例在Linux内核中,kfree是一个用于释放内存的函数,它用于释放通过kmallockzallocvmalloc等函数分配的内存。这些分配函数在内核空间中动态地分配内存,而kfree则用于在不再需要这些内存时将其释放回系统。当一个内核函数需要一些临时内存来存储数据时,它会调用kmalloc或kzallockzalloc是kmalloc的一个变体,它会在分配内存后将其清零)。这些函数返回一个指向分配的内存的指针。

2024-04-18 07:43:54 607

原创 Linux内核之WRITE_ONCE用法实例(四十八)

本篇目的:Linux内核之WRITE_ONCE用法实例WRITE_ONCE是一个宏,它在Linux内核中用于确保对变量的写操作是原子性的,并且不会被编译器的优化重排。这个宏的主要目的是在多线程环境中提供一种安全的方式来写入共享变量,确保其他线程能够看到正确的值。WRITE_ONCE宏的实现利用了C语言的结构体和联合体的特性。首先,它定义了一个匿名联合体,其中包含一个与目标变量x类型相同的成员__val,以及一个字符数组__c。这个字符数组的大小设置为1,是为了确保联合体的大小与x的大小相同。

2024-04-17 06:00:00 577

原创 C语言之aligned用法实例(四十七)

本篇目的:Linux内核之aligned用法实例在Linux内核中,aligned关键字是一个编译器指令,它用于指定变量或结构体的对齐方式。对齐是指变量或结构体在内存中的起始地址与某个数的倍数对齐。对齐对于性能至关重要,特别是在处理对齐敏感的数据类型(如浮点数)或使用SIMD指令时。正确的对齐可以减少内存访问时间,提高程序的性能。在Linux内核中,aligned关键字通常与一起使用,其中n是一个整数,指定了对齐边界。n必须是2的幂,因为大多数处理器和内存系统都对齐到2的幂边界上的地址。

2024-04-17 05:00:00 819

原创 Emacs之增加/取消输入括号自动匹配(一百三十六)

本篇目的:Emacs之取消输入括号自动匹配Emacs 是一个功能强大的文本编辑器,它拥有丰富的扩展和自定义选项,能够满足各种编程和文本编辑需求。其中一个非常实用的功能就是输入括号自动匹配,也就是。是 Emacs 中的一个模式,当你在编辑器中输入一个开放括号(如等)时,Emacs 会自动为你插入一个对应的闭合括号,并将光标放在这两个括号之间。这不仅使代码看起来更加整洁,还有助于减少因遗漏或错位括号而导致的语法错误。要启用,你可以在 Emacs 的配置文件(通常是.emacs或init.el。

2024-04-16 06:15:00 1371

原创 C语言之探秘:访问结构体空指针与结构体空指针的地址的区别(九十三)

本篇目的:C语言之探秘:访问结构体空指针与结构体空指针的地址的区别在C语言中,结构体(Struct)是一种复合数据类型,它可以包含多个不同类型的数据项。指针(Pointer)是一种特殊的数据类型,用于存储变量地址。空指针(Null Pointer)是一个不指向任何有效内存地址的特殊指针。当我们谈论结构体空指针与结构体空指针的地址时,我们需要明确两个概念:结构体变量的地址和结构体指针的地址。结构体空指针:结构体空指针是指未经初始化的结构体指针,它不指向任何有效的内存地址。在C语言中,我们可以使用。

2024-04-16 04:30:00 892

原创 Android14音频进阶之Perfetto高级调试技巧(六十七)

本篇目的:Android14音频进阶之Perfetto高级调试技巧接第六十六篇:Android14音频进阶之<进阶调试>:Perfetto定位系统音频问题上一篇与读者分享如何使用谷歌新一代的性能分析工具Perfetto,可能还有些读者还是云里雾里,本文来一个dump Android各个层级trace的实战篇。Perfetto是一个很强大的性能优化和debug系统疑难杂症的工具,有了它图形化的功能,可以帮我们达到事半功倍的效果,学习它,是为了让它的能力能够释放出来,帮我们从繁杂的debug中解脱出来。

2024-04-15 07:00:00 1661

原创 C语言之哈希表节点插入与遍历学习(九十二)

本篇目的:C语言之哈希表节点插入与遍历学习哈希表(Hash Table)是一种数据结构,用于存储键值对(Key-Value Pair)的集合。它通过哈希函数将键映射到表中的一个位置,以加快查找速度。在哈希表中,数据是以数组的形式存储的,数组的索引是通过哈希函数计算得出的。哈希表的核心思想是将键通过哈希函数转换为一个整数值,然后将这个整数值作为数组索引,将对应的值存储在数组中。当我们想要查找一个键对应的值时,只需要再次使用哈希函数计算数组索引,然后直接访问数组中的对应位置即可。

2024-04-15 06:00:00 731

原创 C语言之offsetof实现分析(九十一)

本篇目的:C语言之offsetof实现分析C语言中的offsetof宏是一个非常有用的工具,它用于计算结构体中某个成员相对于结构体开头的偏移量。这个宏定义在头文件中,它是C标准库的一部分。offsetof宏的使用方法非常简单,它的原型如下:其中,type是一个结构体类型,member是type结构体中的一个成员。offsetof宏的返回值是member成员相对于type结构体开头的字节偏移量。

2024-04-15 04:45:00 748

原创 C语言之typeof用法实例(九十二)

本篇目的:C语言之typeof用法实例C语言的typeof运算符是一个编译时运算符,它用于获取表达式的类型。这个运算符是由GCC扩展引入的,不是标准C语言的一部分。typeof运算符允许我们在编写泛型代码时避免硬编码特定的数据类型,从而提高代码的灵活性和可重用性。typeof运算符的基本形式如下:其中expr是任何有效的C语言表达式。typeof运算符将返回expr的类型,这个类型可以用于定义新的变量、函数参数或者作为类型转换的目标类型。typeof运算符的一个主要优点是它提供了类型推断的能力。

2024-04-14 06:15:00 736

原创 C语言之_Generic用法实例(九十一)

本篇目的:C语言之_Generic用法实例C语言的_Generic表达式是C11标准引入的一个特性,它提供了一种在编译时基于表达式类型选择函数或值的方法。这种机制与C++中的模板元编程相似,但更为简单和受限。_Generic表达式的基本形式如下:其中expr是我们要判断的表达式,是可能的类型,是对应的类型为真时返回的值,是默认返回的值(当没有任何类型匹配时)。_Generic表达式的基本思想是,根据expr的类型,从多个候选值中选择一个。这种选择是在编译时进行的,因此_Generic。

2024-04-14 05:15:00 670

原创 Linux内核之互斥锁mutex_init和自旋锁spin_lock区别及用法实例(四十六)

本篇目的:Linux内核之互斥锁mutex_init和自旋锁spin_lock区别及用法实例在Linux内核中,mutex_init和spin_lock是两种常用的同步机制,用于在多线程或多处理器环境中保护共享资源,防止并发访问造成的数据不一致问题。mutex_init用于初始化一个互斥锁(mutex),它是一种睡眠锁。当一个线程尝试获取一个已经被其他线程持有的互斥锁时,该线程会被阻塞,进入睡眠状态,直到互斥锁被释放。互斥锁适用于那些可能造成较长时间阻塞的场景,因为线程睡眠状态不会消耗CPU资源。

2024-04-13 06:45:00 1370

原创 Linux内核之自旋锁:自旋锁初始化之spin_lock_init用法实例(四十五)

本篇目的:Linux内核之自旋锁:spin_lock_init用法实例Linux内核是一个开源的类UNIX操作系统内核,被广泛用于各种计算机系统。在Linux内核中,同步机制是确保多线程程序正确性的关键部分。是Linux内核中用于初始化自旋锁的一个函数,它用于保护内核中的临界区,防止多个线程同时访问共享资源。自旋锁(spinlock)是一种锁,当一个线程尝试获取一个已被其他线程获取的锁时,该线程将在一个循环中不断地检查锁是否已经可用。这个过程被称为“自旋”。

2024-04-13 05:15:00 836

原创 Linux内核之Binder驱动红黑树:rb_root用法实例(四十四)

本篇目的:Linux内核之Binder驱动关键结构体rb_root用法实例Binder是Android系统中实现跨进程通信(IPC)的机制,它由内核空间的Binder驱动和用户空间的Binder库组成。Binder驱动中的关键数据结构之一是rb_root,它用于管理Binder实体的高速缓存。在Binder驱动中,每个进程都有一个binder_proc结构体,用于管理该进程中的Binder实体和引用。

2024-04-12 06:30:00 830

原创 Linux内核之Binder驱动关键结构体binder_ref用法实例(四十三)

本篇目的:Linux内核之Binder驱动关键结构体binder_ref用法实例Binder是Android系统中一个非常重要的组件,它负责在进程间进行通信(IPC)。Binder驱动是Binder机制的核心部分,它工作在内核空间,负责处理跨进程的通信细节。Binder驱动通过一个名为binder_ref的数据结构来管理进程间的引用关系。在Binder驱动中,每个进程都有一个对应的binder_proc结构体,该结构体包含了进程的所有Binder相关的信息。

2024-04-12 05:45:00 1411

原创 Linux内核之Binder驱动关键结构体binder_node用法实例(四十二)

本篇目的:Linux内核之Binder驱动关键结构体binder_node用法实例是 Android Binder 驱动中用于表示 Binder 实体的核心数据结构。Binder 实体是 Binder 通信机制中的基本单元,它可以是一个服务,也可以是一个客户端句柄。每个 Binder 实体都对应一个结构,该结构包含了实体的各种信息,如引用计数、节点 ID、用户数据等。Binder 实体在 Binder 驱动中通过来管理,它是实现进程间通信(IPC)和服务管理的基础。

2024-04-11 07:45:00 706

原创 Linux内核之Binder驱动关键结构体binder_proc用法实例(四十一)

在 Android 系统中,Binder 是一个提供进程间通信(IPC)的驱动程序。它允许一个进程(称为服务器)提供服务给其他进程(称为客户端)。struct binder_proc 是 Binder 驱动中的一个关键结构体,它代表了一个使用 Binder 机制的进程。这个结构体包含了进程的 Binder 相关的所有信息,如线程池、内存分配情况、已打开的 Binder 实体等。

2024-04-11 05:45:00 1271

H.264标准协议(官方中文版)

H.264是一种视频压缩标准,其只规定了符合标准的码流的格式,以及码流中各个语法元素的解析方法。 H.264标准协议是每个从事多媒体工作的码农必备的参考书,欢迎下载。

2020-10-28

HxD_Hex编辑器中文版.zip

HxD is a carefully designed and fast hex editor which, additionally to raw disk editing and modifying of main memory (RAM), handles files of any size. The easy to use interface offers features such as searching and replacing, exporting, checksums/digests, insertion of byte patterns, a file shredder

2020-09-12

MultimediaFrameworkOverview.zip

音视频多媒体框架GStreamer、PulseAudio采用插件式架构,支持多格式编解码器,支持不同编码器、解析器、分离器和复用器作为插件式架构!

2020-09-01

Gstreamer-Openmax-gst-openmax.zip

OpenMAX is a royalty-free, cross-platform API that provides abstractions for routines especially useful for computer graphics, video, and audio.

2020-08-17

GStreamer中文开发手册.zip

GStreamer是一个通用的跨平台的流媒体应用程序框架,基于GObject,以C语言写成。 GStreamer并不受限于音频和视频处理,它能够处理任意类型的数据流,因此任意一种流媒体应用都可以支持,如:MeidaPlayer、A/V Editor、VOIP、RTSP、A/V Coder等等。 GStreamer框架是基于插件(plugin)和管道(pipeline)的体系结构,框架中所有功能模块都是可插拔的组件,可随意安装到任意管道上

2020-07-22

win10removeAll.zip

Win10彻底关闭windows defender,解决无故占用大量CPU和内存问题! 建议保留一个杀毒软件,不管是360、火绒还是什么,至少安装一个保证电脑的安全。

2020-06-25

vcxsrv-64.1.20.8.1.zip

VcXsrv是微软Windows的开源显示服务器。 它使Windows操作系统的用户能够运行为X Window System设计的GUI程序。 VcXsrv可以运行安装了WSL(Linux子系统Linux)的Linux GUI程序。 在bash for Windows中,设置DISPLAY环境变量允许WSL程序使用Windows GUI。

2020-06-20

debug_hybris_demo.zip

libhybris主要作用是为了解决libc库的兼容问题,目的是为了在基于GNU C library的系统运行那些用bionic编译的库(主要是Android下的闭源HAL库)。因为这些系统都是基于glibc生态的,然而现有的硬件厂商提供的driver多是为Android而写的,自然也是用bionic编译的。如何让基于glibc的系统能够重用现有Android的driver呢?这就需要像libhybris这样的兼容层。

2020-06-03

手写Fuchsia第一个app

在研究GN和Ninja时,发现Fuchsia也是用的GN和ninja来构建编译系统的,值得一提的是Android7.0以后放弃了Makefile,开始使用ninja来构建编译系统!

2020-03-16

Linux内核内存Cache机制原理

Linux内核内存Cache机制原理从源码的角度来分析流程,可以帮助Linux内核学习者了结Cache的内存机制!

2020-03-14

第五代加固技术ARM VMP原理实现与应用.zip

随着Android逆向开发的升级,Android应用的安全越来越被重视,第五代加固技术ARM VMP原理实现与应用正在探索中发展。

2020-03-01

AUDIO CODEC DAPM详解.zip

本文目的帮助理解音频系统ALSA中的dapm机制建立和触发过程,在这之中,涉及到音频路径的搭建和选择(相信这部分对于大家来说更有应用意义)。在dapm机制深入分析中,会展现alsa设计者的各种理念及实现技巧,很多细节上的考虑和处理值得我们去学习。

2019-12-30

蓝牙Audio调试.zip

蓝牙协议栈有很多种profile,像HFP、A2DP、HSP等等,他们通讯都是蓝牙模块和CPU或者DSP之间,通过AT指令来发送信息,这篇文档介绍各种profile及支持采样率和通道数据,还有调试方式!

2019-12-27

Universal Serial Bus Device Class Definition for Audio Devices.zip

Universal Serial Bus Device Class Definition for Audio Devices(UAC2.0协议文档),研究usb audio必读,欢迎下载!

2019-11-16

Pixel ROM(sailfish)

最近在玩Pixel,自己花了一周时间下载Android源码,编译出来Pixel root版的ROM,分享给爱玩机的朋友!

2019-10-20

最新windows和linux的adb工具

下载了一份最新windows和linux平台的adb工具,以此提供给更多开发者方便使用!

2019-07-30

基于域名路由策略.zip

目前使用主流的Linux配置都是基于ip设置路由策略,此篇讲解怎么基于域名路由策略,仅供参考!

2019-07-17

busybox.zip

Android debug的时候由于android原生的命令太少,编译了一个busybox分享出来,欢迎下载。

2019-06-25

Audition 2019版

Audition是做音频开发不可或缺的重要的开发工具,分享一个Win10 2019免注册版备用,也欢迎下载。

2019-06-13

802.11 Reason Code中文说明(全)

WIFI断网有很多情况,如果去翻看802.11协议文档,全英文的很费劲,把Deauthentication Reason Codes中文说明放在这里,供大家参考

2019-05-21

H266(VVC)视频编码协议标准pdf

H266(VVC)视频编码协议标准最新版 T-REC-H.266-202204-I!!PDF-E.pdf

2023-10-05

ISO 13818-7 AAC标准协议文档

ISO 13818-7 AAC标准是MPEG-2标准中定义的一部分,详细描述了AAC在MPEG-2传输流中的编码和解码方法。

2023-09-03

word2010中输入简谱

word2010中输入简谱

2023-04-25

Picture auto gen tools

Picture auto gen tools for wechat

2023-03-27

AIDL for HALs测试客户端

AIDL for HALs测试客户端

2023-01-10

彻底禁掉Win10 Defender自启动

彻底禁掉Win10 Defender自启动! 彻底禁掉Win10 Defender自启动! 彻底禁掉Win10 Defender自启动! 开机内存不会占用特别高! 开机内存不会占用特别高! 开机内存不会占用特别高!

2022-12-24

免费DLL修复工具For WIn10/Win11

免费DLL修复工具

2022-10-22

Typora free版本for Ubuntu22.04

Typora free版本for Ubuntu22.04

2022-10-22

gnome-boxes虚拟机跨平台工具

gnome-boxes虚拟机工具 1.Windows和Linux剪切版共享工具 2.Windows和Linux文件共享工具

2022-10-12

android10以上源码中编译java及UI代码

1.增加Android.mk编译方式 2.增加Android.bp编译方式

2022-07-18

企业微信for Linux

企业微信forLinux

2022-06-22

微信for Ubuntu18.04

微信for Ubuntu18.04

2022-06-22

qt_audio_record.tar.gz

花了一天时间研究,在x86与ARM平台验证可用,备忘!

2021-04-28

qt_audio_play.tar.gz

QT之QMediaPlayer播放音频demo

2021-04-28

deepin.com.wechat_2.6.8.65deepin0_i386-OK.zip

deepin for wechat

2021-03-22

capture_test.zip

在Android6.0平台上,UVC Camera使用标准V4L2接口获取视频数据,并保存文件,测试debug调试使用。

2021-03-09

java-7-openjdk-amd64.tar.gz

目前OpenJDK-7-JDK的源已经被废弃了,手动安装的花需要安装一系列的依赖,特别麻烦,这里提供给需要的开发人员.

2021-01-22

Elecard HEVC Analyzer_For_Windows.zip

分享一个Elecard h265分析工具,大家都知道Elecard很贵,不多说了,内附registor.

2021-01-06

push_stream_test.zip

此mp4文件为h264编码格式,用于推流使用.

2020-12-23

JM-H264参考手册

JM:JM通常被认为是H.264标准制定团队所认可的官方参考软件,基本实现了H.264标准的全部特征。JM在运行时的运算过程较为复杂,而且没有采用汇编优化等加速方法,因此运行速度较慢,很难达到实时编解码。通常主要用于编解码技术的科学研究领域。

2020-10-28

空空如也

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

TA关注的人

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