【问题标题】:How do I prevent the video stream rotating in landscape - AVCaptureSession and OpenGL如何防止视频流横向旋转 - AVCaptureSession 和 OpenGL
【发布时间】:2011-11-03 09:29:20
【问题描述】:

我创建了一个应用程序,它捕获实时视频流,使用 OpenGL ES 对视频流进行一些处理,并将其显示在 UIView 的屏幕上

基本上数据流是: AVCaptureSession -> AVCaptureDeviceInput -> AVCaptureVideoDataOutput -> gl buffers -> 绘制到 UIView

我没有使用 AVCaptureVideoPreviewLayer 来显示内容。

当我使用此系统纵向显示视频时,它按预期工作,视频与显示器的方向相同。

但是,我的应用旨在横向使用。在 superview 的 shouldAutorotateToInterfaceOrientation 方法中,我只允许 UIInterfaceOrientationLandscapeLeft 和 UIInterfaceOrientationLandscapeRight。

我的问题是视频流被旋转了。手机横向,视频流旋转90度。我希望视频流具有相同的方向。

我不明白为什么视频流会旋转,我猜它试图补偿横向模式,但我不知道如何防止这种旋转。有什么想法吗?

谢谢

迈克


感谢文斯伯恩的回复。

最终我尝试了this post中的方法

并确定 willRotateToInterfaceOrientation:duration 的示例代码

【问题讨论】:

    标签: ios video opengl-es


    【解决方案1】:

    不知道这是否可行,我只是在这里猜测。

    如果没有简单的解决方案,可以尝试在 UIView 层上应用 90° 旋转变换。 (我不喜欢这个主意,但可以工作)

    【讨论】:

      猜你喜欢
      • 2023-03-31
      • 1970-01-01
      • 2014-12-01
      • 2010-12-29
      • 1970-01-01
      • 1970-01-01
      • 2010-09-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多