首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iPhone:通过setSampleBufferDelegate处理单个帧时切换前置/后置AVCaptureDeviceInput摄像头

iPhone:通过setSampleBufferDelegate处理单个帧时切换前置/后置AVCaptureDeviceInput摄像头
EN

Stack Overflow用户
提问于 2012-03-12 14:58:38
回答 1查看 1.4K关注 0票数 2

当我试图在通过AVCaptureVideoDataOutput:setSampleBufferDelegate选择器处理单个帧时从使用前置摄像头切换到使用后置摄像头时,我遇到了一个有趣的问题。相机交换工作,我正在显示的预览屏幕看起来很棒,只是我捕获的结果帧不再是纵向模式,它们是横向的。此外,从前面交换,然后返回到后置相机将导致后置相机捕获风景帧。我怀疑,由于这种情况,当我换出输入时,有些事情搞砸了--不是输入不正确。我通过使用前置摄像头启动AVCaptureSession来验证这一理论-传递给buffer代理的帧在纵向模式下是正确的。我还尝试了在交换设备输入时显式停止AVCaptureSession,结果没有差别。

我抄袭了AVCam的演示以获取灵感。这段代码和我的代码之间可疑的区别是,它记录到一个AVCaptureMovieFileOutput中--它不处理单独的帧。

有什么想法吗?为什么当我换出设备输入时,发送到处理器的帧的方向会发生变化?

感谢您的回复!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-13 14:29:51

啊哈!我想通了。由于某种原因,在切换设备输入后,我的视频输出的AVCaptureConnection的方向被重置为右横屏。为了解决这个问题,在交换输入之后,我显式地要求视频输出的AVCaptureConnection将其方向设置为纵向。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9662897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档