3

在我的应用程序中,我使用 AVCapture/AssetsLibrary 录制和保存视频。当我纵向录制时,录制视频的方向还可以,但是当我横向录制时,录制视频的方向是 90 度,这很糟糕。我需要帮助请问题。我的代码是..

在我的 appDelegate.m

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{

    NSUInteger orientations = UIInterfaceOrientationMaskAllButUpsideDown;

    if(self.window.rootViewController){
        UIViewController *presentedViewController = [[(UINavigationController *)self.window.rootViewController viewControllers] lastObject];
        orientations = [presentedViewController supportedInterfaceOrientations];
    }

    return orientations;
}

并在 myViewController.m

- (NSUInteger)supportedInterfaceOrientations{

    return UIInterfaceOrientationMaskPortrait;
}

捕获会话方向

AVCaptureConnection *CaptureConnection = [MovieFileOutput connectionWithMediaType:AVMediaTypeVideo];
if ([CaptureConnection isVideoOrientationSupported])
{
    AVCaptureVideoOrientation orientation = AVCaptureVideoOrientationPortrait;

    [CaptureConnection setVideoOrientation:orientation];
}

谢谢,

4

2 回答 2

0

设置 CaptureVideoOrientation.ie:

AVCaptureVideoOrientation orientation =AVCaptureVideoOrientationLandscapeRight
于 2014-04-22T07:07:04.067 回答
0

旋转元数据由移动录制设备与 .mp4 或 .mov 视频一起保存。

它可以有 4 个值:0、90、180 和 270:

移动设备创建的视频文件中的旋转元数据

图片由移动设备创建的视频文件中的旋转元数据提供

如果您使用的播放器支持旋转元数据,您将看到纵向视频 (90°) 显示为纵向。如果没有,您会将其视为风景。

不支持的玩家(上面的列表表格链接):

  • 火狐 42
  • Mac 上的歌剧
  • 媒体播放器经典
于 2015-11-17T11:13:05.567 回答