我需要在我的纵向iPhone应用程序中录制横向视频。是否可能,或者是否因硬件限制而受阻?使用AVCaptureVideoPreviewLayer,我可以更改预览方向,但视频仍以纵向录制。欢迎您提出任何意见!
yyyllmsg1#
您应该可以将视频录制的方向设置为横向。并将预览层设置为纵向,以实现在纵向中预览的横向视频。如果我没有理解错您的问题,您可以显示您已经尝试过的任何代码吗?
if captureSession.canAddOutput(videoOutput) { captureSession.addOutput(videoOutput) let connection = videoOutput.connectionWithMediaType(AVMediaTypeVideo) if connection.supportsVideoOrientation { connection.videoOrientation = AVCaptureVideoOrientation.LandscapeRight } print("adding output") } else { print("Could not add front video output") return } ... func setupPreviewLayer() { ...etc... previewLayer.connection.videoOrientation = AVCaptureVideoOrientation.Portrait ...etc... }
rt4zxlrg2#
我在纵向应用程序中播放横向视频时遇到了问题。通过编写以下代码解决了这个问题。在配置会话时添加以下代码:
captureSession.addOutput(videoFileOutput) let videoDataOuputConnection = videoFileOutput.connection(with: .video) videoFileOutput.setRecordsVideoOrientationAndMirroringChangesAsMetadataTrack(true, for: videoDataOuputConnection!)
在开始录制视频功能中,在开始录制前添加以下代码:
let videoDataOuputConnection = videoFileOutput.connection(with: .video) let orientation = UIDevice.current.orientation videoDataOuputConnection!.videoOrientation = AVCaptureVideoOrientation(rawValue: orientation.rawValue)!
注意:视频文件输出的类型为AVCaptureMovieFileOutput,捕获会话的类型为AVCaptureSession
2条答案
按热度按时间yyyllmsg1#
您应该可以将视频录制的方向设置为横向。并将预览层设置为纵向,以实现在纵向中预览的横向视频。如果我没有理解错您的问题,您可以显示您已经尝试过的任何代码吗?
rt4zxlrg2#
我在纵向应用程序中播放横向视频时遇到了问题。通过编写以下代码解决了这个问题。在配置会话时添加以下代码:
在开始录制视频功能中,在开始录制前添加以下代码:
注意:视频文件输出的类型为AVCaptureMovieFileOutput,捕获会话的类型为AVCaptureSession