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

AVFoundation 框架介绍

中多媒体框架之一,基于 Object-C/Swift 接口,可以用来播放,编辑,重新编码音视频文件。...我们可以通过 AVCaptureSession 输入设备实时捕捉处理图像信息。下面是 iOS 系统中 AVFoundation 媒体架构: ? 通常,我们使用高级接口就可以满足我们大部分需求。...AVFoundation 一般用于对媒体文件(Asset)进行编辑,在短视频场景下用较多。...与系统相机 UI 产生不同结果,例如 RAW 格式照片,深度图或需要自定义视频元数据 从采集设备 (Capture device) 实时获取视频像素或音频数据。...要开启实时捕获,需要实例化 AVCaptureSession 对象并添加合适输入和输出。 下面是如何配置捕获设备用以录制音频。

3.2K10

iOS开发常用之网络、网页

苹果提供过一个可达性类,用于检测网络状态但是该类由于年代久远,并不支持ARC该项目旨在提供一个苹果可达性类替代品,支持ARC和块使用方式iOS网络监测如何区分2,3,4G Reachability.swift...- 用于替换苹果Reachability类,可以方便地检测当前是否联网以及具体联网状态。...RealReachability - iOS实际网络连接状态检测,解决“如何判断设备是否真正连上互联网?而不是只有网络连接”问题。...QRCatcher - 一个简洁美观二维码扫描应用,iOS学习:AVFoundation视频流处理 - 二维码扫描。...ZipArchive - 适用于iOS和OS X解压库。 Duration.swift - 测量代码片段执行时间工具类库(Swift)。

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

iOS开发常用之摄像照相视频音频处理

EZAudio - EZAudio是一个iOS和OSX上简单易用音频框架,根据音量实时显示波形图,基于Core Audio,适合实时低延迟音频处理,非常直观。中文介绍,官网。...IPDFCameraViewController - 支持相机定焦拍摄,滤镜,闪光,实时边框检测以及透视矫正功能,并有简单易用API。...IOS录音和播放功能demo - 比较完整ios录音和播放功能实现。 CameraManager - 相机管理封装类库。看着极好用样子---- swift。...Eleven - Eleven Player - 一个使用FFmpeg实现简单强大iOS开源播放器。 mobileplayer-ios.swift - 很不错高度可定制播放器项目。...BMPlayer.swift - 基于AVPlayer使用Swift封装视频播放器,方便快速集成,支持横屏,竖屏,上下滑动调节音量,屏幕亮度,左右滑动调节播放进度。

2.7K51

ARKit

SDK iOS 11.0+ 概观 一个增强现实(AR)描述了用户体验,从设备摄像头方式,使这些元素似乎居住在现实世界中添加2D或3D元素到实时取景。...在iOS 12中,当您在应用程序中使用USDZ文件时,系统会为3D对象提供AR视图,或者在Web内容中使用带有USDZ文件Safari或WebKit。...快速拍摄:为增强现实创造游戏 了解Apple如何为WWDC18构建精选演示,并获得使用ARKit,SceneKit和Swift制作自己多人游戏技巧。...扫描和检测3D对象 记录现实世界对象空间特征,然后使用结果在用户环境中查找这些对象并触发AR内容。...class ARObjectScanningConfiguration 一种配置,使用后置摄像头收集高保真空间数据,用于扫描3D对象以便以后检测

2.2K20

2020年6月最新iOS面试题总结(答案篇)

总结不易,希望这份参考答案能对你有所帮助,如果想持续关注我,欢迎订阅微信公众号:iOS成长之路。 面试题及参考答案 Swift 1、Swift中struct和class有什么区别?.... */ }; isa 指针,所有对象都有该指针,用于实现对象相关功能。...,指向自动释放池栈顶位置,它作用就是用于标记当前自动释放池需要释放内部对象时,释放到那个地方结束,每次入栈时它用于确定添加位置,然后再次移动到栈顶。...利用Runloop,实时计算 kCFRunLoopBeforeSources 和 kCFRunLoopAfterWaiting 两个状态区域之间耗时是否超过某个阀值 子线程检测,每次检测时设置标记位为...9、类似微博视频列表,滑动停留播放,如何实现? 这个主要就是检测contentOffset和屏幕中间位置,设置一些边界条件,处理滑动过程中切换行为。 10、使用python做过哪些事?

9K41

日本中二少年教你用姿势估计把自己变成3D人物,动作实时同步,iOS上也能实现

上面的动图就是针对动作实时估计和生成。 不过可惜是,这个项目目前还只支持单人动作,不能实现双人对打。...由于OpenCV输出是通过Mat对象返回,需要准备四个数组。...在iOS上也能实现3D姿势估计 去年日本黄金周,青柳君第一次接触机器学习,也一直在3D姿势估计这块有所钻研。 今年3月份,他在iOS上实现了3D姿势估计。...将模型导入Mac,使用XCodeiPhone版本,通过实时捕获后方摄像机图像执行3D估计。 XS Max能以大约40fps速度运行,但是,一段时间,手机会变热,速记也会下降至约30fps。...据了解,人体跟踪器在源视频中能够检测到人体运动,胳膊、躯干和腿部18个关节点将生成相关跟踪点,然后将跟踪点转移到动画角色上,利用该功能,快速创建2D人物动画根本不在话下!

1.2K20

微信团队分享:详解iOS版微信视频号直播中因帧率异常导致功耗问题

如下图所示 PerfDog 数据显示在 13 pro max上直播点赞期间 FPS 直奔120: 正常情况下,视频号直播里大部分主播开播流基本都是30fps 以内,也就是正常情况下我们只需要维持30fps...6、我们优化方案 6.1概述 从 iOS15开始苹果新增加了 preferredFrameRateRange api 可用于设置相应动画或timer刷新频率,我们就可以基于该方案去改造相应动画即可。...(本文已同步发布于:http://www.52im.net/thread-4507-1-1.html) 10、相关文章 [1] 淘宝直播技术干货:高清、低延时实时视频直播技术解密 [2] 技术干货:实时视频直播首屏耗时...400ms内优化实践 [3] 七牛云技术分享:使用QUIC协议实现实时视频直播0卡顿!...[5] 浅谈实时视频直播中直接影响用户体验几项关键技术指标 [6] 移动端实时视频直播技术实践:如何做到实时秒开、流畅不卡 [7] 实现延迟低于500毫秒1080P实时视频直播实践分享 [8]

28400

iOS面试资料参考答案总结

总结不易,希望这份参考答案能对你有所帮助,如果想持续关注我,欢迎订阅微信公众号:iOS进阶宝典。 面试题及参考答案 Swift 1、Swift中struct和class有什么区别?.... */ }; isa 指针,所有对象都有该指针,用于实现对象相关功能。...,指向自动释放池栈顶位置,它作用就是用于标记当前自动释放池需要释放内部对象时,释放到那个地方结束,每次入栈时它用于确定添加位置,然后再次移动到栈顶。...利用Runloop,实时计算 kCFRunLoopBeforeSources 和 kCFRunLoopAfterWaiting 两个状态区域之间耗时是否超过某个阀值 子线程检测,每次检测时设置标记位为...9、类似微博视频列表,滑动停留播放,如何实现? 这个主要就是检测contentOffset和屏幕中间位置,设置一些边界条件,处理滑动过程中切换行为。 10、使用python做过哪些事?

1.5K40

Core ML简介及实时目标检测及Caffe TensorFlow coremltools模型转换

GoogleTensorflow早已支持在Android上运行,苹果在iOS8推出Metal可以用于访问GPU,使用Metal就可以实现机器学习本地化运行,但学习成本太高,在iOS11中推出Core...可以预见是,本地化模型必然是发展趋势,对于实时性较高应用,如:目标检测、自然场景文本识别与定位、实时翻译等,如果通过网络传输到后台分析,网络延迟就足够让用户放弃这个App了,比如微信扫一扫中有翻译功能...接下来做一点有趣尝试,通过手机摄像头实时获取拍摄数据,然后去实时检测目标并给出分类结果。...imageBuffer); //实时目标检测视图类,需要实现一个协议用于获取摄像头输出数据 @interface RealTimeDetectionViewController() <AVCaptureVideoDataOutputSampleBufferDelegate...,有不同输入图像大小 @property (nonatomic, assign) CGSize targetSize; //一个框,类似于扫描二维码,提示在这个框内图像会被用于实时检测 @property

3K70

U3D激发拍照新活力,Camera360优化之旅

Camera360 iOS技术负责人唐雷在LiveVideoStack Meet上与我们分享了Camera360在iOS端新玩法探索尝试、技术实现以及遇到坑和优化方案。...时间间隔也是人脸识别中重要一环,现在手机吐原始帧Buffer时满帧是30帧,我们内部满帧是24帧,而当已经识别到人脸后,是没有必要每一帧都再去做检测,因为人脸信息大致一样,我已经可以保证快速切换模式...,因此可以调整检测时间间隔,比如设置为40帧检测一次,当取景页面中没有人像时则调整为10帧检测一次,保证当重新出现人像时可以快速上脸。...短视频探索 在做短视频探索中我们也发现了一些坑,首先是我们采取方案是边录边写,也就是原始buffer会通过SDK处理后进入队列,我们会同步对处理好Buffer开始写视频,最后再和音频合并。...而当我们后期接入Swift后发现加剧了这个问题,在Xcode8中Build setting里Enable Code Coverage这个设置应该默认Release是No,但是接入Swift会导致设置失效

1.4K20

英伟达实时路径追踪研究进展

本文是GDC2022大会Nvidia关于实时光线追踪报告,概述了NV在Real-time Path Tracing最新研究成果和性能优化。下面是我观看该视频心得总结。...另一个场景是“Paris Opera Housing”,这个场景特点是存在50万自发光以及30个聚光灯,体现是处理many lights能力。这两个场景渲染帧数都是在30FPS以上。...最后,作者也分析了一帧中各个部分所消耗时间,比如构建V-Buffer,BVH,光路渲染,降噪,后处理等。...然后,作者介绍了一些Coding方面的工作,重点介绍了SLANG这个shader语法,个人理解该语言提供了一定面向对象能力,提供了interface方式,支持动态创建能力,同时具有编译阶段优化方式...,具体内容可以看视频

51810

老司机 iOS 周报 #79 | 2019-08-12

除了传统通过修改业务代码方式,抖音 iOS 客户端团队,开拓性发现通过修改代码在二进制文件布局可以提高启动性能。...本文从原理出发,介绍了抖音 iOS 客户端团队是如何通过静态扫描和运行时 trace 找到启动时调用函数,然后修改编译参数完成二进制文件重新排布。...最近 Facebook 也在一个技术大会上分享了类似的内容,强烈推荐: 视频 ? ?...(ctx:buffer:) has been renamed to Func WebSocketFrameDecoder.decodeLast(context:buffer:seenEOF:) Func...实现原理是,在应用启动后开启一个检测子线程,检测线程不断去识别出当前应用哪个线程 CPU 占用过高(通过 thread_basic_info 获得),将耗 CPU 多线程堆栈(使用 backtrace

98730

iOS 卡顿监测方案总结

前言 最近在写 APM 相关东西,所以整理了一下 iOS 中卡顿监测那些方案,不了解卡顿原理可以看这篇文章iOS 保持界面流畅技巧[1],写很好。...FPS FPS (Frames Per Second) 是图像领域中定义,表示每秒渲染帧数,通常用于衡量画面的流畅度,每秒帧数越多,则表示画面越流畅,60fps 最佳,一般我们 APP FPS...,也就是 FPS 了,下面贴上我用 Swift 实现代码。...这里做法又有点不同,iOS 实时卡顿监控[3]是设置连续 5 次超时 50ms 认为卡顿,戴铭在 GCDFetchFeed[4]中设置是连续 3 次超时 80ms 认为卡顿代码。...以下是 iOS 实时卡顿监控[5]中提供代码: - (void)start { if (observer) return; // 信号 semaphore

1.8K20

视频技术开发周刊 55期

移动端深度学习在增强体验实时性、降低云端计算负载、保护用户隐私等方面具有天然优势,在图像、语音、安全等领域具有越来越广泛业务场景。...音频/视频技术 高清视频点播-AI让你看片更丝滑 本文简要介绍了基于强化学习码率自适应算法,在实践预研验证和分析基础上,将该AI算法模型应用于实际项目。...Serria、iOS 8+开发过程遇到摄像头、Capture GPU Frame与Shader编译调试问题及解决办法。...基于MCMCX265编码参数优化方法 X265是当今最广泛使用HEVC视频编码器,它由于自己并行编码模式和一些提前终止算法使用能够在家用计算机上实现720P 30FPS实时编码,十分具有实用价值...,他们通过GoogleML Kit在WebRTC通话中实现了简单笑容检测,期间考虑到了检测准确率、延时以及检测频度与CPU占用率平衡等,实际结果表明ML Kit检测结果令人满意。

40220

日本创新公司开发AI骨架检测引擎支持NVIDIA AGX Xavier

现有的VisionPose SDK在整个系列中都支持多种平台,例如Windows(C#,C ++,Unity),Linux(C ++),iOS / iPadOS(Swift)。...特色: 1.使用3D坐标实时检测骨骼信息 2....检测多个人骨骼 3.行业中最多30个测量点 4.从图像和视频中进行分析可能 5.与多设备兼容 VisionPose Standard SDK随附示例应用程序“ BodyAndColor”以及可用于开发视频和静止图像姿势估计工具...所获取骨架信息也可以作为CSV输出。 视频和静止图像姿势估计工具“ VP分析器” 可以从您拥有的视频和静止图像中以2D坐标(30个位置)检测骨骼。...Wellwalk WW-2000采用“ VisionPose”检查患者姿势是否正确。通过实时检测患者步行状况,做步态分析指导和游戏功能实现 。 ? ?

82320

更快iOS和macOS神经网络

一个高效模型能够在实时视频上获得实时结果 - 无需耗尽电池或使手机变热,就可以在其上煎鸡蛋。 传统神经网络,如VGGNet和ResNet要求太高,我通常建议切换到MobileNet。...MobileNetV2分类器和物体检测器在实时摄像机上进行 我已经为iOS和macOS 创建了一个源代码库,可快速实现MobileNet V1和V2,以及SSDLite和DeepLabv3 +。...MobileNet是一个很好支柱。我帮助客户在基础MobileNet层之上实现了实时对象跟踪和人体姿势识别模型,取得了巨大成功。...分类 使用SSD进行物体检测 MobileNet V2: 特征提取器 分类 使用SSD或SSDLite进行对象检测 DeepLab v3 +用于语义分割 分类器模型可以适应任何数据集。...这些应用程序展示了如何使用iPhone相机,照片库,ARKit等实时视频模型。 该库与iOS 11兼容,可在具有A8处理器或更高处理器(iPhone 6及更高版本)设备上运行。

1.3K20

新手必看,史上最全iOS开发教程集锦,没有之一!

前者有C语言基础者上手会容易些;后者SwiftiOS/Mac未来开发主要语言,无论从编程思想还是从api书写,都很不错。Objective-C是一门面向对象语言,并且是非常实用语言。...对于学生来说,学习Swift是对现代编程概念一个很好入门介绍。 而且由于它是开放,他们Swift技能将能够应用于更广泛平台,从移动设备到桌面再到云端。 5. .../beginners-iOS-development-Objective-C/ 本教程是关于Objective-C初学者指南,适用于已经了解面向对象编程iOS开发人员,并涵盖了Objective-C...list=PL6cactdCCnTIzhUomNgV3i8jgxk0ExxPk 这是一个iOS开发系列视频教程,包含Udemy Tech频道所有发布过iOS11,Swift4,Xcode9视频视频是不断更新...每周都会发布优秀视频来展示和讨论在Swift中构建项目时遇到问题以及解决方案。 7.

5.7K21

iOS系统架构及常用框架

Media layer 顾名思义,媒体层可以在应用程序中使用各种媒体文件,进行音频与视频录制,图形绘制,以及制作基础动画效果。...HSDownloadManager:下载音乐、视频、图片各种资源,支持多任务、断点下载。...: [XMPPFramework] 环信 融云 容联云通讯 网络测试 Reachability:苹果提供过一个Reachability类,用于检测网络状态。...提供一系列Class(类)来建立和管理iPhone OS应用程序用户界面接口、应用程序对象、事件控制、绘图模型、窗口、视图和用于控制触摸屏等接口。...Foundation框架 所有的Mac OS X和IOS程序都是由大量对象构成,而这些对象对象绝大多数是NSObject,NSObject就处在Foundation框架之中,也可理解为Foundation

7.2K21

使用Video Toolbox进行低延迟编码

低延迟视频编码对很多视频应用场景(如实时视频通话等)都非常重要,而该模式旨在对目前实时应用中编码架构进行优化。...中,然后经网络传输用于视频通话。...通过使用这两种方法,该模式可以很大程度上降低视频通话延时(对于720p 30fps视频,该模式最多可以减少100ms延时)。此外,低延时模式视频编码器通常也会使用专门硬件加速器,以降低能耗。...值得注意是,低延时模式支持codec通常是H.264,并且该模式被引入到了iOS和macOS中。...除了低延迟以外,该模式还具备其他一些实时视频通信所需特点: 1)new profiles:通过增加两个新配置文件(CBP和CHP),该框架互操作性得到了有效提高,CBP主要用于low-cost场景

1.3K20
领券