1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- //
- // YMCameraManager.h
- // MSYOUPAI
- //
- // Created by YoMi on 2024/3/17.
- // Copyright © 2024 MS. All rights reserved.
- //
- #import <AVFoundation/AVFoundation.h>
- #import <UIKit/UIKit.h>
- NS_ASSUME_NONNULL_BEGIN
- typedef NS_ENUM(NSInteger, YMCaptureFlashMode) {
- YMCaptureFlashModeOff = 0,
- YMCaptureFlashModeOn = 1,
- YMCaptureFlashModeAuto = 2
- };
- @protocol YMCameraManagerDelegate <NSObject>
- @optional
- - (void)cameraDidFinishFocus;
- - (void)cameraDidStareFocus;
- @end
- @interface YMCameraManager : NSObject
- @property (nonatomic, assign) id<YMCameraManagerDelegate>delegate;
- @property (nonatomic, strong) AVCaptureSession *session;
- @property (nonatomic, assign) BOOL canFaceRecognition;
- @property (nonatomic, copy) void (^faceRecognitonCallBack)(CGRect);
- //检查是否有授权相机
- + (BOOL)checkAuthority;
- - (instancetype)initWithParentView:(UIView *)view;
- - (void)setFaceRecognitonCallBack:(void (^)(CGRect faceFrame))faceRecognitonCallBack;
- /** 添加摄像范围到View,传进来的View的大小,就是摄像范围的大小*/
- - (void)configureWithParentLayer:(UIView *)parent;
- /** 切换前后镜*/
- - (void)switchCamera:(BOOL)isFrontCamera didFinishChanceBlock:(void(^)(void))block;
- /** 拍照 (原图是你照相机摄像头能拍出来的大小,比例图是按照原图的比例去缩小一倍,裁剪图是你设置好的摄像范围的图片)*/
- - (void)takePhotoWithImageBlock:(void(^)(UIImage *originImage,UIImage *scaledImage,UIImage *croppedImage))block;
- /** 切换闪光灯模式*/
- - (void)switchFlashModeDidFinishChanceBlock:(void (^)(YMCaptureFlashMode flashMode))block;
- /** 点击对焦*/
- - (void)focusInPoint:(CGPoint)devicePoint;
- /** 开启对焦监听 默认YES*/
- - (void)setFocusObserver:(BOOL)yes;
- @end
- NS_ASSUME_NONNULL_END
|