FFmpeg
FFmpeg
./libavfilter/allfilters.c(ffmpeg -filters) - 声明支持的过滤器
./libavdevice/alldevices.c(ffmpeg -devices) - 声明支持的平台设备
./libavformat/allformats.c(ffmpeg -formats) - 声明支持的媒体格式
./libavcodec/allcodecs.c(ffmpeg -codecs) - 声明支持的编解码格式
输入和输出设备 - FFmpeg Devices Documentation
ffmpeg -f avfoundation -list_devices true -i “”
默认音频采样参数
ff...
Linux Redirection
Linux Redirection
| type | symbol | num | remark |
|--------|--------|-----|--------------|
| output | > | 1 | overwritten |
| output | >> | 1 | add more |
| input | < | 0 | |
| errout | > | 2 | |
| errout | >> | 2 | |
ls Documents ABC&g...
iOS SwiftUI
iOS SwiftUI
支持情况
iOS13.0 + Beta
macOS10.15 + beta
tvOS 13.0+ beta
watchOS 6.0+ beta
打开SwiftUI预览, Editor > Canvas, 可以由代码和Inspector 控制 (Command-click view).
Preview
Xcode’s canvas 可以自动识别和显示当前编辑的View, 返回一个View, 可以自定义返回View
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}...
Swift Memory
Swift Memory
Automatic Reference Counting (ARC), Swift使用ARC管理对象.
Strong Reference Cycles for Closures
Resolving Strong Reference Cycles for Closures
weak reference
unowned reference
都不会ARC计算
区别:
* weak 修改可选类型, 当对象被释放会设置nil
* unowned 一直需要有值, 当对象被释放后再访问, 会有异常
Strong Reference Cycles for Closures
闭包中的强引用循环, 当对象得到一个闭包, 闭包中引...
Git
Git
author 作者: 文件修改人
committer 提交者: 文件提交人
git 特点
直接记录快照, 而非差异比较
近乎所有操作都是本地执行(git 会把所以版本信息拉取到本地)
时刻保持数据完整性(核验和checksum, SHA-1 40个十六进制字符)
多数操作仅添加数据
文件的三种状态(committed, modified, staged)
Git目录
使用git clone 和 git init 会生成.git目录, 添加--bare选项, 那么本身就是.git目录, 没有checkout出任何文件.
.git目录保存元数据和对象数据库.
工作目录, 从git目录中取出某个版本的所有文件和目录. 位与其中...
iOS 权限
iOS 权限
判断当前权限是否授限
#import <AVFoundation/AVFoundation.h>
NSString *mediaType = AVMediaTypeVideo;//读取媒体类型
AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:mediaType];//读取设备授权状态
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
NSString *errorStr = @"...
463 post articles, 58 pages.