Home

Compute Media 视频原理

Compute Media 视频原理 图像 三原色: RGB 屏幕显示原理: TV CRT; PC CRT; XO-1 LCD; LCD 屏幕由像素点排列组成, 像素由3个发光子像素点组成 图像的数值表示 RGB表示方式 浮点表示: 0.0~1.0 整数表示: 0~255或者00~FF, RGBA_8888 RGB_565 RGBA_8888 1280x720计算图像大小: 1280 * 720 * 4 = 3.516MB 位图(bitmap)在内存中所占用的大小 YUV表示方式 视频帧裸数据一般使用YUV表示 Y: Luma, 灰阶值 U, V: Chroma, 色度, 分为Cr(色调)和Cb(饱和度) Cr: RGB输入信号红色部分与RGB信号亮度值之间的...

Read more

Compute Media 音频原理

Compute Media 音频原理 声学原理 声音是波, 介质振动产生声音, 不同介质, 传播速度和波形不一样. 频率(f): 越高, 波长就越短, 代表音阶 振幅(A): 指振动的物理量可能达到的最大值, 代表声音的响度, 能量大小的反映 波形: 表示信号的形状, 代表声音的音色, 本质是谐波 传播速度(V): 声音在介质中移动的速度 波长(λ): 沿着波的传播方向,相邻两个振动位相相差2π的点之间的距离 波的周期(T): 完成一次振动需要的时间 相位: 特定的时刻在它循环中的位置, 描述信号波形变化的度量 f = 1/T f = V/λ λ = uT 声压(pa): 声压就是大气压受到声波扰动后产生的变化,即为大气压强的余压,它相当于在大气压强上的叠加一个声波扰动引起...

Read more

Build 持续集成

Build 持续集成 Reference Fastlane入门:介绍篇 iOS持续集成:Xcode Server、Jenkins、Travis和fastlane Jenkins+fastlane的自动化搭建之路

Read more

Android Audio & Video

Android Audio & Video MediaPlayer issues prepareAsync called in state 8 MediaPlayer.prepare()调用多次, 如果使用MediaPlayer.create工厂方法, 那么create 方法内已经调用prepare()方法 Error (1,-2147483648) 前面一个1表示MEDIA_ERROR_UNKNOWN, -2147483648对应十六进制0x80000000 定义frameworks/native/include/utils/Errors.h, 表示错误很难定位. 一般是因为视频格式不支持. Reference ...

Read more

Flutter package

Flutter package Using packages Using Packages Package versioning flutter 使用pub管理包: pub-cn pub dependencies url_launcher: ^5.4.0 配置pub管理 plugin1: path: ../plugin1/ 配置本地库 plugin1: url: git://github.com/flutter/plugin1.git 配置git库 plugin1: url: git://github.com/flutter/plugin1.git 配置git库 path: packages/package1 ...

Read more

Lang 语言标准

Lang 语言标准 C/C++ K&R C => ANSI C = IOS C History of C History of C++ C: C90 C99 C11 C17 Java Java (programming language) Free Java Guide OpenJDK Java Community Process Kotlin Kotlin Python 2020开始 Python2.0 不再维护 Python Dart Dart Javascript ECMAScript EC6.0 Objective-c About Objective-C Swift Welcome to Swift.org Refe...

Read more

Lang 编程范式

Lang 编程范式 declarative vs imperative programming declarative - 声明式编程 what to do, not how to do it imperative - 命令式编程 how to do it, not what to do 不同抽象级别上使用的编程范式, declaretive 比 imperative 更高等一些, 只描述有哪些 对象, 并且这些对象做什么. 背后会有一个解析器, 解析描述语句, 所以性能不太好. imperative 更贴近底层, 关注一个算法或者一个问题, 一步步的解的步骤. Procedural programming paradigm 过程式编程, 注重...

Read more

Lang MVC系统设计模式

Lang MVC系统设计模式 MVC: Model-View-Controller MVA: Model-View-Adapter MVP: Model-View-Presenter MVVM: Model-View-ViewModel 使用MVC系列设计模式, 使用在用户界面开发上. 可以把视图, 模型与控制分离开, 实现松 耦合设备, 方便重用, 测试与维护 MVC Model: 模式的中心组成部分. 它是应用程序的动态数据结构, 独立于用户界面. 它直接管理应用程序的数据, 逻辑和规则. View: 信息的任何表示形式,例如图表,图表或表格。可以使用同一信息的多种视图 ,例如用于管理的条形图和用于会计的...

Read more