听闻风起
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
JNI详解

JNI详解

JNI 知识详解在 Android 生态中主要有 C/C++、Java、Kotlin 三种语言 ,它们的关系不是替换而是互补。其中,C/C++ 的语境是算法和高性能,Java 的语境是平台无关和内存管理,而 Kotlin 则融合了多种语言中的优秀特性,带来了一种更现代化的编程方式。 1. 认识 JNI 1.1 为什么要使用 JNI?JNI(Java Native Inte
2025-10-21
Android
#Android
谈谈对zygote的理解

谈谈对zygote的理解

2025-07-17
Android 进阶
#Android 面试
C 语言基础知识

C 语言基础知识

关键字static的作用是什么? 修饰局部变量:使变量在程序整个生命周期内只初始化一次,函数调用结束后不被销毁,值保持不变 修饰全局变量:限制变量作用域在当前文件内,其他文件无法访问 修饰函数:限制函数作用域在当前文件内,实现函数封装和隐藏 全局变量和局部变量在内存中是否有区别?内存存储位置不同: 全局变量:存储在静态数据区,程序运行期间始终存在 局部变量:存储在栈区,函数调用时创建,执行结束
2025-07-17
Linux
#Android 面试
谈谈对Context的理解

谈谈对Context的理解

2025-07-16
Android 进阶
#Android 面试
谈谈对Application的理解

谈谈对Application的理解

2025-07-15
Android 进阶
#Android 面试
音视频开发基础

音视频开发基础

FFmpeg 是市面上领先的多媒体框架,能够解码、编码、 转码、复用、解复用、流式传输、过滤和播放人类和机器创建的几乎任何内容。支持所有常见的音视资源,支持跨平台开发。 中文网站:https://ffmpeg.github.net.cn/about.html 英文网站:https://ffmpeg.org/download.html。截止2025年最新的ffmepg版本为7.1.1。2025年
2025-07-03
音视频
#Android
H.264编解码介绍

H.264编解码介绍

为什么要编码?视频本质上就是一张张连续的图片快速播放。假设我们现在有24张联系的图片,将他们在1秒内快速切换,那么就形成了一个1秒的视频。 人眼睛的敏感度有限。一般来说,24到30 FPS之间的帧率已经足够让人感觉到动作的流畅性。但是就算如此,如果播放一个1分钟的1080P视频: 这实在太大了,所以我们需要使用编码的方式去压缩数据。 编码的目的:编码的目的,就是为了压缩。各种视频编码方式,
2025-05-12
音视频
#Android
音视频基础知识

音视频基础知识

音视频基础1. 基础概念什么是音视频技术?音视频技术其实就是音频技术和视频技术的一个统称,在技术处理上,其实音频和视频是要分开处理的。 而且要注意一点,音视频从开始收集数据到最后展示都是离不开硬件设备的,所以在以后的开发过程中,要做好与硬件打交道的心理准备了。 音视频的主要处理过程: 采集。比如从客户端的摄像头、麦克风和本地原始文件等,获得基础的音视频数据; 预处理。在这个阶段其实就是对音
2025-05-08
音视频
#Android
ffmpeg交叉编译

ffmpeg交叉编译

什么是交叉编译?‌交叉编译‌是指在一种平台上编译程序,使其能够在另一种不同的平台上运行的过程。这种编译方式主要用于开发嵌入式系统、移动设备和其他受限环境中的应用程序‌。 交叉编译的基本概念 ‌本地编译‌:在当前的平台上编译程序,生成的代码直接在当前平台上运行。例如,在x86架构的电脑上编译的程序直接在x86架构的电脑上运行‌。 ‌交叉编译‌:在一种平台上编译程序,生成的代码在另一种平台上运行。
2025-05-08
Android
#Android
线程的控制

线程的控制

线程控制POSIX线程库在上面提到,Linux在内核层面没有专门为线程设计一套系统调用接口,但是在应用层为用户提供了一套原生线程库。 pthread线程库就是应用层的原生线程库: 应用层指的是这个线程库并不是系统接口直接提供的,而是由第三方帮我们提供的 原生指的是大部分Linux系统都会默认带上该线程库 与线程有关的函数构成了一个完整的系列,绝大多数函数的名字都是以”pthread_“打头的 要
2025-04-13
Linux
#线程
123…7

搜索

Hexo Fluid