首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
wangzzzzz47400
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
22
文章 21
沸点 1
赞
22
返回
|
搜索文章
最新
热门
仿抖音特效相机
项目是仿照抖音的特效相机,基本功能是使用相机拍摄短视频,然后在视频的基础上添加一些视频特效,项目源码已上传github:AwemeLike。 由于项目播放器的解码部分是由AVAssetReader完成的,而AVAssetReader并不适合用来做这种可以重置播放进度的实时视频播…
仿抖音特效相机之视频播放器实现
本文是讲解特效相机中的视频播放器的实现,完整源码可查看AwemeLike。 可以看到,播放一个视频文件需要经过解码、音视频同步、音视频处理等步骤,然后才能渲染出来。 相对于一般的播放器,视频编辑器的播放器需要修改它的音视频数据,也就是多了音视频处理这个步骤。所以我们的播放器不仅…
仿抖音特效相机之大眼瘦脸
本文是讲解特效相机中的大眼瘦脸的实现,完整源码可查看AwemeLike。 要实现瘦脸大眼,首先需要获取到人脸特征点,在本项目中使用的是Face++的人脸识别库,它可以获取到106个人脸特征点,接着再通过变形算法就可以实现了。 1. 瘦脸 textureCoord表示当前要修改的…
iOS动态库的使用
3.1. 添加为依赖库-启动时加载 3.2. 运行时加载 说到动态库,就不得不提静态库。静态库可以看做是一个具有特定功能的代码块,如果app中引用了静态库,则在编译时会将静态库直接复制到app的可执行文件(也就是mach-o)中。 使用静态库会导致mach-o文件过大,而mac…
Fastlane证书管理(二):match
1. 前言 首先,从:git_url指定的git仓库中获取cert和profile,如果没有,则从AppleID账号中获取。 当从AppleID账号中获取profile时,会强制创建一个新的来使用。具体过程可查看上一节cert和sigh。 2. 内部流程 macth特别适合在一…
Fastlane证书管理(一):cert、sigh
1. 前言 cert、sigh和match是Fastlane中的三个Tool,他们都是与证书相关的工具。cert的作用是获取签名证书或删除过期的证书;sigh的作用是管理配置文件(provisioning profile),比如创建新的、修复过期的、删除本地的等;match的主…
Fastlane(二):结构
在终端中执行fastlane lane_name之后,fastlane会去执行Fastfile中定义的同名lane,这个是如何实现的。 本文按照解析参数这一主线,尝试解释fastlane的执行逻辑和内部结构。 在开始正文之前,有一些概念和名称需要解释一下,在之前的文章中,已经提…
Fastlane(一):用法
fastlane是一个自动化构建工具,主要包含测试、打包、发布等功能,它内部是由ruby实现的,是一款自动化非常高的脚本工具。 1. 常规使用 下面是一个Fastfile文件中的代码,它的作用是打包程序。 有了这个Fastfile文件之后,只需要在终端中执行cd project…
组件化工具BeeHive(二):组件化实践
使用BeeHive来进行项目组件化,其实是使用BeeHive来构建一个中间层,通过中间层来解耦各个模块。在文章iOS组件化通用工具浅析有简单介绍过BeeHive的一些组件化思路,本文将更多的从使用者的角度来分析BeeHive。 1. 用法 1.1. 创建protocol pro…
组件化工具BeeHive(一):事件分发
BeeHive是阿里开源的一个组件化框架工具,其内部是使用Spring框架Service的理念来实现模块解耦的,实际上就是使用protocol-class的方案。另外,在组件化的基础上,BeeHive还增加了一个事件分发的功能来配合使用。 1. 概览 2. 事件分发的作用 3.…
下一页
个人成就
文章被点赞
139
文章被阅读
43,634
掘力值
802
关注了
18
关注者
82
收藏集
5
关注标签
21
加入于
2018-06-12