在iPhone 5屏幕显示中使用AVCaptureSession进行录制

时间:2013-05-20 09:43:51

标签: iphone iphone-5 avcapturesession video-recording video-player

在我的录音申请中,我使用AVCaptureSession,sessionPresetAVCaptureSessionPresetMedium.

我已将contentsGravity设为kCAGravityResizeAspectFill

我已将录制视图设置为 320 X 568 。 当我在MPMoviePlayerController中播放录制的视频时,我的视频大小为 360 X 480

因此它在iPhone 5屏幕的顶部和底部显示黑条。

如果我将scalingMode设置为MPMovieScalingModeAspectFill而不是填充屏幕大小,但似乎有点模糊。

在iPhone 4 / 4s上(3.5英寸屏幕)

录制视图的大小为320 X 480。

在播放录制的视频时,它的工作完美而没有设置scalingMode

任何人都可以帮助我,如果我失踪了,无论是在录制时间还是在播放时间设置任何属性。

这是默认行为还是可以修复此问题?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

AVCaptureSessionPresetMedium使用的相机分辨率为360.000000和480.000000。 这是AVCaptureSessionPresetMedium的默认分辨率,因此它不适用于iPhone-5显示器。

iPhone-5(4英寸)显示分辨率未更新。如果你想在iPhone-5上获得更高分辨率的图像,你应该使用AVCaptureSessionPresetHigh。但它会为你提供1980 * 1080的图像分辨率。所以它可以正常工作,但会增加图像的大小字节。

您也可以通过以下方式查看:

AVCaptureSession *newCaptureSession = [[AVCaptureSession alloc] init];    

 if (IS_IPHONE5) 
{          
           newCaptureSession.sessionPreset = AVCaptureSessionPresetHigh; 
}
else
        {
       newCaptureSession.sessionPreset = AVCaptureSessionPresetMedium;

        }