如何在iOS中捕获特定部分而不是全屏的视频

如何在iOS中捕获特定部分而不是全屏的视频,ios,camera,avfoundation,video-recording,Ios,Camera,Avfoundation,Video Recording,我正在使用AVFoundation在IOS应用程序中捕获视频。我可以录制视频,也可以播放 但我的问题是,我在一个大约200点高的视图中显示捕获的视频。因此我希望视频将以相同的尺寸录制。但当我播放视频时,它显示整个屏幕都已录制 所以我想知道是否有任何方法可以记录只有用户才能看到的相机预览。任何帮助都应该感谢 屏幕截图: () ()你无法根据UIView尺寸(甚至屏幕大小)来考虑视频分辨率。相机将以特定分辨率录制,具体取决于您如何设置AVCaptureSession。例如,您可以通过以下方式设置会话

我正在使用AVFoundation在IOS应用程序中捕获视频。我可以录制视频,也可以播放

但我的问题是,我在一个大约200点高的视图中显示捕获的视频。因此我希望视频将以相同的尺寸录制。但当我播放视频时,它显示整个屏幕都已录制

所以我想知道是否有任何方法可以记录只有用户才能看到的相机预览。任何帮助都应该感谢

屏幕截图: ()
()

你无法根据UIView尺寸(甚至屏幕大小)来考虑视频分辨率。相机将以特定分辨率录制,具体取决于您如何设置AVCaptureSession。例如,您可以通过以下方式设置会话预设来更改视频质量:

[self.captureSession setSessionPreset:AVCaptureSessionPreset640x480]
(默认情况下已将其设置为最高设置。)

现在,当您回放视频时,您确实可以控制它的显示方式。例如,如果要在较小的视图中播放(谁的图层类型为AVPlayerLayer),可以通过以下方式设置视频重力:

AVCaptureVideoPreviewLayer *previewLayer = (AVCaptureVideoPreviewLayer*)self.previewView.layer;
[previewLayer setVideoGravity:AVLayerVideoGravityResizeAspect];
根据你对重力参数的传递,你会得到不同的结果


希望这能有所帮助。您的问题有点不清楚,因为您似乎希望相机只记录一定数量的输入,但您必须将手放在镜头的一部分上才能完成;)

你能澄清一下你所说的仅对用户可见的是什么意思吗???相机预览。你试过吗?[ios如何捕获屏幕的特定部分][1][1]:@edo它是关于从屏幕的一部分捕获图像。但我的问题是捕捉视频而不是静态图像。@sateesh有什么解决方案吗?谢谢joeig的回答。我明白你的意思。我想知道有没有可能捕捉到摄像机输入的部分。如果可能的话,怎么做。我不相信这是可能的。您可以在录制输入后创建合成,但要告诉相机忽略部分输入。。。我不知道你会怎么做。你能解释一下为什么你只需要一部分输入吗?这是根据我的应用程序设计的。除此之外,我不能提供更多的信息。即使你能想到一个类似的情况,它也会帮助人们知道如何解决这个问题。