首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

AVFoundation 框架初探究(三)

这一章最后说的居然是 AVAssetExportSession ----       AVAssetExportSession 这个我们再前面说过,在前面拍摄完视频之后我们就利用这个 AVAssetExportSession...压缩视频。...AVAssetExportSession 用于将AVAsset 内容根据导出预设条件进行转码,并将导出资源写到磁盘中,AVAssetExportSession 提供了多个功能来实现将一种格式转换为另一个格式...对象       3、其实前面的里可以理解成导入设置,接下来就是导出设置,调出的地址outputURL以及outputFileType导出的格式       4、接下来就是利用exportAsynchronouslyWithCompletionHandler...方法导出了,导出的数据会在改方法的Block中回调       5、最后就是在回调的block中根据AVAssetExportSession对象的status属性去判断压缩是否成功,进而进行自己想要的操作

71770
您找到你想要的搜索结果了吗?
是的
没有找到

AVFoundation 框架初探究(三)

这一章最后说的居然是 AVAssetExportSession ----       AVAssetExportSession 这个我们再前面说过,在前面拍摄完视频之后我们就利用这个 AVAssetExportSession...压缩视频。...AVAssetExportSession 用于将AVAsset 内容根据导出预设条件进行转码,并将导出资源写到磁盘中,AVAssetExportSession 提供了多个功能来实现将一种格式转换为另一个格式...对象       3、其实前面的里可以理解成导入设置,接下来就是导出设置,调出的地址outputURL以及outputFileType导出的格式       4、接下来就是利用exportAsynchronouslyWithCompletionHandler...方法导出了,导出的数据会在改方法的Block中回调       5、最后就是在回调的block中根据AVAssetExportSession对象的status属性去判断压缩是否成功,进而进行自己想要的操作

1.1K30

多媒体-图片、音频、视频压缩

---- 图片压缩 我们都知道苹果手机拍照后的照片格式的是JPG(全称是 JPEG),手机截图的格式是PNG的 **压:是指文件体积变小,但是像素数不变,长宽尺寸不变,那么质量可能下降。...返回的数据大小为140K ,但更改压缩系数为0.5再读取数据,返回的数据大小只有11K #两者差了14倍 ,大大压缩了图片的数据量,而且清晰度并没有相差多少,图片的质量并没有明显的降低。...因此, 在读取图片数据内容,建议优先使用UIImageJPEGRepresentation, 并可根据自己的实际使用场景,设置压缩系数,进一步降低图片数据量大小。...UIGraphicsBeginImageContext(size); // 绘制改变大小的图片 [image drawInRect:CGRectMake(0, 0, size.width, size.height)]; // 当前...以2s为例 未经压缩的视频大小有 8968k 而经过压缩的视频长度有 240k,俩者差了 40多倍 # iOS录制的视频是mov格式的,安卓和PC不支持,因此要转换成MP4,并且要压缩。

1.8K10

高性能且灵活的 iOS 视频剪辑与特效开源框架 – VideoLab

让我们来看下当前已有的一些Feature,当前已经支持了高性能实时剪辑与导出,高自由度组合视频、图片、音频,支持音频音高设置、音量调节,支持CALayer矢量动画及复杂的文字动画,支持关键帧动画,支持类似于...整体工作流如图所示,接受指令,把原视频帧通过合成器,生成合成后的帧,输出给播放器或者导出器。让我们聚焦到合成器,我们有多个原始帧,需要处理并输出新的一帧。...从前面的AVFoundation 介绍可知,我们需要生成AVPlayerItem与AVAssetExportSession 用于播放与导出。...图中能看到VideoRenderLayer1和VideoRenderLayer5共用的一个视频轨道,这是因为苹果对视频轨道有限制,我们需要尽量的重用,每条视频轨道对应一个解码器,当解码器数量超出系统限制...添加音频轨道的第二步,将AudioRenderLayer视频轨道添加到AVComposition中,对于RenderLayer的Source包含音频轨道的AudioRenderLayer,Source

1.5K20

AVFoundation框架解析看这里(1)- 概论

例如: 如果你只是想播放视频,那么应该使用AVKit框架 如果你只需要最少的格式控制录制视频,请使用UIKit框架 基本信息速览 ?...AVFoundation.AVAssetDownloadStorageManager import AVFoundation.AVAssetDownloadTask import AVFoundation.AVAssetExportSession...AVFoundation.AVTime import AVFoundation.AVVideoSettings 简单说明: AVAnimation动画类 AVAsset资产类可通过这个类获得图片、文件、媒体库 AVAssetExportSession...资源导出会话:是一个通过资源文件对象去创建一个指定预设的输出的转码内容会话 AVAssetImageGenerator用于截取视频某帧的画面 AVAssetReader资源读取音视频数据 AVAssetReaderOutput...读取资源文件输出类 AVAssetResourceLoader资源文件的加载器会AVURLAsset和代理方法得到加载的内容 AVAssetTrack资源的分轨 AVAssetTrackGroup这里面封装了一组资源的分轨

1.5K21

老司机带你走进Core Animation 之CAShapeLayer和CATextLayer

因为写这个demo没有考虑到做暂停。 那这个怎么做呢? 把它分成两部分吧,一部分外面不变那部分,一部分中间变那部分。 这时候我们就要考虑如何画出一个空心的图层。...这里介绍一下分别是如何判断的 kCAFillRuleNonZero 该点向任意方向画一条射线,若顺时针穿过该射线的条数与逆时针穿过该射线的条数不相等,则表示该点在区域内部,否则在外部。...lineDashPhase这个属性是告诉系统多少开始计算这个距离。比如上图中第一段实现的距离明显小于5,其实他是2,因为我们3开始计算,5 - 3就剩2了。...---- CATextLayer 相比CAShapeLayer,可能CATextLayer的用途更加单一一些,他可以用来展示文字。...所以老司机决定用CATextLayer来实现这个效果。 先来讲一下CATextLayer的基本使用方法吧。 他的几个属性都是见名知意,就是跟label相差无几的属性。

1.4K20

视频知识小结

具体而言,按时间顺序走每一帧比较该帧用P编码和B编码的视觉误差和复杂度何者更大,根据某些公式推导出此处应该用何种帧类型,再向后移一帧;如果直到bframes规定的值都未出现P,则强制插入一帧P。...人耳听觉的掩蔽效应:当一个强音信号与一个弱音信号同时存在,弱音信号将被强音信号所掩蔽而听不见,这样弱音信号就可以视为冗余信号而不用传送。...音频均衡等; AVFoundation.framework:提供一个精简的音乐播放类,可以播放所有IOS支持的音频; OpenAL.framework:提供3D音效播放; AVFoundation相关 AVAssetExportSession...AVAssetExportSession类可以把AVAsset对应的源文件,转换成预先设置的格式。...exportPresetsCompatibleWithAsset 可以导出可配置格式的列表; Error相关 AVAssetWriter AVAssetWriter经常报出错误 AVAssetWriter

1.5K71

iOS Core Animation:Advanced Techniques

CATextLayer来实现一个UILabel //create a text layer CATextLayer *textLayer = [CATextLayer layer]; textLayer.frame...我们在第七章的例子中就已经用到过kCATransitionPush,它创建了一个新的图层,边缘的一侧滑动进来,把旧图层另一侧推出去的效果。...coverView removeFromSuperview]; }]; } @end 这里有个警告:-renderInContext:捕获了图层的图片和子图层,但是不能对子图层正确地处理变换效果,而且对视频和...速率由以下公式计算而来: velocity = change / time 上面的等式假设了速度在整个动画过程中都是恒定不变的(就如同第八章“显式动画”的情况),对于这种恒定速度的动画我们称之为“线性步调...”,而且技术的角度而言这也是实现动画最简单的方式,但也是完全不真实的一种效果。

1.8K30

IDEA同款数据库管理工具,提示太全了,用起来贼香!

下载 直接Jetbrains的官网下载即可,下载地址:https://www.jetbrains.com/datagrip/ ?...外观配置 有时候我们的电脑屏幕过大,需要调整下字体大小,要不然看起来太小不适应,可以修改下下面两个配置。...编辑器字体大小配置,通过软件设置中的Editor->Font配置可以调整编辑器字体大小。 ? 创建数据源 使用DataGrip操作数据库,我们需要首先创建数据源。...新建可以添加表中的列,并且可以预览对应的SQL脚本; ? 数据导出功能,可以将数据导出为CSV、Html、Excel、JSON等格式。 ?...当我们使用INSERT INTO语句,可用直接生成所有需要插入的列名; ? 当我们把鼠标悬停在函数上方,会显示非常详细的函数使用说明; ?

1.8K30

OriginPro绘图精准导出到Word

注意观察左上角字体大小设置,字号是一直没变的。 那么问题就来了,对于同一张图,在缩小的时候和放大的时候分别导出到Word会一样吗?显然,我们不想因为Origin中的缩放来导致Word中图形的变化。...在Graph设置中,设置Fixed Factor=1,这样不管我们如何在Origin中缩放图片,导出到Word的时候,字号都是不变的。...解决方法: 设置系统变量 设置EMS=0 导出为图片格式 第一步:打开导出对话框; 第二步:导出设置; 将图形按原比例输出为图片 页面设置好后,点击Save to Graph可以将当前页面的设置全部保存为默认...导入源格式 第一步:打开复制页面选项; 第二步:选择合适的复制比例,Ratio=50%意味着Origin中的图直接复制到Word中,图片的高度、宽度、字号全部缩小一半;Margin Control...= Tight可以去除图形周围的白边; Tips: 使用此种方法导出,注意一点:Origin中图形宽度×导出Ratio<Word版心宽度,大于的话导出到Word之后会自动进行压缩。

2K10

腾讯开源了一款 Markdown 编辑器,易扩展、功能全,很好用!

易于拓展 当 Cherry Markdown 编辑器支持的语法不满足开发者需求,可以快速的进行二次开发或功能扩展。...特性 语法特性 图片缩放、对齐、引用 根据表格内容生成图表 字体颜色、字体大小 字体背景颜色、上标、下标 checklist 音视频 多种模式 双栏编辑预览模式(支持同步滚动) 纯预览模式 无工具栏模式...(极简编辑模式) 移动端预览模式 功能特性 复制 Html 粘贴成 MD 语法 经典换行&常规换行 多光标编辑 图片尺寸 导出长图、pdf float toolbar 在新行行首支持快速工具栏 bubble...toolbar 选中文字联想出快速工具栏 功能截图 支持 Markdown 语法 表格支持 图标 多光标批量编辑 安装 通过 yarn yarn add cherry-markdown

86330

一款腾讯开源 Markdown 编辑器,易扩展、功能全!

易于拓展 当 Cherry Markdown 编辑器支持的语法不满足开发者需求,可以快速的进行二次开发或功能扩展。...特性 语法特性 图片缩放、对齐、引用 根据表格内容生成图表 字体颜色、字体大小 字体背景颜色、上标、下标 checklist 音视频 多种模式 双栏编辑预览模式(支持同步滚动) 纯预览模式 无工具栏模式...(极简编辑模式) 移动端预览模式 功能特性 复制 Html 粘贴成 MD 语法 经典换行&常规换行 多光标编辑 图片尺寸 导出长图、pdf float toolbar 在新行行首支持快速工具栏 bubble...toolbar 选中文字联想出快速工具栏 功能截图 支持 Markdown 语法 表格支持 图标 多光标批量编辑 安装 通过 yarn yarn add cherry-markdown

74410

H.264学习笔记

只在编码器认为需要更新参数集的内容,才会发出新的参数集。 NALU根据nal_unit_type的类型,可以分为:VCL的NAL单元和非VCL的NAL单元,详情如下: ? ?...当我们需要原始H.264码流包装成CMSampleBuffer,我们可以按照以下步骤: 1、替换头字节长度; 2、用CMBlockBuffer把NALUnit包装起来; 3、把SPS和PPS包装成...更新SPS和PPS 5、采集摄像头数据 摄像头采集数据,并用AVAssetWriter写入movieFile ?...摄像头采集并写入movieFile 摄像头采集数据,并VideoToolbox硬编码,获取压缩后的码流 按照显示顺序来,添加显示时间; 时间只能加不能减,不能重复; 异步的请求;(H.264的帧间预测...AVAssetExportSession 优先采用多通道编码,不行再使用单通道编码; Multi-passes的介绍 其他零碎的知识 视频码率是视频数据(视频色彩量、亮度量、像素量)每秒输出的位数。

1.5K51

Web正文字体发展简史

这种浏览器的默认字体大小太大的感觉(在 Oliver 的文章于2006年发表就非常明显),这在某种程度上是出于文化原因,但也有一些技术原因。...Jeremy 使用 CSS锁 根据视口宽度在两个边界之间更改字体大小:100% 和 250%。320像素(使用默认浏览器设置)的字体大小为 16px。...就我个人而言,我更喜欢对字体大小进行有限的调整。我喜欢100%的小屏幕开始,然后在大屏手机或平板电脑上使用(比如 110% 或 115%),在笔记本电脑和大屏幕上使用可能达到 125%。...设备的工作不就是确保字体大小 100% 是可读的吗理论上讲,CSS像素应该匹配一个定义为视角的“参考像素”: 参考像素是设备上一个像素的视角,像素密度为 96dpi,与阅读器的距离为一臂长。...特别是硬件供应商更有兴趣销售针对视频分辨率(1080p、4K)进行优化的屏幕,即使它会让整个 UI 变得非常小。 理论上讲,浏览器制造商应该能够改变 16px 的默认字体大小以适应现代设备。

1.1K10
领券