自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (3)
  • 收藏
  • 关注

原创 一种基于状态机的代码设计

“最近在学习 SwiftUI ,写了一个计算器的 Demo。写完后学习并理解到一种代码设计,感觉很有收获,在此记录一下。一句话概括我们将 App 当作一个状态机,状态机的状态决定 App 的界面。首先我们理出 App 都有什么状态?每个状态需要什么样的条件会触发什么样的Action?Action 执行后状态机会进入什么样的次态?理清这些后,根据设计,随着状态机状态的改变,,App ...

2020-03-30 16:12:57 299

原创 写架构设计文档有感

前段时间写了篇架构设计文档,一直想就这件事聊点什么,结果一拖就拖到现在了。算起来这是我第二次写架构设计文档了。一路摸爬滚打,算是有一点点领悟,也不知道对不对,就随便说说。很多人觉得架构文档没有什么写的,或者说不知道要怎么写。其实我觉得这是因为自己对架构、或者对业务需求并不是那么理解。如果真的理解了,再来写这个文档,会发现真的有很多可以写的地方。因为你在明白架构设计文档的目的、作用后,就知...

2020-02-05 11:05:24 1131

原创 音视频:使用 MediaExtractor 和 MediaMuxer 解析和封装 MP4

今天来学习一下如何解析和封装 MP4。这次我们使用的 API 是 MediaExtractor 和 MediaMuxer。一个用来解析,一个用来封装。API 简介MediaExtractor 是什么?顾名思义,MediaExtractor 可以从数据源中提取经过编码的媒体数据。MediaExtractor 不仅可以解析本地媒体文件,还可以解析网络媒体资源。MediaMuxer ...

2020-02-02 13:14:06 1212

原创 音视频:录制和播放 PCM 音频

昨天学习了图片的绘制,今天轮到了音频的采集和播放。Android 在音频的采集上有提供相应的 API,就是 AudioRecord。录音部分AudioRecord 是什么?AudioRecord 是为 Java 应用程序提供管理音频资源功能的类,使应用程序可能通过此类能够获取声音相关硬件所收集的声音。录音是 Input 行为,所以这个功能的实现就是通过读取硬件的数据来完成录音的...

2020-01-31 20:27:23 952

原创 音视频:使用 Camera API 获取 NV21 数据流

之前学习了图片和音频,这次我们尝试使用 Android Camera API 获取到视频数据。简介关于 Camera2 API这次使用的 API 是 Camera2。Camera2 是 Google 在 Android L 之后推出的全新的相机 API。Camera2 支持的功能要比 Camera 丰富很多,但是相应的,也增加了 API 的使用难度。流程图这是使用 Camera2...

2020-01-31 20:26:51 1710

原创 音视频:录制和播放 PCM 音频

昨天学习了图片的绘制,今天轮到了音频的采集和播放。Android 在音频的采集上有提供相应的 API,就是 AudioRecord。录音部分AudioRecord 是什么?AudioRecord 是为 Java 应用程序提供管理音频资源功能的类,使应用程序可能通过此类能够获取声音相关硬件所收集的声音。录音是 Input 行为,所以这个功能的实现就是通过读取硬件的数据来完成录音的...

2020-01-25 22:21:08 484

原创 音视频:使用三种方式绘制图片

由于视频的渲染,本质上就是显示一张一张的图片,所以学习第一步就是学习显示图片。这次我们使用三种不同的方式来显示一张图片。ImageView使用 ImageView 是最简单也是最常用的方式了。context?.let { image.setImageBitmap(decodeStream(it.assets.open("images/test_image.jpeg"))...

2020-01-25 11:02:01 368

WiringPi.zip

使用WiringPi可以驱动树莓派硬件底层,包含GPIO,usb,uart。 使用WiringPi可以驱动树莓派硬件底层,包含GPIO,usb,uart。 使用WiringPi可以驱动树莓派硬件底层,包含GPIO,usb,uart。 使用WiringPi可以驱动树莓派硬件底层,包含GPIO,usb,uart

2019-12-28

UNIX网络编程卷3.pdf

UNIX网络编程(卷一)(第三版)(高清带目录).pdf,邮电出版社

2019-05-10

计算机网络自顶向下课后习题答案及python源码

计算机网络自顶向下课后习题答案及python源码计算机网络自顶向下课后习题答案及python源码

2017-12-28

空空如也

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

TA关注的人

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