首页
学习
活动
专区
工具
TVP
发布

慎独

专栏作者
20
文章
49114
阅读量
26
订阅数
AVPlayer+AudioUnit之播放视频音轨(AVAssetTrack)
VoIP应用中,需要在通话端进行视频播放,同时该视频又不进入到VoIP声音中,避免产生回音现象。
xferris
2020-11-03
2.5K1
微信小程序圆环形进度条组件
看了网上的一些教程,实现圆环用的是两个半圆的旋转,通过overflow: hidden来控制的。 首先绘制底层容器,一个正方形,通过圆角变圆,用来作为未读进度的圆环。然后在上面绘制两个半矩形,在圆形矩形中绘制两个半圆(通过border-left/right/top/bottom加上旋转角来实现,默认的旋转角为135°)。
xferris
2019-12-30
2.7K0
LLDB实战之导出Mac微信备份聊天记录的SQLite密码(SQLCipher加密)
于是查看SQLCipher的API,看到用的是sqlite3_key()和sqlite3_key_v2()这2个函数,在源码里搜索,找到调用,一共有两处,在WCTDatabase+Database.mm文件里
xferris
2019-12-30
5.8K1
html2canvas图片模糊解决方案
页面采用ViewPort方案,解决iOS上的1px的边框问题,采用这个方案,在iOS上渲染出来的Dom会自动乘以devicePixelRatio,因此iOS上的Canvas相当于被直接放大了,没有出现模糊的情况。
xferris
2019-12-30
4K0
UITableView图文混排自动布局滑动优化实战
毫无疑问,使用AutoLayout会明显的比手动计算高度慢,那么我为什么要用AutoLayout呢,因为实在太方便了,而且视图太复杂,产品改的太频繁,手动计算实在工作量太大,维护起来超级麻烦。 而且新的技术出来了,不用不是亏了吗。
xferris
2019-12-30
1.2K0
Kali Linux的Parallels Tools填坑记录
点击安装parallels tools的时候,会有提示框,提示权限问题,如果直接运行install脚本,提示权限不够,官方推荐的做法:
xferris
2019-12-30
3.1K0
AVPlayer初体验之边下边播与视频缓存
上篇文章介绍了AVPlayer的基本播放和解码纹理,本文主要利用AVAssetResourceLoaderDelegate实现AVPlayer的边下边播和缓存机制。 基本原理 AVUrlAsset在请求自定义的URLScheme资源的时候会通过AVAssetResourceLoader实例来进行资源请求。它是AVUrlAsset的属性,声明如下: var resourceLoader: AVAssetResourceLoader { get } 而AVAssetResourceLoader请求的时候会把相关
xferris
2018-06-01
6.9K0
AVPlayer初体验之视频解纹理
AVPlayer是苹果提供的用来管理多媒体播放的控制器,提供了播放所需要的控制接口和支持KVO的属性,支持播放本地和网络视频,以及实时视频流。它一次只能播放一个AVPlayerItem,如果需要切换媒体源,需要使用replaceCurrentItem(with:)函数。如果需要播放多个视频,可以考虑使用AVQueuePlayer。在不同性能的设备上,甚至相同设备的不同iOS版本上,AVPlayer的最大支持清晰度都会不一样,例如在iOS10的某些机器上不支持4k播放,但是到iOS11就支持了,关于测定视频是
xferris
2018-06-01
3.3K0
利用Electron把Web项目打包成桌面应用
1.Electron是基于Node.js开发的,第一步当然要安装node盒npm了,就不多说了。
xferris
2018-06-01
1.7K0
Swift3中的Array内存地址和关联对象的问题
直接用OC的关联对象 空数组 // // ViewController.swift // SwiftRunner // // Created by Ferris on 2018/1/27. // Copyright © 2018年 Ferris. All rights reserved. // import UIKit var objc_associate_ket_array:UInt8 = 0 var objc_asssciate_key_object:UInt8 = 1 extension
xferris
2018-06-01
8040
Unity5.6与Xcode8.3原生工程整合交互
环境 Unity5.6.0f3个人免费版。 Xcode8.3.2。 参考 the_nerd.be上的这篇文章,还带视频。 Unity官方参考文档的iOS部分,这里有很多资料,包括Unity导出Xcode工程的目录结构以及在Unity和iOS交互问题等。 需求 Unity需求较多,Native需求较少:直接在Unity导出的Xcode工程中开发。 Unity需求较多,Native需求只有一两个页面:可以直接将写好的OC代码文件放到Unity的Assets/Plugins/文件夹里。 Unity需求较少,Nat
xferris
2018-06-01
9410
CentOS的SVN服务器搭建和自动部署
花了一个晚上时间折腾svn,网上的教程太乱太杂,还有很多是错误的,终于搞定了,把过程记录下来~ 服务器搭建 安装服务 yum install subversion 配置服务 mkdir -p /data/wwwsvn/myrepo #创建svn仓库的目录 这里可以自定义创建的目录,注意不是网站的文件目录。 svnadmin create /data/wwwsvn/myrepo #与上面的目录相同。 这里要注意该目录不能是空目录。 成功以后会得到以下文件 # ls conf db format
xferris
2018-06-01
1K0
如何理解CGAffineTransform
CGAffineTransform A structure for holding an affine transformation matrix. 以上是它的定义,其实就是一个矩阵的结构体,经常用于动画,形状变换。 包含如下参数: struct CGAffineTransform { CGFloat a; CGFloat b; CGFloat c; CGFloat d; CGFloat tx; CGFloat ty; }; typedef struct CGAffineTransform CGAf
xferris
2018-06-01
1.1K0
如何在Github上给别人的项目贡献代码
以开源库YCXMenu为例。 需求 原开源库的菜单item选中效果是这样的: 我发现这个蓝色的选中颜色并不是很适合我正在做的项目。查看源码,发现没有相关的接口。 在项目主页上看了下,也有
xferris
2018-06-01
1.9K0
Python科学计算和绘图入门
用到的相关模块 scipy numpy matplotlib mayavi 模块安装 主要就是这四个模块,如果要安装的话,前三个可以直接使用sudo pip install xxx来安装。对于mayavi,安装起来比较复杂,主要是vtk的安装,我安装了几次都没有成功,不管是使用ccmake还是使用independent installer都没法用,在尝试了一个下午之后,发现了python科学计算的神器Canopy。 Canopy是Python科学计算的集成环境,里面集成了你所知道,你所需要的所有pytho
xferris
2018-06-01
1.9K0
UITableView实现QQ好友列表实战(动态插入删除Cell)
实现选择 网上大部分的教程,都是基于修改section的hearderView来实现的,但是看QQ的好友列表,style是grouped,显然不是使用section的header来处理。使用section的hearderView来实现的,十分简单,网上也有很多源码和教程,只要刷新一下dataSource然后调用就可以了。不在本次讨论的范围之内。 - (void)reloadSections:(NSIndexSet *)sections 这次我直接使用grouped的cell来做父cell,点击后展开相应的子
xferris
2018-06-01
1.3K0
UIViewController生命周期分析
做一个实验,通过实验来分析viewController的生命周期。 和生命周期几个相关的方法 - (void)viewDidLoad { [super viewDidLoad]; NSLog(@"FirstVC viewDidLoad"); } -(void)viewWillAppear:(BOOL)animated { [super viewWillAppear]; NSLog(@"FirstVC viewWillAppear"); } - (void)didRe
xferris
2018-06-01
7560
Unity第三人称视角解决方案
镜头跟随 在实现第三人称时,镜头问题困扰了我一整天,参考了官方的脚本 SmoothFollow,虽然能实现镜头跟在人物身后,但是发现几个问题。 脚本实现太繁琐,有几个属性目前根本就用不到。 人物旋转时不能控制摄像机跟着旋转,也就是说,不能让镜头一直跟在人物身后。 脚本代码如下: public class SmoothFollow : MonoBehaviour { // The target we are following [SerializeField] private Transfo
xferris
2018-06-01
2.5K0
Unity自动寻路入门指南
Unity自动寻路指南 主要参考Naviation这个文档。本文不关注自动寻路的原理,如有需要可以在这里查看nav-InnerWorkings 一些名词 Agent:绑定在人物身上的,用于实现自动寻路的,看上去就像一个collision。 NavMesh:Agent可以在NavMesh在行走。 Off-Mesh Link:相当于传送门。 NavMesh Obstacle:障碍物。 创建NavMesh 标记为Navigation Static 所有用于成为NavMesh的网格都必须被指定为Navigat
xferris
2018-06-01
1.4K0
Unity项目目录架构和命名规则
文件夹命名规则 参考Special folder names和Special Folders and Script Compilation Order Assets 主文件夹,包含所有工程需要用到的资源。 Editor 所有在Editor和它的子文件夹的脚本,都不会作为运行期脚本被编译,而是作为动态添加Unity编译器功能的脚本来编译。在该文件夹和其子文件夹的脚本不能被添加到GameObject上。 Editor文件夹可以被放置在Standard Assets Pro Standard Assets Pl
xferris
2018-06-01
4.3K0
点击加载更多
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档